]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
fix up some docs
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-03-23  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4         some docs
5
6 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
7
8         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
9         this.
10
11         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
12         set_cell to set_value
13
14         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
15         set_cell to set_value
16
17 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
18
19         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
20         fix braino.
21         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
22         support.
23
24         * gtk/gtktreeview.c: Addition of initial sortable support.
25
26         * gtk/gtktreestore.c: Addition of initial sortable support.
27
28         * gtk/gtkliststore.c: Addition of initial sortable support.
29
30         * gtk/gtkmarshal.list: yet another marshaller.
31
32         * gtk/gtktreedatallist.[ch]: shared code between the store models
33         for handling sorting headers.
34
35 2001-03-22  Havoc Pennington  <hp@redhat.com>
36
37         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
38         (gtk_container_unset_focus_chain): Add ability to override the 
39         focus chain for a container explicitly
40
41 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
42
43         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
44         added PROP_MNEMONIC_WIDGET.
45
46         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
47         (gtk_window_remove_mnemonic): 
48         (gtk_window_add_mnemonic): fixed assertions.
49         (gtk_window_activate_mnemonic): constrain modifier checks to those
50         permitted by gtk_accelerator_get_default_mod_mask().
51         got rid of gtk_window_get_default_accel_group().
52
53         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
54         activatable widgets either by focussing or a warning.
55         added a signal accumulator to ::activate_mnemonic which stops the
56         emission once a handler returned TRUE.
57
58 2001-03-22  Havoc Pennington  <hp@pobox.com>
59
60         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
61         the stock item label
62
63         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
64
65         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
66
67         * demos/gtk-demo/*.c: Add mnemonics all over the place
68
69         * gtk/gtklabel.h: mark parse_uline deprecated
70
71 2001-03-21  Alexander Larsson  <alexl@redhat.com>
72
73         * gtk/gtkitemfactory.[ch]:
74         Add support for stock and normal imagemenuitems.
75         
76         * gtk/testgtk.c:
77         Add some tests for mnemonics, stock toolbars, stock
78         and image menuitems in itemfactory and gdk_window_scroll.
79
80 2001-03-21  Alexander Larsson  <alexl@redhat.com>
81
82         * gtk/gtkbutton.[ch]:
83         * gtk/gtkdialog.c:
84         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
85         removed accel_group argument. Renamed gtk_button_new_accel() to
86         gtk_button_new_with_mnemonic() and removed accel_group argument.
87
88         * gtk/gtkcheckbutton.[ch]:
89         New function gtk_check_button_new_with_mnemonic().
90
91         * gtk/gtkentry.c:
92         Override activate_mnemonic and just grab focus.
93
94         * gtk/gtkitemfactory.c:
95         Don't add menu uline accel group, instead use mnemonics support.
96
97         * gtk/gtklabel.[ch]:
98         New support for mnemonics.
99
100         * gtk/gtkmarshal.list:
101         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
102
103         * gtk/gtkmenu.[c]:
104         * gtkmenushell.c:
105         Use mnemonics instead of accel groups for uline
106         support in menu items.
107         Removed gtk_menu_get_uline_accel_group() and
108         gtk_menu_ensure_uline_accel_group().
109
110         * gtk/gtkmenuitem.c:
111         Override activate_mnemonic to handle switching between
112         menu items if there are collisions.
113         
114         * gtk/gtknotebook.c:
115         Connect to activate_mnemonic on the tab_label, so that
116         activating it switches to that notebook page.
117
118         * gtk/gtkwidget.[ch]:
119         Add activate_mnemonic signal. New function
120         gtk_widget_activate_mnemonic() to emit it.
121         Default implementation does activate/grab_focus.
122
123         * gtk/gtkwindow.[ch]:
124         Add support for mnemonics in windows.
125         New functions:
126         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
127         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
128
129         * gtk/testgtk.c:
130         Update to function name changes.
131         
132 2001-03-21  Alexander Larsson  <alexl@redhat.com>
133
134         * gtk/gtkimagemenuitem.[c]:
135         Add gtk_image_menu_item_new_from_stock()
136
137 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@webwynk.net>
138
139         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
140         Fix buglet in meeting.
141
142 2001-03-19  Havoc Pennington  <hp@redhat.com>
143
144         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
145         add a bunch of accessor functions. This is because we have
146         reasonable expectations of extending what fields it contains in
147         the future.
148
149         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
150         changes
151
152         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
153         GtkIconSource   
154
155 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
156
157         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
158         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
159
160         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
161           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
162           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
163           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
164         Change float to double everywhere with the exception of 0<->1.0 alignment
165         and GtkCurve.
166
167 2001-03-19  Tor Lillqvist  <tml@iki.fi>
168
169         * gdk/win32/gdkdrawable-win32.c
170         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
171         output.
172
173         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
174         gdkwin32.h.
175
176 2001-03-18  Tor Lillqvist  <tml@iki.fi>
177
178         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
179         print_event_state, print_event): Use preprocessor macro to make
180         code more compact. Print also GDK_WINDOW_STATE events.
181         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
182         
183         * gtk/gtk.def
184         * gtk/makefile.mingw.in: Update.
185
186         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
187         to catch also Cygwin.
188
189 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
190
191         * gtk/gtkspinbutton.[hc]: added rc-style argument
192         GtkSpinButton::shadow_type.
193         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
194         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
195         rc-style settings.
196
197         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
198
199         * gtk/gtkwidget.c: quark cleanups.
200
201         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
202         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
203         to create_rc_style() (we don't do cloning in standard OO sense).
204         added per rc style properties.
205         
206         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
207         property values and for caching those. some cleanups.
208         
209         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
210         
211         * gtk/gtksettings.[hc]: new file for global rc-file properties
212         (at least currently, should get extended to support X properties
213         and other communication mechanisms).
214         
215         * gtk/gtkwidget.[hc]: added style property support:
216         (gtk_widget_class_install_style_property_parser): install style
217         property pspec with parser function for rc-file values other
218         than LONG, DOUBLE or STRING.
219         (gtk_widget_class_install_style_property): same as above without
220         parser (parsers are going to be needed quite infrequently).
221         (gtk_widget_style_get_property): retrive style property value.
222         (gtk_widget_style_get_valist): same as above with varargs support,
223         has NOCOPY semantics.
224         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
225
226 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
227
228         * demos/gtk-demo/main.c (row_activated_cb): modified to use
229         "row_activated" signal.
230
231         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
232         stupidity.  Lets actually pass in the row with this signal...
233
234 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
235
236         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
237
238         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
239
240         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
241         everything into the ::destroy function, and freed a lot more.
242
243 2001-03-16  Havoc Pennington  <hp@redhat.com>
244
245         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
246         instead of gint16, to avoid overflow issues, since sizes > 16-bit
247         are now allowed.
248
249 2001-03-16  Havoc Pennington  <hp@redhat.com>
250
251         * Applied patch from Nils Barth (bug # 51041) to 
252         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
253         in various places.
254
255 2001-03-15  Havoc Pennington  <hp@redhat.com>
256         
257         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
258         for properties to set on the tag.
259
260         * gtk/testtext.c: fixups to reflect create_tag change
261         
262         * gtk/gtktexttag.c (gtk_text_tag_set_property):
263         background/foreground stipple are objects, not boxed.
264
265         * demos/gtk-demo/textview.c: intellihancing
266
267 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
268
269         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
270         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
271
272 2001-03-16  Alexander Larsson  <alexl@redhat.com>
273
274         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
275         Fix sign error with queued region translations.
276
277 2001-03-15  HideToshi Tajima  <tajima@happy>
278
279         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
280         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
281         * gtk/gtkentry.c (update_im_cursor_location): 
282         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
283         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
284         set_cursor_pos to set_cursor_location in GtkInputContext class
285
286 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
287
288         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
289         the location of the cell relative to its area.
290         * gtk/gtkcell*: modified for above change
291         * gtk/gtktreeview.c: modified for above change.
292
293 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
294
295         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
296          (gtk_tree_view_finalize): actually unref the model.  Thanks to
297         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
298
299 2001-03-14  Havoc Pennington  <hp@redhat.com>
300
301         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
302         
303         * gtk/gtk.h: remove gtkdata.h
304
305         * gtk/Makefile.am: remove gtkdata
306         
307         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
308         not "disconnect" on the adjustments.
309         
310         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
311         GtkData
312
313         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
314         not GtkData
315
316         * configure.in: handle case where X render exists, but Pango lacks
317         Xft support.
318
319 2001-03-15 Alexander Larsson  <alexl@redhat.com>
320
321         * gtk/gtktoolbar.[ch]:
322         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
323         to add stock items to toolbars.
324
325         * gtk/Makefile.am:
326         Remove ../gdk/gdkim.h from gdk_headers.
327
328 2001-03-15  Sven Neumann  <sven@gimp.org>
329
330         * gdk/gdkim.h: removed
331         
332         * gdk/gdkprivate.h
333         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
334
335 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
336
337         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
338         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
339         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
340         set_cursor_pos() virtual method
341
342         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
343         (gtk_im_context_xim_set_cursor_pos): add implementation for
344         set_cursor_pos() method
345
346         * gtk/gtkentry.c (recompute_idle_func): set current cursor
347         position to input methods
348
349 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
350
351         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
352         code a lot.
353
354         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
355         g_mem_chunk.
356         (_gtk_tree_data_list_alloc): use g_mem_chunk.
357         (_gtk_tree_data_list_node_to_value): Fix to switch on
358         G_TYPE_FUNDAMENTAL.
359         (_gtk_tree_data_list_value_to_node): Fix to switch on
360         G_TYPE_FUNDAMENTAL.
361         (_gtk_tree_data_list_node_copy): Fix to switch on
362         G_TYPE_FUNDAMENTAL.
363
364 2001-03-12  Havoc Pennington  <hp@redhat.com>
365
366         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
367         to convert to new property API. Also, change default_width and
368         default_height get_property to return 0 as the flag value for
369         "unset"; -1 is not a valid value for these fields.
370
371 2001-03-12  Havoc Pennington  <hp@redhat.com>
372
373         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
374         enum with registration for icon sizes, instead of strings.
375
376         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
377         gtkwidget.c: Fix to reflect GtkIconSize
378         
379 2001-03-12  Alexander Larsson  <alexl@redhat.com>
380
381         Make GtkFB compile and link.
382         
383         * gdk/linux-fb/gdkdrawable-fb2.c:
384         window->mapped to GDK_WINDOW_IS_MAPPED(). 
385         
386         * gdk/linux-fb/gdkwindow-fb.c:
387         window->mapped to GDK_WINDOW_IS_MAPPED(). 
388         Added gdk_window_shape_combine_region.
389         Added assorted placeholders for unimplemented new GdkWindow API calls.
390
391 2001-03-12  Alexander Larsson  <alexl@redhat.com>
392
393         * gtk/gtkfilesel.c:
394         Add more test when converting filenames from/to utf-8.
395         Don't allow entering text in the filename entry which isn't allowed in
396         a filename. Just beep instead.
397
398 2001-03-12  Alexander Larsson  <alexl@redhat.com>
399
400         * gtk/gtkclist.c:
401         Scroll using gdk_window_scroll(). Don't wait for exposes.
402         Move the column headers in an order that makes them flash less.
403
404 2001-03-10  Hans Breuer  <hans@breuer.org>
405
406         * gdk/gdk.def : updated
407
408         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
409         to offseting the clip_mask at the right place
410
411         * gdk/win32/gdkwindow-win32.c : don't create background brushes
412         for all the gdkClasses, especially not for the input_only case.
413         Otherwise flickering wont be avoidable, because we don't get
414         WM_ERASEBKGND message for these windows.
415
416         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
417         and fixed massive redraw problems apparently triggered by Alexanders 
418         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
419         but it seems to work quite well :-)
420
421         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
422         prototype
423
424 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
425
426         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
427         (gtk_list_store_set_cell): Fix a stupid typo.
428
429 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
430
431         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
432         select_all not work if you're in SINGLE mode (it doesn't make that
433         much sense, anyway.)
434
435         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
436         handle types more sanely.
437         (_gtk_tree_data_list_value_to_node): handle types more sanely.
438         (_gtk_tree_data_list_node_copy): handle types more sanely.
439
440         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
441         GValue better. Converts the type as well.
442
443         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
444         GValue better. Converts the type as well.
445
446 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
447
448         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
449         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
450         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
451         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
452
453         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
454         gdk_im/gdk_ic.
455
456 2001-03-09  Hans Breuer  <hans@breuer.org>
457
458         * gdk/gdk.def : updated
459
460         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
461         for their palette
462
463         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
464         removing
465
466         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
467         removing and implemented Havoc's GdkWindow state functions; 
468         stick/unstick only as no-op, cause I don't know how to emulate 
469         on win32 ...
470
471         * gtk/gtk.def : updated
472
473         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
474
475         * gtk/gtktypeutils.c : #include <string.h>
476
477         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
478
479 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
480
481         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
482         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
483         not a boxed.
484
485 2001-03-09  Alexander Larsson  <alexl@redhat.com>
486
487         * docs/Changes-2.0.txt:
488         Document expose event->region change and that gtk_widget_event
489         doesn't allow passing expose events.
490
491         * gdk/gdkevents.h:
492         Add region to expose event.
493         
494         * gdk/gdkevents.c:
495         Handle event->region in gdk_event_copy() and gdk_event_free().
496
497         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
498         Generate expose_event->region when creating expose events.
499
500         * gdk/x11/gdkevents-x11.c:
501         Generate expose events with regions when translating X events.
502
503         * gtk/gtkcontainer.[ch]:
504         Default expose handler that propagates expose events to NO_WINDOW
505         children. New function gtk_container_propagate_expose()
506
507         * gtk/gtkwidget.[ch]:
508         Moved gtk_widget_event implementation to gtk_widget_event_internal.
509         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
510         expose events. New function gtk_widget_send_expose() to send expose
511         events. New function gtk_widget_region_intersect() to calculate
512         window/region intersections.
513         
514         * gtk/gtkmain.c (gtk_main_do_event):
515         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
516         Use gtk_widget_send_expose() to send expose events.
517         
518         * gtk/gtkbin.c:
519         * gtk/gtkbox.c:
520         * gtk/gtkfixed.c:
521         * gtk/gtkimagemenuitem.c:
522         * gtk/gtklist.c:
523         * gtk/gtkpacker.c:
524         * gtk/gtktable.c:
525         * gtk/gtktree.c:
526         Remove expose handler, using the default container implementation
527         instead.
528         
529         * gtk/gtkbutton.c:
530         * gtk/gtkcheckbutton.c:
531         * gtk/gtkeventbox.c:
532         * gtk/gtkfixed.c:
533         * gtk/gtkhandlebox.c:
534         * gtk/gtklayout.c:
535         * gtk/gtklistitem.c:
536         * gtk/gtkmenu.c:
537         * gtk/gtkmenubar.c:
538         * gtk/gtkmenuitem.c:
539         * gtk/gtknotebook.c:
540         * gtk/gtkoptionmenu.c:
541         * gtk/gtkpaned.c:
542         * gtk/gtkscrolledwindow.c:
543         * gtk/gtktogglebutton.c:
544         * gtk/gtktoolbar.c:
545         * gtk/gtktreeitem.c:
546         * gtk/gtkviewport.c:
547         Chain expose handler to parent class handler. Use
548         gtk_container_propagate_expose() to propagate exposes.
549
550         * gtk/gtkclist.c (check_exposures):
551         * gtk/gtktext.c (process_exposes):
552         Use gtk_widget_send_expose instead of gtk_widget_event.
553
554 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
555
556         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
557
558 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
559
560         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
561         unref the nodes.   Fixes bug #50058.
562
563         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
564         "::ref_iter" to "::ref_node".
565         (gtk_tree_model_unref_node): change "::unref_iter" to
566         "::unref_node". Fixes bug #50064.
567
568 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
569
570         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
571         support for invisible cells.
572          (gtk_tree_view_bin_expose): ditto
573
574 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
575
576         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
577         on gobjects.
578
579         * tests/testtreefocus.c (main): New test file.
580
581         * tests/testtreeview.c: update to latest glib changes.
582
583         * tests/testtreecolumns.c: update to latest glib changes.
584
585 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
586
587         * gtk/testgtk.c: re-enabled event watcher emission hooks.
588
589 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
590
591         * *.c: added accumulator data argument to g_signal_newc()
592         functions.
593
594         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
595         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
596         * gtk/treestoretest.c (make_window):
597         s/g_signal_connect/g_signal_connectc/.
598
599         * gtk/gtktextbuffer.c: completed signal arg fixups,
600         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
601
602 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
603
604         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
605         G_CONST_RETURN.
606
607         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
608         ::hierarchy-changed signal when a widget changes
609         from anchored to unanchored or vice versa.
610         (anchored means 
611          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
612         Use a private flag to keep track of this efficiently.
613
614 2001-03-07  Havoc Pennington  <hp@redhat.com>
615
616         * gtk/testgtk.c (create_spins): uglify so that size request gets
617         tested.
618
619         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
620         request on values for upper/lower, completes #6152
621
622 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
623
624         * Makefile.am: Remove gtk-config-2.0 again.
625         (Grrrr, pkg-config. And stops make loops.)
626
627 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
628
629         * gtk/gtksignal.[hc]: removed old emission hook API.
630         
631         * docs/Changes-2.0.txt: fixed sections.
632         
633         * gtk/gtktextbuffer.c: signal arg fixups.
634
635 2001-03-07  Havoc Pennington  <hp@redhat.com>
636
637         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
638
639         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
640         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
641         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
642         validation and the redraw which is higher priority than the
643         validation.
644
645 2001-03-07  Havoc Pennington  <hp@redhat.com>
646
647         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
648         (gtk_entry_set_property): remove trailer
649
650         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
651         (gtk_entry_get_width_chars): new functions, to set size request to 
652         a given number of characters
653
654         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
655
656         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
657         (gtk_dialog_get_has_separator): new function
658         (run_delete_handler): fix to not emit "response" signal
659         because we already did in the delete event handler installed
660         at dialog creation time.
661         
662         * gtk/gtkdialog.h: add a has_separator property,
663         add GTK_DIALOG_NO_SEPARATOR flag
664
665 2001-03-07  Havoc Pennington  <hp@redhat.com>
666
667         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
668         off decorations for a window.
669
670         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
671         changes
672
673         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
674         to get location of PangoLayout inside the label, closes #51198
675
676         * gtk/testgtk.c (create_bbox): fix up button box usage
677
678         * gtk/testcalendar.c (create_calendar): fix up button box usage
679
680         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
681
682         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
683
684         * gtk/gtkhbbox.h: deprecations
685
686         * gtk/gtkvbbox.h: deprecations
687
688         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
689         emulate deprecated gtk_button_box_get_spacing
690
691         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
692         the "set global default" functions
693         (struct _GtkButtonBox): remove "spacing" field, use the one from 
694         GtkBox base class
695
696         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
697
698         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
699         render the icon, return the missing image icon.
700
701         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
702         image icon if the load fails.   
703
704         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
705         when no image is found; should be the Netscape "missing image"
706         icon eventually but for now is a random image
707
708         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
709         role for the session manager
710
711         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
712
713         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
714         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
715
716         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
717
718 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
719
720         * gtk/*.c: marshaller fixes.
721         
722         * gtk/gtkmarshal.list: extreme cleanup.
723
724         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
725         param spec for now.
726
727         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
728         where appliable.
729
730         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
731         special cased autogenerated boxed types from gtktypebuiltins_ids.c
732         which are not reference counted:
733         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
734         PangoFontDescription, GtkTreeIter and GtkTreePath.
735
736 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
737
738         * gtk/gtktreeselection.h: 
739         * gtk/gtktreemodel.c:
740         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
741         file should be included directly, and gobject/gmarshal.h
742         as well as gtk/gtkmarshal.h even can't be included directly.
743
744         * Makefile.am: grr, install gtk-config-2.0.
745
746         * gtk/testgtk.c:
747         * gtk/simple.c:
748         * gtk/gtkmenu.c:
749         * gtk/gtkitemfactory.c: use g_object_connect() instead of
750         passing "*signal*::*" args to gtk_widget_set().
751         
752         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
753         
754         * gtk/*.c: removed trailer arg from property setters and getters.
755         macro fixups.
756
757 2001-03-07  Alexander Larsson  <alexl@redhat.com>
758
759         * gtk/gtklabel.c (set_markup): Removed warning
760
761 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
762
763         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
764         field to allow you to hide cell renderers.
765
766         * gtk/gtkcellrenderer.c: Add support for invisible cells.
767
768         * gtk/gtktreeview.c: Add support for invisible cells.
769
770 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
771
772         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
773         Add "clicked" signal back to columns.
774
775         * ChangeLog: remove conflict markers.
776
777 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
778
779         * gtk/gtkbutton.c: Add animation of activation by, on 
780         activate, pressing the button, and adding a timeout that 
781         releases the button after 250ms or on key release and
782         emits ::clicked. (#51501)
783
784         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
785         action area, we connect to ::clicked instead of ::activate
786         so the dialog stays up through the animation.
787
788 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
789
790         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
791         check the ignore_enter flag for the menu shell that
792         the item is actually a child of, not for attached
793         submenus. (#51536)
794
795 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
796
797         * gtk/gtkmain.c (gtk_propagate_event): Only do special
798         special key-press grab handling for widgets within
799         GtkWindows. Otherwise, fall through to normal case.
800
801         This prevents key events being sent twice to GtkInvisible
802         widgets, which can cause all sorts of mischief.
803
804 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
805
806         * gtk/gtkmain.c (gtk_propagate_event): When a grab
807         widget is in effect, give the grab widget a first
808         crack at KEY_PRESS/RELEASE events. (#424)
809
810 2001-03-06  James Henstridge  <james@daa.com.au>
811
812         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
813         offset for the window_state_event to point at window_state_event
814         rather than no_expose_event.
815
816 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
817
818         * gtk/gtkimmodule.h: fix busted /* comment */
819
820 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
821
822         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
823         object properties.
824
825 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
826
827         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
828         add object properties.
829
830         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
831         to add object properties.
832
833         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
834         object properties.
835
836         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
837         add object properties.
838
839         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
840         object properties.
841
842 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
843
844         * gtk/gtktreemodel.c: renamed "child_toggled" to
845         "has_child_toggled".
846
847         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
848         handle new signal name.
849
850         * gtk/gtktreestore.c: Updated to handle new signal name.
851         * gtk/gtklisttore.c: Updated to handle new signal name.
852         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
853
854 2001-03-05  Alexander Larsson  <alexl@redhat.com>
855
856         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
857         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
858
859 2001-03-05  Michael Natterer  <mitch@gimp.org>
860
861         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
862         pixbuf-engine coincidentially also failed to make one of it's
863         parent_class pointers static, causing overwriting of GtkLabel's
864         parent_class pointer in pixbuf_style_class_init().
865         (Will commit the fix to the pixbuf-engine too).
866
867 2001-03-05  Alexander Larsson  <alexl@redhat.com>
868
869         * gdk/gdkwindow.h:
870         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
871         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
872         gdk_window_set_icon_list for net wmspec functionality.
873
874         * gdk/x11/gdkwindow-x11.c:
875         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
876         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
877         gdk_window_set_icon_list.
878         Added gdk_wmspec_change_state helper function and used it in the code.
879         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
880
881         * gtk/gtkdialog.c (gtk_dialog_init):
882         Set GDK_WINDOW_TYPE_HINT_DIALOG.
883
884         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
885         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
886
887         * gtk/gtkwindow.c:
888         new function gtk_window_set_type_hint.
889         On realize, set type hint and modal hint.
890
891         * gtk/gtkwindow.h:
892         Added type_hint field and gtk_window_set_type_hint.
893
894 2001-03-05  Alexander Larsson  <alexl@redhat.com>
895
896         * gtk/gtklabel.[ch]:
897         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
898         New function gtk_label_get_accel_keyval () to get the underline accelerator
899         of the label. Setting the label pattern overrides other attributes.
900
901 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
902
903         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
904         Added missing initializers to gtk_rc_style_init().
905
906 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
907
908         * gtk/gtktextview.c: fixed bug #51097 about setting 
909         gtk_text_view_set_border_window_size() if the widget is 
910         already realized.
911
912 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
913
914         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
915
916         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
917         comment. Won't do to have duplicated doc comments between
918         the platform subdirs.
919
920 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
921
922         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
923           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
924
925         Detectable auto-repeat - make a repeating key generate
926         press/press/press/release instead of press/release pairs.
927
928         If we have Xkb and XkbSetDectableAutoRepeat supports
929         that, we do it that way. Otherwise, when we get
930         a release event, we check ahead with XPending to see
931         if the next key is a KeyPress with the same keycode
932         and timestamp. (Not 100% reliable, but pretty close.)
933           
934 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
935         
936         * gtk/gtkmain.c (gtk_propagate_event): Only do special
937         special key-press grab handling for widgets within
938         GtkWindows. Otherwise, fall through to normal case.
939  
940         This prevents key events being sent twice to GtkInvisible
941         widgets, which can cause all sorts of mischief.
942  
943 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
944  
945         * gtk/gtkmain.c (gtk_propagate_event): When a grab
946         widget is in effect, give the grab widget a first
947         crack at KEY_PRESS/RELEASE events. (#424)
948  
949 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
950
951         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
952         to extend the selection. (Roughly based on patch
953         from Jay Cox, #50939)
954
955         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
956         to properly handle previous GDK_BUTTON_PRESS. 
957         (Patch from Jay Cox, #50938)
958
959         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
960         '\0' back along with the deleted text. (#51148)
961
962 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
963
964         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
965         the group when extracting it from the X keyboard event.
966
967         * modules/input/Makefile.am modules/input/imipa.c: 
968         Simple module for entering IPA. (Do we need a 
969         gtk-stupid-input-tricks CVS module?)
970
971 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
972
973         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
974         const.
975
976         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
977
978         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
979         is no focus widget for the dialog currently, grab the focus as well
980         as the default.
981
982         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
983         the action area's children to iterate through, not the
984         dialog's children.
985
986 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
987
988         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
989         Add plug-socket tests. (Won't work worth a darn until I commit
990         the rest of the plug-socket changes, but no reason these
991         can't go into CVS now.)
992
993 2001-03-02  Havoc Pennington  <hp@redhat.com>
994
995         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
996         _gdk_region_get_xrectangles()
997
998         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
999
1000         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1001
1002         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1003         function, contributed by Ron Steinke    
1004
1005         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1006         gdk_net_wm_supports
1007
1008         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1009         New function, contributed by Ron Steinke
1010
1011         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1012         used to line up the text in the entry when using the entry for
1013         editable sheet cell hacks
1014
1015         * gtk/testgtk.c (create_entry): test the activate_default setting
1016         on GtkEntry
1017
1018         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1019         cause the entry to activate the default button for a dialog when 
1020         activated
1021         (gtk_entry_get_activates_default): new function
1022
1023 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1024
1025         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1026         Hwang to move call to sync_selection() up a few lines
1027         to before the row list is modified, to fix crash when
1028         removing rows in the undo_selection list.
1029
1030         (Test case provided by Daniel Elstner:
1031
1032         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1033
1034 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1035
1036         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1037         of tree->root_tree in parent_set rather than _map(), 
1038         fixing #50892 in a bit better manner.
1039
1040 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1041
1042         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1043
1044 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1045
1046         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1047         gtk_default_draw_shadow.
1048
1049 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1050
1051         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1052         warning, make warnings more verbose, treat a error
1053         in shmat as permanent, and don't try again.
1054         (#51163, Ed Randall.)
1055
1056 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1057
1058         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1059         delay for the first click before starting to scroll.
1060         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1061
1062         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1063         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1064
1065 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1066
1067         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1068         cleanup to remove some references to unused
1069         ->xoffset, ->yoffset.
1070
1071 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1072
1073         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1074         mask. (#51039, fix from Martin Maierhofer)
1075
1076 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1077
1078         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1079         for unshifted + and shifted = for non-us keyboards.
1080         Make <Control>+ and <Control>- work as well as 
1081         <Control>KP_Plus, <Control>KP_Minus for recursive
1082         open/close.  (#2682, René Seindal)
1083
1084 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1085
1086         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1087         the active menu item before deactivating the menu,
1088         so gtk_menu_popdown doesn't change the history. (#50964)
1089         
1090 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1091
1092         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1093         draw lines with text_gc rather than black_gc.
1094         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1095
1096 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1097
1098         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1099         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1100         less interrelated then it was, but it still requires the
1101         GtkTreeView to map it.
1102
1103         * test/testtreecolumn.c: Now I can add a column to one view,
1104         remove it, add it to the another view, remove it, then re-add it
1105         to the first.  Nifty.
1106
1107 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1108
1109         * docs/tutorial/gtk-tut.sgml: Minor corrections
1110
1111 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1112
1113         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1114         GtkRowReference.
1115
1116 2001-02-28  Havoc Pennington  <hp@redhat.com>
1117
1118         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1119         draw_default
1120         (gtk_widget_draw_focus): remove this function; we could instead
1121         make it just gtk_widget_draw(), but in most cases I think the
1122         result would be broken user code, so think it's better to have
1123         that code not compile and get fixed
1124         (gtk_widget_draw_default): ditto
1125
1126         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1127         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1128         
1129         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1130         widgets lose/get the default, instead of calling draw_default
1131         
1132         * docs/Changes-2.0.txt: note about all this
1133
1134         Then fixed every widget in GTK, I won't list all the filenames.
1135
1136 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1137
1138         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1139         _gtk_tree_row_reference_deleted.
1140         (inserted_callback): Proxy out to
1141         _gtk_tree_row_reference_inserted.
1142         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1143         get around signal emission ordering problem.
1144
1145         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1146         fix to work with SINGLE 
1147         (_gtk_tree_selection_internal_select_node): Major sanitization on
1148         selections.  SINGLE now seems to work.
1149
1150         * tests/Makefile.am: add testtreecolumn.c:
1151
1152         * tests/testtreecolumn.c: New test.  Mostly points out selection
1153         bugs currently, but will test columns later.
1154
1155         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1156         selection bug.  I hate touching this code -- it's scary.
1157
1158 2001-02-26  Havoc Pennington  <hp@redhat.com>
1159
1160         * gtk/testgtk.c: test the window state stuff
1161
1162         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1163         window come to the user's attention as if it were just created
1164         (gtk_window_iconify): new function
1165         (gtk_window_deiconify): new function
1166         (gtk_window_stick): new function
1167         (gtk_window_unstick): new function
1168         (gtk_window_maximize): new function
1169         (gtk_window_unmaximize): new function
1170
1171         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1172
1173         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1174
1175         * gdk/x11/gdkevents-x11.c: create window state events when
1176         appropriate
1177         (gdk_wmspec_supported): new function
1178
1179         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1180         iconification before showing the window
1181         (gdk_window_deiconify): new function
1182         (gdk_window_stick): new function
1183         (gdk_window_unstick): new function
1184         (gdk_window_maximize): new function
1185         (gdk_window_unmaximize): new function
1186
1187         * gdk/gdkwindow.c: store the window state in the window; 
1188         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1189         window->mapped.
1190         (gdk_window_get_state): return the current window state
1191
1192         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1193         (gdk_event_get_state): handle GDK_WINDOW_STATE
1194         (gdk_synthesize_window_state): function to create the window state
1195         events
1196
1197         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1198         event, for changes to "window state" such as maximized, sticky, 
1199         etc.
1200         
1201         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1202         focuses a window
1203
1204         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1205         finds out if we support a given WM spec hint
1206
1207 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1208
1209         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1210
1211 2001-02-25  Hans Breuer  <hans@breuer.org>
1212
1213         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1214         cause we want to loose those prototypes only in the latter case
1215
1216         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1217         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1218         impl member variable instead
1219
1220         * gtk/gtk.def : updated
1221
1222         * gtk/gtklist.c : 
1223         * gtk/gtkmenus.c : include <string.h> for memset ()
1224
1225         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1226         for everthing built here, but for gtk-x.x.dll only. This solves
1227         problem of indifferent gtk type definitions
1228
1229 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
1230
1231         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1232
1233 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1234
1235         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1236         column that is exposed.
1237
1238         (_gtk_tree_view_update_size): Changed name from set_size, and
1239         changed function to do more work, and not force people calling it
1240         to figure out the size.  Simplifies a lot of code elsewhere.
1241
1242 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1243
1244         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1245         return solid masks for xpms that have no transparent color.
1246         This makes the ..._create_from_xpm... API backwards
1247         compatible.
1248
1249 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1250
1251         * README.win32: Update. Mention the gtk-1-3-win32-production
1252         branch.
1253
1254         * gdk/win32/bdfcursor.c: New file. A program that generates
1255         xcursors.h. Thanks to Stefan Ondrejicka.
1256
1257         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1258         compact format.
1259
1260         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1261
1262         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1263         function, uses xcursors.h.
1264         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1265         cursor from inline data instead of using LoadCursor() to generate
1266         it from a resource.
1267
1268         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1269         event, must check the Windows message for mouse button state, as
1270         the GDK event state might not have been built if it is
1271         undelivered. Remove one goto.
1272
1273         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1274         SetCursor() if the current cursor as returned by GetCursor() is
1275         the window's previous cursor. The ChildWindowFromPoint() test
1276         apparently didn't work correctly.
1277
1278         * gdk/win32/rc/*.cur: Remove.
1279
1280         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1281
1282         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1283
1284         * gtk/makefile.{mingw,msc}.in: Updates.
1285
1286 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
1287
1288         * gtk/gtktreemodel.h: add functions for signal emission.
1289
1290         * gtk/gtktreestore.c: move to use above functions instead of
1291         g_signal_emit.
1292
1293         * gtk/gtkliststore.c: ditto
1294
1295 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
1296
1297         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
1298         GObject instead of GtkObject.
1299
1300         * gtk/gtkliststore.c: ditto.
1301
1302         * gtk/gtktreemodelsort.c: ditto.
1303
1304         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
1305         GtkTreeModelIface, instead of in each model.
1306
1307 2001-02-21  Havoc Pennington  <hp@redhat.com>
1308
1309         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
1310         unbreak this function
1311
1312         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
1313         properties
1314
1315         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
1316         properties
1317
1318         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
1319         properties
1320
1321         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
1322         mean unset the max length
1323
1324 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
1325
1326         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
1327         Changed name to be set_cell_data_func to make it clear what
1328         the functino does.  Close bug #51069.
1329
1330 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
1331
1332         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
1333         have memory actually freed.  Keeps box running longer.
1334
1335 2001-02-21  Alexander Larsson  <alexl@redhat.com>
1336         
1337         * gtk/gtkseparatormenuitem.[ch]:
1338         Added new menu separator item. The drawing and size handling
1339         is still done in GtkMenuItem, but the API is a bit more sane.
1340         
1341         * gtk/Makefile.am:
1342         Add gtkseparatormenuitem.[ch].
1343
1344         * gtk/gtk.h:
1345         Add gtkseparatormenuitem.h.
1346         
1347         * gtk/gtkentry.c:
1348         * gtk/gtkmenufactory.c:
1349         * gtk/gtktextview.c:
1350         Use the new API for menu separators.
1351         
1352         * demos/gtk-demo/menus.c (create_menu):
1353         Add some GtkSeparatorMenuItem demo code.
1354
1355 2001-02-20  Havoc Pennington  <hp@redhat.com>
1356
1357         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
1358         Lee Mallabone
1359
1360         * gtk/gtkarrow.c: Convert to new property API, patch from 
1361         Lee Mallabone
1362
1363 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
1364
1365         * tests/testtreeview.c (toggled_callback): fix to reflect change
1366         in GtkTreeModelStore.
1367
1368 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
1369
1370         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
1371         function to create an icon set from a pixbuf.
1372
1373 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1374
1375         * gtk/gtkcellrenderertext.[ch]:
1376         Add a "markup" property.
1377
1378         * gtk/treestoretest.c:
1379         Use the markup property, remove some leftover stuff from
1380         GtkTreeModelMapping.
1381
1382 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1383
1384         * gtk/gtklabel.c (gtk_label_set_selectable):
1385         Queue a redraw if the selectable setting was changed.
1386
1387 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1388
1389         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1390         Actually copy the whole gc, not just the public parts.
1391         
1392         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1393         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
1394         labels.
1395
1396 2001-02-19  Havoc Pennington  <hp@pobox.com>
1397
1398         * gdk/gdkwindow.c: docs
1399
1400         * gdk/gdkrgb.c: docs
1401
1402         * gdk/gdkregion-generic.c: docs
1403
1404         * gdk/gdkgc.c (gdk_gc_set_values): docs
1405
1406         * gdk/gdkdraw.c: docs
1407
1408         * gdk/gdkdrawable.h: deprecate drawable get/set data
1409
1410 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
1411
1412         * demos/gtk-demo/dialog.c: Add simple new demo.
1413
1414 2001-02-19  Havoc Pennington  <hp@redhat.com>
1415
1416         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
1417         insert_child_anchor signal, bug #50245
1418
1419         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
1420         from create_child_anchor, so the anchor is passed in
1421
1422         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
1423         (_gtk_widget_segment_new): have the child anchor object passed in, 
1424         instead of creating it.
1425
1426         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
1427         to gtk_text_buffer_get_modified
1428
1429 2001-02-19  Havoc Pennington  <hp@redhat.com>
1430
1431         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
1432         changed GLib without fixing GTK
1433
1434         * gtk/gtkrange.h: Rename all the stupid implementation detail 
1435         functions to have an underscore in front. Most of them should 
1436         probably just go away, but for starters don't export them.
1437         Bug #50482
1438
1439 2001-02-19  Havoc Pennington  <hp@redhat.com>
1440
1441         * gdk/gdkcolor.h: test was backward, so deprecated functions were
1442         excluded by default
1443
1444         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
1445         clean up the old code a bit
1446
1447         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
1448         inconsistent state
1449
1450         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
1451         draw inconsistent state
1452
1453         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
1454         (create_menu): add inconsistent test
1455
1456         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
1457         new function
1458         (gtk_check_menu_item_get_inconsistent): new function
1459         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
1460         state (using etched in for now)
1461
1462         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
1463         draw inconsistent state
1464
1465         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
1466         function, used when the user has selected a range of stuff in
1467         different states
1468         (gtk_toggle_button_get_inconsistent): accessor for that
1469         (gtk_toggle_button_paint): draw inconsistent state (etched in?
1470         don't know what else to do)
1471
1472 2001-02-19  Hans Breuer <hans@breuer.org>
1473
1474         * gtk/gtk.def : updated exported symbols
1475
1476         * gtk/makefile.msc.in : updated
1477
1478         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
1479         a colormap, when invoked from testgtk::entry. I'm not sure where
1480         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
1481         avoids immediate crashing ...
1482
1483         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
1484         any objections ?
1485
1486         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
1487         0 parameter. At least msvc doesn't like macros with var args. 
1488         I simply removed the extra 0, was it a feature or a typo ?
1489
1490         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
1491         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
1492         because the value assignment to the internal struct wasn't working.
1493         I'm not absolutely sure. The problem could have been resolved by
1494         changing the "func" declartion in the struct, but was the pointer
1495         to the function pointer intended ?
1496
1497         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
1498
1499         * gdk/gdk.def : updated exported symbols
1500
1501         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
1502         only use SetDIBitsToDevice if there is a palette at the drawable
1503         and the image is GDK_VISUAL_PSEUDO_COLOR
1504
1505         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
1506
1507         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
1508
1509         * gdk/*/makefile.msc : updated
1510
1511 2001-02-19  Havoc Pennington  <hp@redhat.com>
1512
1513         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
1514         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
1515
1516         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
1517         (gdk_key_repeat_restore): nuke
1518
1519         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
1520         (gdk_init_check): no atexit func
1521
1522         * gdk/gdkrgb.h: mark some stuff deprecated
1523
1524         * gdk/gdkcolor.h: mark some stuff deprecated
1525         
1526         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
1527
1528         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
1529
1530 2001-02-16  Havoc Pennington  <hp@redhat.com>
1531
1532         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
1533         scroll steps.
1534
1535         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
1536         steps, and add Ctrl-arrow shortcuts for paging visually as with
1537         HScale, since Page Up and Page Down move logically.
1538
1539         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
1540         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
1541         
1542         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
1543         steps
1544         (gtk_range_scroll): handle the visual steps
1545
1546         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
1547         scroll steps
1548
1549         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
1550         steps, not the logical ones.
1551
1552         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
1553         (scroll_vertical): handle up/down steps
1554
1555 2001-02-19 Alexander Larsson  <alexl@redhat.com>
1556
1557         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
1558         Copy data and free data with free().
1559
1560         * gdk-pixbuf/gdk-pixbuf.c:
1561         * gdk-pixbuf/io-jpeg.c:
1562         * gdk-pixbuf/io-png.c:
1563         Use g_try_malloc/g_free instead malloc/free.
1564         
1565         * gdk-pixbuf/test-gdk-pixbuf.c:
1566         Must... initialize... gobject...
1567         
1568         * gdk-pixbuf/pixops/timescale.c:
1569         * gtk/gtkcalendar.c:
1570         Use g_malloc instead of malloc.
1571         
1572 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
1573
1574         * gtk/testgtkrc:
1575         Comment out property assignments, these don't work yet.
1576
1577 2001-02-17  Havoc Pennington  <hp@pobox.com>
1578
1579         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
1580         bit.
1581
1582 2001-02-17  Havoc Pennington  <hp@pobox.com>
1583
1584         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
1585         shadowed variables that had broken size request in some cases,
1586         leading to bogus tooltips (#50996)
1587
1588 2001-02-06  Jon K Hellan  <hellan@acm.org>
1589
1590         Implement fast browsing of tooltips, bug #50619
1591         
1592         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
1593         and last_popdown
1594         
1595         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
1596         use_sticky_delay and last_popdown.
1597         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
1598         time of popdown.
1599         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
1600         is NULL.
1601         (gtk_tooltips_recently_shown): New static function.  Return true
1602         if < sticky_delay has elapsed since last popdown.
1603         (gtk_tooltips_event_handler): Display window after sticky_delay
1604         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
1605         since last popdown.
1606         
1607 2001-02-17  Havoc Pennington  <hp@pobox.com>
1608
1609         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
1610         instead of (). #6394
1611
1612         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
1613         G_CONST_RETURN, make it return by reference, #50473
1614         
1615 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
1616
1617         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
1618         generated ENTER_NOTIFY event with 0, otherwise not explicitely
1619         setup fields contain garbage (e.g. subwindow, breaking
1620         gdk_drawable_ref() upon event copy).
1621         (gtk_menu_stop_navigating_submenu_cb): same here.
1622
1623         * gtk/gtklist.c (gtk_list_vertical_timeout): 
1624         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
1625         * gtk/gtkclist.c (vertical_timeout): 
1626         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
1627         default-zero-intialization for unions to memset(,0,), as unions are
1628         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
1629         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
1630
1631         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
1632         g_closure_sink() warning.
1633
1634         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
1635         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
1636         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
1637         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
1638         
1639 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
1640
1641         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
1642         gtk_*_store_get, and moved to GtkTreeModel.
1643
1644         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
1645
1646         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
1647
1648         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
1649
1650         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
1651         set the func.
1652
1653         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1654         freeze/thaw notify between setting all the properties for a cell.
1655
1656         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
1657
1658 2001-02-15  Havoc Pennington  <hp@redhat.com>
1659
1660         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
1661         the X coordinates so they're with respect to the line, rather than 
1662         with respect to the layout.
1663
1664         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
1665         Mallabone
1666
1667         * gtk/testgtk.c (create_range_controls): add vscale tests, 
1668         and inverted test
1669
1670         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
1671         #50806
1672
1673         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
1674
1675         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
1676         gtk_text_iter_is_end
1677
1678         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
1679         rename gtk_text_buffer_get_end_iter
1680
1681         * gtk/testgtk.c (create_labels): Add test for selectable
1682
1683         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
1684         the selection stuff. This code is kind of broken since it doesn't 
1685         use the theme engine.
1686
1687         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
1688         fix infinite loop and y offset problem
1689         (gdk_draw_layout_line_with_colors): fix foreground color handling
1690
1691         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
1692         that makes the label selectable.
1693         
1694         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
1695         layout when the style is set, since fonts etc. could have changed.      
1696
1697 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
1698
1699         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
1700
1701         * gtk/gtktreemodelsimple.[ch]: removed.
1702
1703 2001-02-16  Alexander Larsson  <alexl@redhat.com>
1704
1705         * gtk/gtktreemodelmapping.[ch]:
1706         New files. Implement GtkTreeModelMapping.
1707         
1708         * gtk/Makefile.am:
1709         Add gtktreemodelmapping.[ch].
1710         
1711         * gtk/gtk.h:
1712         Add gtktreemodelmapping.h
1713
1714         * gtk/treestoretest.c:
1715         Test the GtkTreeModelMapping
1716
1717 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
1718
1719         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
1720         have a demo, we might as well pass in real values.  Thanks to
1721         clahey for pointing this out.
1722
1723 2001-02-14  Havoc Pennington  <hp@pobox.com>
1724
1725         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
1726         "static" to a private function
1727         (gtk_image_menu_item_class_init): remove destroy handler,
1728         add "image" object property
1729
1730 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
1731
1732         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
1733         Add a shortcut if the window and the current clip_region doesn't
1734         overlap. This is needed when there are a lot of windows in a
1735         window. The layout test in testgtk is a good test.
1736
1737         * gdk/linux-fb/gdkwindow-fb.c:
1738         Whitespace fix.
1739
1740 2001-02-13  Sven Neumann  <sven@convergence.de>
1741
1742         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
1743
1744 2001-02-13  Alexander Larsson  <alexl@redhat.com>
1745
1746         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
1747         Don't reference last_cursor if it is null. Fixes crash when rotating
1748         the screen before having moved the mouse.
1749
1750         * gdk/linux-fb/gdkcc-fb.c: Zapp!
1751
1752         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
1753
1754         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
1755         when using 90 or 270 degrees rotation.
1756
1757 2001-02-12  Havoc Pennington  <hp@pobox.com>
1758
1759         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
1760         it always set the foreground, even if we were only using
1761         a stipple.
1762         (gdk_draw_layout_line_with_colors): new function, allow
1763         override colors
1764         (gdk_draw_layout_with_colors): new function, allow override
1765         colors
1766         (gdk_pango_layout_line_get_clip_region): function to get the clip
1767         region for a logical text range
1768         (gdk_pango_layout_get_clip_region): get the clip region for a
1769         logical text range
1770
1771         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
1772         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
1773         the right number of arguments.
1774
1775         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
1776         enhance the function to check that node data corresponds to a 
1777         view still belonging to the tree.
1778
1779         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
1780         GtkTreePath
1781         (gtk_tree_view_inserted): ditto
1782         (gtk_tree_view_child_toggled): ditto
1783
1784         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
1785         simplify this code.
1786
1787         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
1788         a PangoAttrList
1789
1790         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
1791
1792         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
1793
1794         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
1795         size in the size request 
1796         (gtk_menu_bar_size_allocate): consider toggle size here
1797
1798         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
1799         that displays a widget in the toggle slot
1800
1801         * gtk/testgtk.c: test GtkImageMenuItem
1802
1803         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
1804         
1805         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
1806         request and allocation
1807
1808         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
1809
1810         * gtk/gtkcheckmenuitem.c
1811         (gtk_check_menu_item_toggle_size_request): ditto
1812         
1813 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
1814
1815         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
1816         reference.
1817
1818         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
1819         and refuse to initialize GTK+ if they fail.
1820
1821 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
1822
1823         * configure.in: Add check for gtk-doc version.
1824
1825 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1826
1827         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
1828         where the xpad/ypad was only being used on one side!
1829
1830 2001-02-11  Tor Lillqvist  <tml@iki.fi>
1831
1832         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
1833         function, copied from X11 version.
1834
1835         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
1836         DestroyCursor failures. The reason for the problem (despite the
1837         inconsistent messages from GetLastError()) was that
1838         DestroyCursor() cannot be called while a cursor is set in a
1839         window. Set the new cursor first and then destroy the old one.
1840         Thanks to jpe@archaeopteryx.com.
1841
1842         * gdk/win32/gdkcc-win32.c: Remove.
1843
1844         * gdk/win32/Makefile.am: Remove from here, too.
1845         
1846         * gdk/gdk.def
1847         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
1848
1849         * gtk/gtk.def
1850         * gtk/makefile.mingw.in: Updates.
1851
1852 2001-02-08  Havoc Pennington  <hp@redhat.com>
1853
1854         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
1855         add a widget to a bin that already has a child.
1856
1857         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
1858
1859         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
1860         
1861         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
1862
1863         * gdk/gdk.h: remove gdkcc.h
1864
1865         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
1866
1867         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
1868         GdkPixbuf, since the previous implementation was GdkColorContext
1869         dependent.
1870
1871         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
1872         
1873 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
1874
1875         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
1876         a sane value!
1877
1878 2001-02-08  Havoc Pennington  <hp@redhat.com>
1879
1880         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
1881         lighten them.
1882
1883 2001-02-08  Havoc Pennington  <hp@redhat.com>
1884
1885         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
1886         validation idle
1887
1888         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
1889         cell renderer
1890
1891         * demos/pixbuf-demo.c (timeout): remove deprecated
1892         gtk_widget_draw
1893
1894         * demos/testpixbuf-save.c (main): remove deprecated
1895         gtk_drawing_area_size
1896
1897         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
1898         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
1899         at the start of the allocation.
1900         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
1901         unsetup or NULL model.
1902
1903         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
1904         even/odd/sorted cells in the tree view.
1905
1906         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1907         bugfixes
1908
1909         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
1910         backgrounds with draw_flat_box using different detail for even/odd
1911         rows.
1912
1913         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
1914         row, so we can draw the alternating colors thing
1915
1916         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
1917         property from a synonym property, notify for the synonym.
1918         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
1919         (gtk_text_tag_get_property): Always return the font, even if
1920         all its fields aren't set
1921
1922         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
1923         store the attr list; it leaves us with no way to change attributes
1924         in _render according to the render flags, and no way to implement
1925         get_property. Instead store all the specific text attributes. 
1926         Separate whether an attribute is enabled from its value. Sync all
1927         properties with GtkTextTag, make them all consistent, etc.
1928
1929         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
1930         renderers can highlight the sort row/column     
1931
1932         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
1933         accessor functions to get values; this has the side effect of
1934         showing up which accessor functions were missing. Added those.
1935
1936         * gtk/gtktreeviewcolumn.h: Replace set_justification with
1937         set_alignment, to be consistent with GtkLabel, GtkMisc
1938
1939         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
1940         arrow.
1941
1942         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
1943
1944         * gtk/gtktreesortable.h: updates in here
1945
1946 2001-02-07  Sven Neumann  <sven@convergence.de>
1947
1948         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
1949         pango dimensions after painting the background. We used to draw
1950         gigantic flat boxes here.
1951
1952 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
1953
1954         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
1955         error introduced with earlier commit) (pointed out by
1956         Ollie Lho)
1957
1958 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
1959
1960         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
1961         which are no longer necessary.
1962
1963 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
1964
1965         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
1966
1967 2001-02-04  Tor Lillqvist  <tml@iki.fi>
1968
1969         * gdk/gdk.def
1970         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1971         Provide dummy implementations.
1972
1973 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1974
1975         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1976
1977         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1978         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1979         deprecated this function.
1980
1981         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1982         argument.
1983
1984 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1985
1986         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1987
1988 2001-02-03  Havoc Pennington  <hp@pobox.com>
1989
1990         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1991         Mikael Hermansson with patch from Mikael (if there was a toggle
1992         start one after the first character in the range, this function
1993         was broken). Bug #50380
1994
1995 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1996
1997         * configure.in: Remove confusing comment about X11.
1998
1999 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2000
2001         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2002         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2003         
2004 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2005
2006         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2007         it breaks things on BSD. If you want to compile GTK+ with
2008         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2009         when configuring, since GTK+ simply can't be "pure ANSI" 
2010         in the header files it uses. (#8170, Greg Hudson)
2011
2012 2001-02-02  Havoc Pennington  <hp@redhat.com>
2013
2014         * gtk/gtkwindow.c: docs
2015
2016         * gtk/gtkwidget.c: docs
2017         (gtk_widget_set_colormap): add a reference to the colormap
2018         (gtk_widget_get_default_colormap): add a reference to the colormap
2019
2020         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2021
2022         * gtk/gtktextiter.c: docs
2023
2024         * gtk/gtkmain.c (gtk_propagate_event): docs
2025
2026         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2027         (gtk_paned_set_position): docs
2028
2029         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2030         sort interface, no implementation yet.
2031
2032         * demos/testpixbuf.c (new_testrgb_window): replace
2033         gtk_drawing_area_size() with gtk_widget_set_usize()
2034
2035         * demos/testpixbuf-drawable.c (main): ditto
2036         
2037         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2038
2039         * gtk/gtktextbuffer.c: docs
2040
2041         * gtk/gtkstock.c: docs
2042
2043         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2044
2045         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2046
2047         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2048         
2049         * gtk/gtkimage.c: add some docs in here
2050         (gtk_image_size_request): change name of
2051         gtk_widget_render_stock_icon
2052         (gtk_image_get_icon_set): don't dup returned string
2053         (gtk_image_get_icon_set): don't dup returned string
2054
2055         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2056         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2057         and gtkiconfactory.h functions
2058
2059         * gtk/gtkiconfactory.c: add some docs in here
2060
2061         * gtk/gtkmain.c (gtk_get_default_language): document
2062         (gtk_get_current_event): document
2063         (gtk_get_current_event_state): document
2064         (gtk_get_event_widget): document
2065
2066         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2067
2068         * gtk/gtkcontainer.c: Add some documentation
2069         (gtk_container_add): give a more explanatory warning on adding an
2070         already-parented widget, this is kind of a FAQ and also a common
2071         typo that's easier to debug with a nice warning 
2072
2073         * gtk/gtkcellrenderertoggle.c
2074         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2075         adding this, it's useless
2076         (gtk_cell_renderer_toggle_set_active): remove
2077         (gtk_cell_renderer_toggle_get_radio): add
2078
2079         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2080         the NULL cell renderer, that doesn't make any sense to me. 
2081
2082         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2083         demo code should never use deprecated features.
2084
2085         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2086         code should never use deprecated features.
2087
2088         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2089         gtk_widget_queue_clear_area deprecated
2090
2091         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2092         deprecated
2093
2094         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2095
2096         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2097         a GdkImage deprecated, replaced by new consistently-named
2098         functions       
2099
2100         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2101
2102         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2103
2104         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2105         deprecated
2106
2107         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2108         so it won't appear in docs and confuse people.
2109
2110         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2111
2112         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2113         macros deprecated. (can't mark the type itself deprecated, since
2114         GtkProgressBar is not deprecated and we need the type decl to use
2115         GtkProgressBar)
2116
2117         * gtk/gtkpixmap.h: Mark deprecated
2118
2119         * gtk/gtkoldeditable.h: Mark deprecated
2120
2121         * gtk/gtklist.h: Mark deprecated
2122
2123         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2124         for anything anymore.
2125
2126         * gtk/gtkctree.h: Mark deprecated
2127
2128         * gtk/gtkclist.h: Mark deprecated
2129
2130         * gtk/gtkpreview.h: Mark deprecated
2131
2132         * gtk/gtkpacker.h: Mark deprecated
2133
2134         * gtk/gtktipsquery.h: Mark deprecated
2135
2136         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2137
2138         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2139
2140         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2141
2142         * gtk/gtkruler.h: Add comment that it will move out of GTK
2143
2144         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2145
2146         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2147
2148 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2149
2150         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2151         gdk_colormap_sync private since it was never exported
2152         in a header file.
2153
2154         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2155         colormap->colors[] for StaticGray, StaticColor colormaps.
2156
2157         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2158         was being used as if it was image->bits_per_pixel.
2159
2160         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2161         for the image in the GdkImage structure since it isn't
2162         reconstructable, and we need it to handle packed types
2163
2164         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2165         the assumption that on Win32 image->bits_per_pixel == image->depth,
2166         always.
2167
2168         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2169
2170         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2171         warning message if no converter can be found. 
2172
2173 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2174
2175         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2176         chars to isupper() / tolower(). (#567)
2177
2178         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2179         to clear up 64-bit warnings. (#567)
2180
2181 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2182
2183         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2184         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2185
2186         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2187         since some people set $(libdir) separately. (#1290, David Kaelbling)
2188
2189 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2190
2191         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2192         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2193         MAXPATHLEN, but the code here depends on a fixed value.)
2194         (#4524)
2195
2196 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2197
2198         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2199         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2200
2201 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2202
2203         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2204         viewable there is no way that moving the node will cause the 
2205         focus row to become not viewable, so omit check on the visibility
2206         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2207
2208 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2209
2210         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2211         selection before inserting new text.
2212
2213 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2214
2215         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2216         Make the sensitivity of the reparented child track that of
2217         the original parent menu item. (#34218, David Hodson)
2218
2219         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2220         the case where the current item is destroyed properly.
2221
2222         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2223         some edge cases with child-less menuitems.
2224         
2225 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2226
2227         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2228         key pop down window. (#12074, Jon K Hellan)
2229
2230 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2231
2232         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2233         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2234         The solution here isn't perfect - you get an extraneous
2235         emission of "toggle", which could conceivably confuse an app,
2236         but better than the current situation. LXR search seems to
2237         indicate that no apps in GNOME CVS connect to "toggle".
2238
2239 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2240
2241         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2242         gtk_public_h_sources to directly here to avoid warning when
2243         building srcdir != builddir. (#9656)
2244
2245 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2246
2247         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2248         handlers in gtkrange.c return the proper values (TRUE == handled)
2249         (#10316).
2250
2251         This is just the tip of the iceberg, but gtkrange.c is the
2252         most common place where the propagation is problematical,
2253         and also a place where it is almost certainly safe to change
2254         this in the stable branch.
2255
2256         (You don't want right click popups on a range control or anything...)
2257
2258 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2259
2260         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2261         area on focus out, even if a background pixmap isn't set.
2262         (#13941)
2263         
2264 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2265
2266         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2267         to deal with setting the shape properly when scrolling arrows are
2268         turned on, but not visible because there is sufficient space.
2269         (#13432)
2270
2271 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2272
2273         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2274         items with submenus, destroy the item along with the submenu.
2275         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2276         properly.
2277
2278         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2279         later.
2280
2281 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2282
2283         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2284         the focus widget sometimes wasn't drawn with the default if there
2285         was no default widget.
2286
2287         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
2288         unreference pixmaps. 
2289
2290         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
2291         for some extra safety.
2292
2293 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
2294
2295         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
2296         the text of a cell to the old pointer value better, by
2297         copying the new text before freeing the old text. Some code
2298         cleanup. (#8079, Karl Nelson)
2299
2300 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
2301
2302         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
2303         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
2304
2305 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
2306
2307         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
2308         item from a menu, check to see if it matches 
2309         menu->old_active_menu_item, and if so, unref and clear
2310         old_active_menu_item (Patch from Pavel Cisler)
2311
2312         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
2313         menu_shell->active_menu_item, if it is the child being
2314         removed. (Patch based on that of Gene Ragan, #50337)
2315
2316 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
2317
2318         * gdk/linux-fb/gdkselection-fb.c: 
2319         * gdk/linux-fb/gdkcolor-fb.c: 
2320         * gdk/linux-fb/gdkdrawable-fb2.c: 
2321         * gdk/linux-fb/gdkfont-fb.c: 
2322         * gdk/linux-fb/gdkim-fb.c: 
2323         * gdk/linux-fb/gdkinput.c: 
2324         * gdk/linux-fb/gdkkeyboard-fb.c: 
2325         * gdk/linux-fb/gdkmain-fb.c: 
2326         * gdk/linux-fb/gdkrender-fb.c: 
2327         A bunch of whitespace cleanup.
2328         
2329 2001-01-30  Havoc Pennington  <hp@pobox.com>
2330
2331         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
2332         #ifdef GTK_ENABLE_BROKEN.
2333
2334         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
2335         GTK_ENABLE_BROKEN just before including the broken headers.
2336         
2337         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
2338         deprecated types registered.
2339
2340         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
2341         we have to test the broken stuff.
2342
2343         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
2344         
2345 2001-01-30  Havoc Pennington  <hp@redhat.com>
2346
2347         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
2348         here where prev pointer was set to the wrong thing
2349
2350         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
2351         (gtk_tree_path_is_descendant): new function
2352
2353         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
2354         cached length
2355         (gtk_list_store_get_iter): don't modify iter if we can't get the
2356         path.
2357
2358         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
2359         
2360         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
2361         GtkTreeDragDest
2362
2363         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
2364         was causing segfault
2365
2366         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
2367         pointer to NULL
2368
2369         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
2370
2371         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
2372         on returning FALSE
2373         (gtk_list_store_iter_children): ditto
2374         (gtk_list_store_iter_nth_child): ditto
2375         (gtk_list_store_iter_nth_child): ditto
2376         (gtk_list_store_iter_parent): ditto
2377
2378         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
2379         on iter->user_data != NULL instead of silently accepting it.
2380         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
2381         we are returning TRUE.
2382         (gtk_tree_store_iter_children): ditto
2383         (gtk_tree_store_iter_nth_child): ditto
2384         (gtk_tree_store_iter_parent): ditto
2385         (gtk_tree_store_insert): remove handling of parent->user_data ==
2386         NULL, replace with parent == NULL       
2387
2388         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
2389         and a comment explaining things
2390
2391         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
2392         interface support to GtkTreeStore.
2393
2394         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
2395         FALSE if no prev, fix
2396
2397         * gtk/gtktreeview.c (set_source_row): use a row reference
2398         (set_dest_row): use a row reference
2399
2400 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
2401
2402         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
2403         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
2404         (gtk_tree_selection_select_iter): The same as above.
2405
2406 2001-01-26  Havoc Pennington  <hp@redhat.com>
2407
2408         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
2409         which holds a handle to a specific row (particular set of values
2410         in the model, i.e. pointer-identity row).
2411
2412         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
2413         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
2414         Still need to use it for the src/dest row saved on the drag context.
2415
2416 2001-01-26  Havoc Pennington  <hp@redhat.com>
2417
2418         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
2419
2420         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
2421         not offset by TREE_VIEW_HEADER_HEIGHT
2422         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
2423         TREE_VIEW_HEADER_HEIGHT
2424
2425         * configure.in (included_loaders): for me, --with-included-loaders
2426         generates the error "the specified loader yes does not exist",
2427         i.e. the arg defaults to "yes", so change test for value ""
2428         to test for value "yes", and include all loaders in that case.
2429
2430         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
2431
2432         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
2433         handle TREE_VIEW_VERTICAL_SEPARATOR
2434         (gtk_tree_view_bin_expose): fix to consider the row offset as
2435         pointing halfway into vertical separator.       
2436         (gtk_tree_view_draw_node_focus_rect): ditto
2437
2438         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
2439         --gtk-debug=updates, which causes gdk_window_set_debug_updates
2440         (TRUE) to be called.
2441
2442         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
2443         debug mode where the invalid region is colored in on invalidate,
2444         so you can see the flicker and know whether your redraw code is 
2445         doing a good job.
2446
2447         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
2448         tree window coordinates (clip rect is in tree window coords)
2449
2450         * gtk/Makefile.am: add gtktreednd.[hc]
2451
2452         * gtk/gtkliststore.c: implement gtktreednd interfaces.
2453
2454         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
2455         drag-and-drop data operations on a model (so we can set up tree
2456         drag-and-drop automatically)
2457
2458         * gtk/testgtk.c: Add a window to change sensitivity in the
2459         GtkLabel test; add a way to change the entry frame in GtkEntry
2460         test
2461
2462         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
2463         (gtk_entry_get_has_frame): new functions to remove the frame
2464         around an entry
2465         (gtk_entry_size_request): shrink requisition if no frame
2466         (gtk_entry_draw_focus): don't draw frame if no frame
2467
2468         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
2469         checks inside a cell renderer
2470         (gtk_default_draw_option): ditto for options
2471
2472         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
2473         children from the alignment, not the button
2474         (gtk_tree_view_column_init): ref/sink the column, to emulate
2475         GObject refcounting.
2476
2477         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
2478         
2479         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2480         Use theme functions to draw the toggles 
2481
2482         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
2483
2484         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
2485         GdkPangoAttrEmbossed to use in rendering insensitive text
2486
2487         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
2488
2489         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
2490         using new GDK features
2491         
2492 2001-01-24  Alexander Larsson  <alexl@redhat.com>
2493
2494         * gtk/gtkimage.c:
2495         Splitted gtk_image_clear into gtk_image_clear() and
2496         gtk_image_reset(). Call gtk_image_clear() in ::destroy
2497         to avoid leaks.
2498
2499         * gtk/gtklabel.c (set_markup):
2500         Don't leak text.
2501
2502         * gtk/gtktextlayout.c:
2503         Always free display->shaped_objects.
2504
2505         * gtk/testgtk.c (create_clist):
2506         Don't leak custom style.
2507
2508 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2509
2510         * gtk/gtkcolorsel.c (grab_color_at_mouse):
2511         Don't leak image. Simplify using gdk_colormap_query_color().
2512         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
2513
2514         * linux-fb/gdkcolor-fb.c:
2515         Implemented gdk_colormap_query_color.
2516
2517 2001-01-23  Alexander Larsson  <alexl@redhat.com>
2518
2519         * linux-fb/gdkcursor-fb.c:
2520         Don't leak built-in cursors.
2521
2522         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
2523         Don't leak tmp_points.
2524
2525         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
2526         Don't modify desc. Don't leak font if the PangoFont
2527         isn't found.
2528         
2529         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
2530         Free dash_list.
2531
2532         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
2533         Don't leak string.
2534         
2535 2001-01-20  Havoc Pennington  <hp@pobox.com>
2536
2537         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
2538         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
2539         me, matches Pango
2540
2541 2001-01-22  Havoc Pennington  <hp@redhat.com>
2542
2543         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
2544
2545         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
2546
2547         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
2548         Remove, move back to gdk-pixbuf
2549
2550         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
2551         to all the word functions
2552
2553         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
2554         before doing anything on NULL layout or if we don't have the focus
2555
2556         * gtk/testtext.c (fill_example_buffer): "justification"
2557
2558         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
2559         to be called "justification" not "justify"
2560
2561         * demos/gtk-demo/textview.c (create_tags): "justification"
2562         
2563         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
2564
2565 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2566
2567         * gdk/gdkwindow.c (gdk_window_invalidate_region):
2568         Don't leak visible_region. Use visible_region instead of region.
2569         
2570         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2571         Don't do extra gdk_drawable_ref(). This is not X.
2572         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
2573         gdk_fb_focused_window is ref:ed.
2574         (gdk_fb_window_send_crossing_events): Watch out for destroyed
2575         windows.
2576
2577 2001-01-22  Alexander Larsson  <alexl@redhat.com>
2578
2579         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
2580         Don't leak the PangoFontDescriptor.
2581
2582 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
2583
2584         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
2585         when not realized.
2586         (gtk_tree_view_scroll_to_cell): Make work when not realized.
2587         (gtk_tree_view_realize): add scroll_to support
2588         (gtk_tree_view_finalize): add a finalize method.  Populate.
2589         (gtk_tree_view_insert_column): ref and sink the column.
2590         (gtk_tree_view_append_column): ref and sink the column.
2591         (gtk_tree_view_queue_draw_node): New function to handle redrawing
2592         individual nodes.  Should make the code much more efficient, if
2593         actually used.
2594
2595 2001-01-19  Havoc Pennington  <hp@redhat.com>
2596
2597         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
2598         byte_offset variable was being used to mean both "offset into
2599         layout" and "offset into buffer line" which was no longer true
2600         with addition of preedit string; fix
2601
2602 2001-01-19  Havoc Pennington  <hp@redhat.com>
2603
2604         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
2605
2606         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
2607         function
2608
2609         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
2610         implement
2611
2612         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
2613         scroll_to_cell, matches TextView scroll functions better
2614         (gtk_tree_view_tree_to_widget_coords): new function
2615         (gtk_tree_view_widget_to_tree_coords): new function
2616         (gtk_tree_view_get_visible_rect): new function
2617         (gtk_tree_view_get_path_at_pos): accept negative coordinates
2618         (gtk_tree_view_draw_node_focus_rect): new function moved from
2619         draw_focus, also, use width of bin_window as width of the focus
2620         rect
2621         (gtk_tree_view_expand_row): fix bug where it didn't recognize
2622         already-expanded rows
2623         (gtk_tree_view_get_cell_rect): new function
2624         (gtk_tree_view_get_path_at_pos): return the click position
2625         relative to the passed-in cell
2626         (gtk_tree_view_set_expander_column): new function
2627
2628         * configure.in: remove gtk-config-2.0 chmod
2629
2630         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
2631         and properly handle drags with targets we don't understand
2632         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
2633         scrolling anyway
2634         (gtk_text_view_drag_drop): stop scrolling here though, and set the
2635         mark invisible
2636
2637         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
2638         function
2639         (gtk_drag_dest_get_target_list): new function
2640         (gtk_drag_dest_set_target_list): new function
2641         
2642         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
2643
2644         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
2645         related to drag-and-drop
2646
2647 2001-01-19  Alexander Larsson  <alexl@redhat.com>
2648
2649         * gdk/linux-fb/gdkprivate-fb.h:
2650         Define EMULATE_GDKFONT.
2651         Add extra pango_font stuff to GfkFontPrivate.
2652         
2653         * gdk/linux-fb/gdkdrawable-fb2.c:
2654         * gdk/linux-fb/gdkfont-fb.c:
2655         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
2656         emulation using PangoFont.
2657
2658 2001-01-17  Havoc Pennington  <hp@pobox.com>
2659
2660         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
2661         all the non-deprecated set_foo functions. Added missing object
2662         properties, and added g_object_notify() to setters. 
2663         Wrote docs.
2664         
2665 2001-01-18  Tor Lillqvist  <tml@iki.fi>
2666
2667         * gtk/gtkmain.c
2668         * gtk/gtkrc.c: (Win32) Use the new
2669         g_win32_get_package_installation_(sub)directory() functions.
2670
2671         * config.h.win32.in: New file.
2672         
2673         * config.h.win32: Removed.
2674
2675         * configure.in: Output config.h.win32.
2676
2677         * Makefile.am: Add it to EXTRA_DIST.
2678
2679         * gtk/gtk.def: Update.
2680
2681 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
2682
2683         * gtk/gtklabel.c (gtk_label_size_request): Set the
2684         attributes onto the PangoLayout even if they are newly
2685         created from label->pattern.
2686
2687 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
2688
2689         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
2690
2691         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
2692         structures in functions. Fixes bug where gtk_dataset_*
2693         was accidentally still being used in one place, causing
2694         every dest side event to be treated independently.
2695
2696         * gtk/gtkdnd.c: Remove last vestages of handling
2697         ::draw (fixes warning)
2698         
2699         * gtk/gtkentry.[ch]: Add drag and drop support.
2700
2701         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
2702         new function gtk_check_drag_threshhold() for checking
2703         to check if (dx,dy) has exceeded the threshhold for starting
2704         a drag and use it everywhere.
2705
2706 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
2707
2708         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
2709         add -I{includedir}/gtk-2.0.
2710
2711         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
2712         gdk/gdk-pixbuf.h: Doc fixups.
2713         
2714         * gtk/gtkobject.h: Remove trailing , from enum
2715
2716 2001-01-17 Alexander Larsson <alexl@redhat.com> 
2717
2718         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
2719         Doh! Mixed up x and y.
2720
2721         * gdk/linux-fb/gdkglobals-fb.c:
2722         Removed gdk_fb_pointer_grab_window_events,
2723         added _gdk_fb_pointer_grab_owner_events and
2724         _gdk_fb_keyboard_grab_owner_events.
2725
2726         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
2727         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
2728         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
2729         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
2730         Send crossing events after ungrab finished.
2731         (gdk_keyboard_grab): Set ..._owner_events
2732         (type_masks): Move out of function.
2733         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
2734         gdk_fb_keyboard_event_window): New functions, return the
2735         window an event should be targeted at. Handles grabs and
2736         event propagation. Can return NULL.
2737         (gdk_event_make): Remove event_mask checking. Now always
2738         returns an event.
2739                 
2740         * gdk/linux-fb/gdkkeyboard-fb.c:
2741         * gdk/linux-fb/gdkproperty-fb.c:
2742         * gdk/linux-fb/gdkselection-fb.c:
2743         Use new event_window/gdk_event_make() behaviour.
2744         
2745         * gdk/linux-fb/gdkmouse-fb.c:
2746         Use new event_window/gdk_event_make() behaviour.
2747         Only send motion events if in the same window.
2748         If grabbed, use cursor from window if sibling of grabbed
2749         window, and cursor from grabbed window otherwise.
2750
2751         * gdk/linux-fb/gdkprivate-fb.h:
2752         Update gdk_fb_window_send_crossing_events, gdk_event_make
2753         and grab varaible declarations. Add gdk_fb_*_event_window().
2754
2755         * gdk/linux-fb/gdkwindow-fb.c:
2756         Use new event_window/gdk_event_make() behaviour.
2757         Keep correct track of focus window.
2758         (gdk_window_set_events): Set all specific button motion masks
2759         if GDK_BUTTON_MOTION_MASK set.
2760
2761         * gtk/gtkdnd.c (gtk_drag_update):
2762         Free info->last_event if gdk_drag_motion returned FALSE.
2763
2764 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2765
2766         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
2767         Eliminate redraws when input-only windows are shown or
2768         hidden. Thanks to jpe@archaeopteryx.com.
2769
2770 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
2771
2772         * docs/faq/gtk-faq.sgml: FAQ update:
2773           - Update to bugzilla
2774           - Add GTK+ and security/SUID/SGID
2775           - Add DnD question
2776
2777 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
2778
2779         * gdk/linux-fb/gdkdnd-fb.c:
2780         Some cleanups.
2781         
2782 2001-01-15  Havoc Pennington  <hp@pobox.com>
2783
2784         * tests/testtreeview.c: add test stuff for CellRendererToggle
2785
2786         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
2787         accessor
2788
2789         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
2790         only toggle on button press (would do release like GtkButton, but
2791         we'd need implicit grab code for treeview cells)
2792
2793 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2794
2795         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
2796
2797         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
2798         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
2799
2800         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
2801         to g_{locale,filename}_{to,from}_utf8 to match current API.
2802
2803         * gtk/makefile.msc.in (gtk_OBJECTS)
2804         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
2805
2806         * gtk/gtk.def: Update.
2807
2808 2001-01-15  Tor Lillqvist  <tml@iki.fi>
2809
2810         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
2811         implementaion that more closely mimics the events that an X server
2812         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
2813         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
2814         with nested preview widgets, for instance, more responsive when
2815         you move the mouse quickly into them.
2816         (find_window_for_pointer_event): Make it actually compile.
2817         (gdk_event_translate): Set send_event to the value of
2818         InSendMessage (). This doesn't really mean the same as X11's
2819         send_event flag, but is close enough, says jpe@archaeopteryx.com
2820
2821 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2822
2823         * gdk/linux-fb/gdkdnd-fb.c:
2824         Implemented drag and drop.
2825         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
2826         when it tries to free and then copy the same event (info->last_event).
2827         I am not sure about why this happens, but will continue looking.
2828
2829 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2830
2831         * gdk/linux-fb/gdkwindow-fb.c:
2832         Use gdk_window_invalidate_rect instead of
2833         gdk_window_invalidate_rect_clear to minimise flashing.
2834         When hiding windows you need to clear the root window though.
2835
2836 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2837
2838         * gdk/linux-fb/gdkdrawable-fb2.c:
2839         For optization, add an full_shapes argument to gdk_fb_clip_region.
2840         If this is false, only the cliprects of the shapes are used.
2841
2842         * gdk/linux-fb/gdkprivate-fb.h:
2843         Export gdk_fb_window_peek_shape.
2844         Add full_shapes to gdk_fb_clip_region.
2845
2846         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2847         When moving a window, don't clear everything under the it, just the
2848         root window. Makes stuff faster and flash less.
2849         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
2850         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
2851         offset of the shape.
2852         
2853
2854 2001-01-12  Havoc Pennington  <hp@redhat.com>
2855
2856         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
2857         current invalid region, fixes redraw bug while scrolling the 
2858         text widget
2859
2860         * gtk/gtktextview.c, gtk/gtktextview.h:
2861         Rearrange the scrolling/validation/etc. code in a major way, 
2862         so it seems to make sense to me. Probably isn't genuinely that
2863         much better, but...
2864
2865         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
2866         notifies
2867
2868         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2869
2870 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
2871
2872         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
2873         Hide mouse pointer while rotation. Show it afterwards.
2874
2875 2001-01-12  Alexander Larsson  <alexl@redhat.com>
2876
2877         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
2878         windows in consideration when generating clip region.
2879
2880         * gdk/linux-fb/gdkfb.h:
2881         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
2882
2883         * gdk/linux-fb/gdkprivate-fb.h:
2884         Add shape to GdkWindowFBDatat.
2885         exported gdk_fb_window_get_abs_shape().
2886         removed gdk_fb_draw_lines declaration.
2887
2888         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
2889         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
2890         send focus changes when there is a grabbed window.
2891         (gdk_window_get_pointer): Handle shaped windows.
2892         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
2893         (gdk_fb_window_peek_shape): Returns the shape for a window,
2894         handles GDK_FB_USE_CHILD_SHAPE.
2895         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
2896         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
2897         (gdk_window_shape_combine_mask): Implement.
2898
2899         * gtk/gtkwindow-decorate.c:
2900         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
2901         setting the shape of a window makes the window transparent.
2902
2903 2001-01-11  Havoc Pennington  <hp@redhat.com>
2904
2905         * gtk/gtktreemodelsimple.h: Oops, broke some macros
2906
2907 2001-01-10  Havoc Pennington  <hp@redhat.com>
2908
2909         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
2910         add this function, bug 40251
2911
2912         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
2913         of type macro   
2914
2915 2001-01-11  Alexander Larsson  <alexl@redhat.com>
2916
2917         * acconfig.h:
2918         Added ENABLE_SHADOW_FB
2919
2920         * configure.in:
2921         Added --disable-shadowfb
2922
2923         * gdk/linux-fb/gdkcursor-fb.c:
2924         Update shadowfb when updating cursor
2925
2926         * gdk/linux-fb/gdkdrawable-fb2.c:
2927         Added wrappers for shadowfb that calls  the normal drawable
2928         methods, but calls gdk_shadow_fb_update(bounding box) when
2929         GdkWindows are drawed to.
2930         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
2931         which also returns the bounding box.
2932
2933         * gdk/linux-fb/gdkfb.h:
2934         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
2935
2936         * gdk/linux-fb/gdkgeometry-fb.c:
2937         Update shadowfb when scrolling window.
2938
2939         * gdk/linux-fb/gdkglobals-fb.c:
2940         Add _gdk_fb_screen_angle.
2941         
2942         * gdk/linux-fb/gdkkeyboard-fb.c:
2943         Test code for screen rotation. Shift-F2 in the xlate driver
2944         rotates the screen.
2945
2946         * gdk/linux-fb/gdkmain-fb.c:
2947         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
2948
2949         * gdk/linux-fb/gdkmouse-fb.c:
2950         Use fb_width/height instead of modeinfo.xres/yres.
2951
2952         * gdk/linux-fb/gdkprivate-fb.h:
2953         Added fb_men, fb_width, fb_height & fb_stride. When using
2954         shadow fb these can differ from the framebuffer stuff.
2955         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
2956         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
2957         _gdk_fb_screen_angle. Removed CM, RP.
2958
2959         * gdk/linux-fb/gdkrender-fb.c:
2960         Added code for shadowfb handling and screen rotation using
2961         shadowfb.
2962
2963         * gdk/linux-fb/gdkwindow-fb.c:
2964         Use fb_mem, fb_stride, fb_width, fb_height.
2965         Added recompute_rowstride to reset the rowstride of all windows.
2966         Added gdk_fb_recompute_all() which recomputes rootwindow size,
2967         window abs positions and window rowstrides. Usefull when the
2968         rotation has changed.
2969
2970 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2971
2972         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2973
2974 2001-01-10  Havoc Pennington  <hp@redhat.com>
2975
2976         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2977         where sibling == iter
2978         (gtk_tree_store_insert_after): handle sibling == iter
2979         (gtk_tree_store_prepend): remove stamp checks
2980         (gtk_tree_store_insert_before): ditto
2981         (gtk_tree_store_append): ditto
2982         (gtk_tree_store_get_path): ditto
2983         (gtk_tree_store_get_value): ditto
2984         (gtk_tree_store_iter_has_child): ditto
2985         (gtk_tree_store_iter_n_children): ditto
2986         (gtk_tree_store_iter_nth_child): ditto
2987         (gtk_tree_store_insert_after): ditto
2988         (gtk_tree_store_is_ancestor): ditto
2989         (gtk_tree_store_iter_depth): ditto
2990         (gtk_tree_store_insert_before): assert that sibling's parent is
2991         the same as the passed-in parent
2992         (gtk_tree_store_insert_after): assert that sibling's parent is
2993         the same as the passed-in parent
2994
2995         
2996         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2997         function to get the first iterator in a model
2998         
2999         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3000         conventionally the "root" in this sense is just NULL afaict.
3001
3002         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3003         where sibling == iter
3004         (gtk_list_store_insert_after): handle case where sibling == iter
3005
3006         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3007         automated tests for ListStore, TreeStore
3008
3009         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3010         (gtk_list_store_insert): update tail pointer, and fix it to work
3011         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3012         (gtk_list_store_append): use tail to be faster
3013         (gtk_list_store_prepend): fix it, update tail pointer
3014         (gtk_list_store_insert_after): fix it, update tail pointer
3015
3016         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3017         the list
3018
3019 2001-01-09  Havoc Pennington  <hp@redhat.com>
3020
3021         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3022         is NULL due to a pending resize
3023
3024         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3025         column width to values less than 1
3026
3027         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3028         width to be between min/max width, and still set the width 
3029         even if autosize is turned on, so the tree view can use this 
3030         function in order to autosize.
3031         (gtk_tree_view_column_init): set initial width to 1 not 0
3032
3033         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3034         setter function to modify column width, so we get notification
3035         (gtk_tree_view_insert_iter_height): ditto
3036         (gtk_tree_view_calc_size): ditto
3037         (gtk_tree_view_check_dirty): ditto
3038
3039         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3040         properties to change all the interesting attributes of the tree
3041         view column.
3042         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3043         (gtk_tree_view_column_get_clickable): add
3044         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3045         attributes; assume a cell renderer with equivalent object
3046         properties has been swapped in. Do g_object_notify().
3047         (gtk_tree_view_column_set_visible): g_object_notify
3048         (gtk_tree_view_column_get_sizing): rename from get_col_type
3049         (gtk_tree_view_column_set_sizing): g_object_notify
3050         (gtk_tree_view_column_set_width): add g_object_notify
3051         (gtk_tree_view_column_set_min_width): ditto
3052         (gtk_tree_view_column_set_max_width): ditto
3053         (gtk_tree_view_column_set_title): ditto
3054         (gtk_tree_view_column_set_clickable): ditto
3055         (gtk_tree_view_column_set_widget): ditto
3056         (gtk_tree_view_column_set_justification): ditto
3057
3058 2001-01-09  Havoc Pennington  <hp@redhat.com>
3059
3060         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3061         there are no rows in the model
3062
3063         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3064         NULL, then return the start of the list
3065
3066         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3067         if we can't get any rows from an empty model 
3068
3069         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3070         extraneous * after function pointer typedef usage
3071
3072         * Makefile.am: don't specify full path to cp and rm
3073
3074         * gtk/gtkcellrenderertextpixbuf.c
3075         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3076         NULL before dereferencing, fixes a segfault that happened from
3077         time to time
3078
3079         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3080         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3081         and reindent the function
3082         (gtk_cell_renderer_pixbuf_get_size): indentation
3083
3084         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3085         we quit it
3086         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3087         (gtk_dialog_set_default_response): New function, to set default
3088         button
3089         (gtk_dialog_set_response_sensitive): New function, to set 
3090         sensitivity of buttons
3091
3092         * gtk/gtkcellrendererpixbuf.c
3093         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3094         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3095
3096         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3097         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3098         also boxed types.
3099         (_gtk_tree_data_list_value_to_node): ditto
3100
3101         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3102         --gtk-debug=tree
3103
3104         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3105
3106         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3107
3108 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3109
3110         * gdk/win32/gdkevents-win32.c: Implement better mouse
3111         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3112         (find_window_for_pointer_event): New function.
3113         (gdk_event_translate): Use it when handling mouse events.
3114
3115 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3116
3117         * configure.in:
3118         Added --with-included-loaders option
3119
3120         * gdk-pixbuf/Makefile.am:
3121         * gdk-pixbuf/gdk-pixbuf-io.c:
3122         Add support for including selected gdk-pixbuf loaders only.
3123
3124         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3125         gtk_window_set_has_frame):
3126         Added inline documentation.
3127
3128         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3129         * docs/reference/gdk/tmpl/windows.sgml:
3130         Added inline documentation.
3131
3132 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3133
3134         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3135         realizing buttons that have already been realized.
3136
3137 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3138
3139         * tests/testtreeview.c (main): Show menu items before adding to
3140         option menu.
3141
3142         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3143         around if we kill them.
3144
3145         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3146         Return if we pass in a NULL model.
3147
3148 2001-01-08  Havoc Pennington  <hp@redhat.com>
3149
3150         * tests/testtreeview.c: hack on this some
3151
3152         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3153         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3154         list
3155         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3156
3157         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3158         functions
3159
3160 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3161
3162         * gtk/gtkwindow-decorate.[hc]:
3163         * gtk/Makefile.am:
3164         New files. Contains an implementation of a minimal WM for
3165         linux-fb.
3166
3167         * gtk/gtkwindow.h:
3168         Add the possibility for GtkWindows to specify a frame. This
3169         is used for the window decoration code, but could concievably
3170         be used for X programs too (xmms style windows).
3171         GtkWindow->frame is the toplevel window if the window is framed.
3172         The signal frame_event gets all events that are targeted to
3173         GtkWindow->frame.
3174         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3175         
3176         * gtk/gtkwindow.c:
3177         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3178         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3179
3180 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3181
3182         * docs/README.linux-fb:
3183         Correct filename ~/.pangoft2_aliases
3184
3185         * gdk/gdkwindow.h:
3186         Added new function gdk_window_get_decorations.
3187
3188         * gdk/linux-fb/gdkfb.h:
3189         Removed _gdk_window_get_decorations declaration.
3190         Renamed _gdk_window_set_child_handler to
3191         gdk_fb_window_set_child_handler.
3192
3193         * gdk/linux-fb/gdkwindow-fb.c:
3194         Renamed _gdk_window_set_child_handler to
3195         gdk_fb_window_set_child_handler.
3196
3197         * gdk/x11/gdkwindow-x11.c:
3198         New function gdk_window_get_mwm_hints().
3199         Implemented gdk_window_get_decorations.
3200
3201         * docs/reference/gdk/tmpl/windows.sgml:
3202         * docs/reference/gdk/gdk-sections.txt:
3203         Added gdk_window_get_decorations docs.
3204         
3205 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3206
3207         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3208         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3209         gdk_fb_window_send_crossing_events):
3210         Possibly send focus events when the mouse moves from one
3211         window to another.
3212
3213 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3214
3215         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3216         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3217         to match current API.
3218
3219         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3220         environment variable is set, don't call g_error when on a
3221         palettized (PseudoColor) display. Some people want to use GTK+ 
3222         in 256-colour mode even though works only partially.
3223
3224         * gdk/gdk.def
3225         * gtk/gtk.def
3226         * gtk/makefile.mingw.in: Update.
3227
3228 2001-01-05  Havoc Pennington  <hp@redhat.com>
3229
3230         * tests/testtreeview.c: hack on this a bit
3231
3232         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3233         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3234
3235         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3236         was spelled incorrectly
3237         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3238
3239         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3240         from gtk_tree_view_set_headers_active   
3241
3242         * gtk/gtktexttag.c:
3243         (gtk_text_tag_get_property): handle PROP_DIRECTION
3244         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3245         properties, bug 40235
3246
3247         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3248         forward_to_line_end
3249
3250 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3251
3252         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3253         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3254         for unicode,locale,filename conversion functions.
3255
3256 2001-01-05  Havoc Pennington  <hp@redhat.com>
3257
3258         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3259         broken if called on the first position in the buffer.
3260
3261         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3262         forward_to_delimiters to be called only if we aren't already at
3263         the delimiters.
3264
3265 2001-01-05  Havoc Pennington  <hp@redhat.com>
3266
3267         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3268
3269 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3270
3271         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3272         colormap in here. Sync from X port.
3273         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3274         Sync from X port.
3275         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3276         This happens now and then, and i don't think it is a bug.
3277         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3278         != endpoint.
3279         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3280         GDK_LINE_SOLID.
3281
3282         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3283         some of the fields filled in at least.
3284
3285         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
3286         miLineArcD is no more, remove it from the function definition.
3287
3288 2001-01-04  Havoc Pennington  <hp@redhat.com>
3289
3290         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
3291         this
3292
3293         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
3294         user_data instead of tree_node
3295
3296         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
3297         TREE_VIEW_COLUMN_SIZE
3298
3299         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
3300         "size" field to "width" finishes bug 40061
3301
3302         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
3303         for bitfields, bug 40268
3304
3305 2001-01-04  Havoc Pennington  <hp@redhat.com>
3306
3307         Rename some stuff:
3308         
3309         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
3310
3311         s/GtkModelSimple/GtkTreeModelSimple/g;
3312         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
3313         s/gtk_model_simple/gtk_tree_model_simple/g;
3314         s/gtkmodelsimple/gtktreemodelsimple/g;
3315
3316         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
3317
3318         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
3319         s/column_set_col_type/column_set_sizing/g;
3320
3321         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
3322         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
3323
3324         s/GtkCellRendererType/GtkCellRendererState/g;
3325         
3326         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
3327         (gtk_cell_renderer_toggle_class_init): change "state" property to
3328         "active", to match GtkToggleButton
3329         (gtk_cell_renderer_toggle_get_active): new function, bug
3330         40269
3331         (gtk_cell_renderer_toggle_set_active): new function
3332         (gtk_cell_renderer_toggle_set_property): route changes to toggle
3333         state through gtk_cell_renderer_set_active
3334
3335 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
3336
3337         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
3338         temporarily until they work again.  Brought up to date with
3339         changes in the model.
3340         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
3341         model.
3342
3343 2001-01-04  Havoc Pennington  <hp@redhat.com>
3344
3345         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
3346         equal to the line length, then position iterator before paragraph 
3347         separators. Fixes crash reported by Mikael Hermansson when
3348         pressing left arrow from the start of a line.   
3349
3350         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
3351         about byte indexes off the end
3352         (iter_set_from_char_offset): add g_error about char offsets
3353         off the end
3354
3355 2001-01-03  Havoc Pennington  <hp@redhat.com>
3356
3357         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
3358
3359         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
3360         of private functions; remove inclusion of private headers.
3361
3362         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
3363         function, so we don't need private functions in gtktextdisplay.c
3364
3365         * gtk/gtktextiterprivate.h: underscore-ification
3366
3367         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
3368         to instead say "only useful to implement widgets"
3369
3370         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
3371         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
3372         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
3373
3374         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
3375         This function was completely broken
3376
3377         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
3378
3379         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
3380
3381         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
3382
3383         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
3384
3385         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
3386
3387         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
3388
3389         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
3390         gtk_paint_layout
3391
3392         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
3393         gtk_paint_layout
3394
3395         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
3396         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
3397         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
3398         which were not implemented.     
3399
3400         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
3401         insert_pixbuf signal. Rename delete_text to delete_range since it
3402         also deletes pixbufs and child anchors. This almost closes bug
3403         40245 (still need to deal with child anchors)
3404
3405         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
3406         insert_pixbuf, change signal names as appropriate, change types of
3407         signals taking marks/tags to have the specific type, not just
3408         G_TYPE_OBJECT
3409         
3410         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
3411         closes bug 40051
3412
3413         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
3414         unnecessary remove_contents() call
3415         (gtk_option_menu_class_init): add a "changed" signal, closes
3416         bug 40039
3417         (gtk_option_menu_update_contents): emit "changed" if the 
3418         active menu item changes
3419
3420         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
3421         cast to GtkObject, reported by Jonas Borgstrom
3422         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
3423         we can't do stuff with side effects in finalize. Instead, spew a
3424         warning if the loader isn't closed.
3425
3426         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
3427         colormap in here, non-X ports probably need to sync to this change
3428
3429         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
3430         assertion that colormap != NULL, you can set the colormap to NULL
3431         if you like.
3432         
3433         * Makefile.am: remove gtk-config-2.0
3434
3435         * configure.in: Use pkg-config to locate GLib. Remove
3436         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
3437         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
3438         Use pkg-config to locate Pango. Output correct Pango libs to
3439         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
3440
3441         * Makefile.am (pkgconfig_DATA): install only target-specific pc
3442         files
3443         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
3444         X11 pc files
3445
3446         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
3447         unref from here
3448
3449 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
3450
3451         * configure.in:
3452         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
3453
3454 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3455
3456         * gtk/gtktextlayout.c
3457         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
3458         variable when moving back onto a single line.
3459
3460 2001-01-01  Havoc Pennington  <hp@redhat.com>
3461
3462         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3463
3464         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3465
3466         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
3467         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
3468
3469 2001-01-01  Havoc Pennington  <hp@redhat.com>
3470
3471         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
3472
3473         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
3474         GtkTextAttributes
3475
3476         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
3477         #40246
3478         (gtk_text_attributes_copy_values): rename from 
3479         gtk_text_attributes_copy
3480         (gtk_text_attributes_copy): a more standard GTK copy function, 
3481         which returns a new object
3482
3483 2001-01-01  Havoc Pennington  <hp@redhat.com>
3484
3485         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
3486         
3487         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
3488         don't fill in tree_view->priv->selection, kind of an unexpected
3489         side effect
3490
3491         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
3492         gtkintl.h
3493         
3494         * gtk/gtkcellrenderer.c: Remove definition of _ and include
3495         gtkintl.h
3496         (gtk_cell_renderer_get_property): remove calls to g_value_init
3497
3498         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
3499         gtkintl.h
3500
3501         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
3502         and include gtkintl.h
3503         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
3504         property names
3505
3506         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
3507         GtkTreeSelection
3508         (_gtk_tree_selection_new_from_with_view): rename, return
3509         GtkTreeSelection
3510         (_gtk_tree_selection_set_tree_view): rename with uscore
3511         (gtk_tree_selection_get_selected): fill in the "model" out param
3512         first, so it gets filled in even if we return at the top of the 
3513         function
3514         (gtk_tree_selection_real_select_all): add a comment and an else{}
3515         to clarify this a bit
3516         (gtk_tree_selection_real_unselect_all): add the same else{}
3517
3518         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
3519         set_tree_view to have underscore prefixes, move them to the
3520         private header, fix return type of new_with_tree_view
3521         (struct _GtkTreeSelection): mark struct
3522         fields private  
3523
3524         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
3525         GtkTreeModelFlags, not a guint
3526         (gtk_tree_path_prev): return gboolean not gint
3527         (gtk_tree_path_up): return gboolean not gint
3528
3529         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
3530         return GtkTreeModelFlags, not a guint
3531
3532         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
3533         that child model is non-null before unrefing it
3534         (g_value_int_compare_func): make this a qsort compare func, not 
3535         a boolean predicate
3536
3537         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
3538         (add -umn to the end), and mark it unimplemented
3539         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
3540         I don't see what it's for - doesn't the model always sort itself?
3541         (gtk_tree_model_sort_set_compare): this had the wrong signature
3542
3543         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
3544         Fix the docs to say that it destructively replaces existing
3545         attributes (previously said that it added attributes).
3546         (gtk_tree_view_column_set_visible): canonicalize bool before
3547         equality testing. Also, check for realization before
3548         hiding/showing the tree_column->window; if this window could exist
3549         before realization, then it's busted and needs fixing, we can't 
3550         create GDK resources pre-realization. Also, remove
3551         superfluous queue_resize(), since set_size() does that for us.
3552         (gtk_tree_view_column_set_col_type): check realization before 
3553         using tree_column->window
3554
3555         * gtk/gtktreedatalist.c: fix filename in copyright notice
3556
3557 2000-12-31  Havoc Pennington  <hp@pobox.com>
3558
3559         * gtk/gtktextview.c: Rearrange all the
3560         scroll-while-dragging-or-selecting code to be different, not
3561         necessarily better. ;-)
3562         (gtk_text_view_scroll_to_mark): Change this
3563         function to take within_margin as a fraction instead of a pixel
3564         value, and to take alignment arguments (indicating where to align 
3565         the mark inside the visible area)
3566         
3567         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
3568         to GtkObject
3569
3570         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
3571         behavior so that offsets past the end of the line are not 
3572         allowed, and an offset equal to the line length moves the iterator
3573         to the next line
3574         (gtk_text_iter_set_line_index): make parallel change
3575         (gtk_text_iter_get_bytes_in_line): add this function
3576         
3577         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
3578         of byte indexes off the end of the line; byte index at the end of
3579         the line now returns FALSE and doesn't fill in the requested
3580         values, byte index past the end of the line is an error.  Also,
3581         don't allow -1 offset anymore, since its meaning is unclear.
3582
3583         This change exposes some bug in visual cursor motion, where we
3584         end up with a huge invalid byte index; needs fixing. Symptom of 
3585         bug is a crash when you hit up arrow.
3586         
3587         (_gtk_text_line_char_locate): match the change to byte_locate
3588
3589         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
3590         from start of line properly. fixes bug reported by Mikael
3591         Hermansson where backspace would delete all text before the
3592         cursor.
3593
3594 2000-12-30  Tor Lillqvist  <tml@iki.fi>
3595
3596         * gdk/win32/gdkwindow-win32.c
3597         (gdk_window_impl_win32_get_visible_region): New function, as in
3598         the X11 backend.
3599         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
3600         instead of duplicating the same code here.
3601
3602         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
3603         GDK_COLORMAP macro.
3604
3605         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
3606         destroy function.
3607         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
3608         access that.
3609
3610         * gtk/gtk.def: Update.
3611
3612         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
3613
3614 2000-12-30  Havoc Pennington  <hp@pobox.com>
3615
3616         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
3617         colormap on input only windows, to avoid special cases all over
3618         the code for these windows.
3619
3620 2000-12-26  Tor Lillqvist  <tml@iki.fi>
3621
3622         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
3623         we are on a palettized display ("PseudoColor" in X11), as the code
3624         for that doesn't work anyway, and never has.
3625
3626 2000-12-22  Alexander Larsson  <alexl@redhat.com>
3627
3628         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
3629         Don't use isprint() for chars > 255.
3630
3631 2000-12-21  Havoc Pennington  <hp@redhat.com>
3632
3633         * tests/testtreeview.c: more work
3634
3635 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3636
3637         * docs/README.linux-fb:
3638         Update the docs to the new pangoft2 way.
3639
3640 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3641
3642         * configure.in:
3643         For linux-fb get the pangoft2 cflags and libs. This needs a recent
3644         pango version.
3645         Remove modules/linux-fb/Makefile.
3646
3647         * gdk/linux-fb/gdkdrawable-fb2.c:
3648         Render glyphs using freetype.
3649
3650         * gdk/linux-fb/gdkfb.h:
3651         Add new fb-specific functions needed for managing windows.
3652
3653         * gdk/linux-fb/gdkmain-fb.c:
3654         Remove gdk_font_init/fini() calls.
3655
3656         * gdk/linux-fb/gdkpango-fb.c:
3657         Remove old implementation. Use pangoft2 instead.
3658
3659         * gdk/linux-fb/gdkprivate-fb.h:
3660         Remove PangoFBFont and related stuff.
3661
3662         * gdk/linux-fb/gdkwindow-fb.c:
3663         Implement drawable->get_visible_region.
3664         Implement support for _gdk_window_set_child_handler () and
3665         _gdk_window_get_decorations().
3666
3667         * modules/Makefile.am:
3668         Remove linux-fb subdir.
3669
3670         * modules/linux-fb/*:
3671         Removed all.
3672         
3673 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
3674
3675         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
3676         calls, as they are no longer needed.
3677
3678         * gtk/gtktreemodelsort.c: Fix up the comparison code.
3679         
3680         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
3681         figure out how to emit a signal on an interface.
3682
3683 2000-12-20  Havoc Pennington  <hp@redhat.com>
3684
3685         * tests: new directory to contain tests, gtk/test* should move
3686         here sometime (with appropriate on-cvs-server hackery)
3687
3688         * tests/testtreeview.c, tests/Makefile.am: a test
3689         
3690         * configure.in (AC_OUTPUT): add tests/Makefile
3691
3692         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
3693         and "invisible_set" which were missing
3694
3695         * gtk/gtkrbtree.h: some cheesy indentation fix
3696         
3697 2000-12-20  Alexander Larsson  <alexl@redhat.com>
3698
3699         * gtk/gtkinvisible.c (gtk_invisible_realize):
3700         Attach the style to the window so that the style it is not
3701         leaked when unrealizing the window.
3702
3703 2000-12-18  Havoc Pennington  <hp@redhat.com>
3704
3705         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
3706         begin/end user action where appropriate
3707         (gtk_text_view_commit_handler): add begin/end user action
3708
3709         * gtk/gtktextbuffer.c: add begin/end user action signals, and
3710         bracket interactive operations with begin/end user action pair.
3711         
3712         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
3713         "interactive" arg from insert_text and delete_text signals.
3714         Add begin_user_action, end_user_action signals
3715         (gtk_text_buffer_begin_user_action): 
3716         (gtk_text_buffer_end_user_action): New functions to delimit 
3717         a user-visible action
3718
3719         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
3720         signals.
3721         
3722 2000-12-18  Havoc Pennington  <hp@redhat.com>
3723
3724         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
3725         was pretty non-working.
3726
3727         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
3728         by passing the length to g_utf8_validate().
3729
3730 2000-12-16  Havoc Pennington  <hp@pobox.com>
3731
3732         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
3733         Port to GObject, can go back in gdk-pixbuf after setting up 
3734         a gdk-pixbuf-marshal.h header over there.
3735
3736         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
3737         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
3738         args
3739         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
3740         set
3741         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
3742         here, do it when we create the buttons later
3743         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
3744         (gtk_tree_view_map): paranoia checks that column->button is shown 
3745         and unmapped
3746         (gtk_tree_view_size_request): only request visible children.
3747         Move header size calculation in here, for cleanliness, and 
3748         to maintain invariants for child widgets if we eventually 
3749         let users set different children inside the buttons
3750         (gtk_tree_view_map_buttons): factor out code to map buttons,
3751         since it was being called several times
3752         (gtk_tree_view_size_allocate_buttons): move_resize the drag
3753         windows instead of just moving them; their height may change 
3754         if we allow random widgets in there, or the theme changes.
3755         (gtk_tree_view_size_allocate): move button size allocation 
3756         above emitting the scroll signals, to ensure a sane state when we
3757         hit user code
3758         (gtk_tree_view_button_release): remove queue_resize after
3759         tree_view_set_size(), set_size() will handle any resize queuing
3760         that's needed
3761         (gtk_tree_view_focus_in): just queue a draw, don't fool with
3762         draw_focus goo
3763         (gtk_tree_view_focus): use gtk_get_current_event() and
3764         gdk_event_get_state()
3765         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
3766         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
3767         semicolon
3768         (gtk_tree_view_create_button): show the button here
3769         (gtk_tree_view_button_clicked): actually emit the clicked signal
3770         on the column
3771         (_gtk_tree_view_set_size): return right away if the size is
3772         unchanged, as a cheesy optimization
3773         (gtk_tree_view_setup_model): rename set_model_realized to 
3774         setup_model to match the flag that indicates whether we've 
3775         called it
3776         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
3777         exist, because set_scroll_adjustment does that and it shouldn't
3778         matter what order you call these in
3779         (gtk_tree_view_get_vadjustment): ditto
3780         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
3781         for paranoia
3782         (gtk_tree_view_set_headers_visible): call
3783         gtk_tree_view_map_buttons() instead of using cut-and-paste code
3784         (gtk_tree_view_append_column): clarify whether the return value
3785         is the count of columns before or after, and do the increment 
3786         separately from the return statement so you can tell from the code.
3787         (gtk_tree_view_remove_column): ditto
3788         (gtk_tree_view_insert_column): ditto
3789         (gtk_tree_view_get_column): remove g_return_if_fail for columns
3790         outside the existing range, the docs say that outside-range
3791         columns are allowed, so we handle them as documented. (Presumably
3792         this allows a nice loop with column != NULL as test.)
3793         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
3794         mean (left/right/center etc.).
3795         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
3796         (gtk_tree_view_expand_row): add docs
3797         (gtk_tree_view_collapse_row): add docs
3798
3799         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
3800         function to emit the clicked signal on a column
3801         
3802         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
3803         state of an event
3804         (gdk_event_get_time): don't treat GDK_SCROLL 
3805         as a button event, remove default case from switch so gcc 
3806         will whine if we don't explicitly handle all event types
3807
3808         * gtk/gtktreeselection.h: added some FIXME 
3809         
3810         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
3811         "columns" to "n_columns" and "column" to "columns" for clarity
3812
3813 2000-12-16  Havoc Pennington  <hp@pobox.com>
3814         
3815         * gtk/gtktextiter.c: General cleanup of the log attr iteration
3816         stuff. This should make e.g. the delete key work again in the
3817         text widget...
3818         (gtk_text_iter_forward_cursor_positions): handle negative count
3819         (gtk_text_iter_backward_cursor_positions): handle negative count
3820         (gtk_text_iter_forward_word_ends): handle negative count
3821         (gtk_text_iter_backward_word_starts): handle negative count
3822
3823         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
3824         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
3825         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
3826         GObject. No doubt will cause breakage.
3827
3828         * demos/gtk-demo/textview.c: remove hacks around
3829         non-GObject-ification of the text objects
3830
3831         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
3832         the text tag
3833         
3834 2000-12-14  Havoc Pennington  <hp@pobox.com>
3835
3836         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
3837         that we have Xrender
3838
3839 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
3840
3841         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
3842         Add two virtualized functions gdk_drawable_get_clip_region - to
3843         get the clip region when drawing.
3844         
3845         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
3846         use invalidate_region.
3847
3848         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
3849         region.
3850
3851         * acconfig.h configure.in: Check for Xft. For now, assume
3852         that if Xft is found, Pango was compiled with Xft support
3853         as well.
3854
3855         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
3856         gdk_colormap_query_color().
3857         
3858         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
3859         with Xft if appropriate.
3860
3861         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
3862         a pangoxft context if we have XFT and the environment
3863         variable GD_USE_XFT is set.
3864         
3865         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
3866         and also possibly an XftDraw structure.
3867
3868         * gtk/gtkfontsel.c: Handle the case where the font from the
3869         style doesn't match any of the fonts a bit better.
3870         
3871         * gtk/testgtk.c: Add tabs between directional segments for
3872         hebrew/arabic test. (Not really necessary, just a little
3873         prettier.)
3874
3875 2000-12-14  Havoc Pennington  <hp@redhat.com>
3876
3877         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
3878         reading a file
3879
3880 2000-12-14  Havoc Pennington  <hp@redhat.com>
3881
3882         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
3883         unused call to get_last_line()
3884
3885         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
3886         here until boxed is working (and maybe after that - we should
3887         really not gratuitously break old code)
3888
3889         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
3890         specific types for font_desc and tabs args, move them to
3891         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
3892         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
3893
3894         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
3895         use GTK_TYPE_POINTER for signal signatures as a hack-around
3896
3897         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
3898         PangoTabArray
3899
3900         * gtk/gtktextlayout.c (line_display_iter_to_index): 
3901         make static
3902         (line_display_index_to_iter): make static
3903
3904         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3905         to marshal a string not a boxed
3906
3907         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
3908
3909         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
3910         since the UTF-8 isn't validated yet
3911
3912         * gtk/gtktextsegment.c (char_segment_check_func): don't require
3913         lines to end in '\n'
3914         
3915         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
3916         forward_to_delimiters, and grapheme boundaries
3917         (gtk_text_view_delete_from_cursor): properly handle non-newline
3918         delimiters, and grapheme boundaries
3919
3920         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
3921         to gtk_text_iter_forward_to_delimiters, and make it work properly
3922         if empty lines end with a character other than '\n'
3923
3924         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
3925         position
3926
3927 2000-12-15  Tor Lillqvist  <tml@iki.fi>
3928
3929         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
3930
3931         * gtk/gtk.def
3932         * gdk/gdk.def: Update.
3933
3934         * gdk/win32/gdkmain-win32.c
3935         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
3936         gdkmain-win32.c here.
3937
3938         * gdk/win32/makefile.mingw.in (all): No need to make
3939         gdk-win32res.o here, the makefile one step up will call us to make
3940         it.
3941
3942         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
3943         gdkkeys-win32.
3944
3945         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
3946
3947         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
3948         call to g_source_add().
3949
3950         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
3951         leak. Thanks to Andreas Kemnade.
3952
3953 2000-12-13  Havoc Pennington  <hp@pobox.com>
3954
3955         * gtk/gtktextbtree.h: Remove double _ in front of some functions
3956
3957         * gtk/gtktext*.[hc]: update accordingly
3958         
3959 2000-12-13  Havoc Pennington  <hp@pobox.com>
3960
3961         * gtk/gtktextbtree.h: Put _ in front of every function in this 
3962         header file
3963
3964         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
3965
3966 2000-12-13  Alex Larsson  <alexl@redhat.com>
3967
3968         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
3969         Add support for ps2 intellimouse.
3970
3971         * gdkkeyboard-fb.c:
3972         Move shift-F1 repaint handling to xlate handler only.
3973         
3974         * docs/README.linux-fb:
3975         Add imps2 to docs.
3976         Document the new refresh keys.
3977         
3978 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3979
3980         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3981
3982         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3983         ::position and ::padding.
3984
3985         * gtk/gtkcontainer.c: make ::border_width an INT property.
3986
3987         * gtk/gtkpacker.c: make ::position an INT property.
3988
3989         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3990         guard against NULL h/v scrollbars, since this is used at construction
3991         time.
3992
3993         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3994         internal gtk_clist_constructor().
3995
3996         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3997         gtk_ctree_constructor().
3998
3999         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4000         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4001
4002         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4003         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4004
4005         * gtk/gtkwidget.[hc]:
4006         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4007         and gtk_widget_get().
4008         (gtk_widget_new): use g_object_new_valist().
4009         (gtk_widget_set): use g_object_set_valist().
4010
4011         * gtk/gtkobject.[hc]:
4012         removed gtk_object_arg_get_info(), gtk_object_getv(),
4013         gtk_object_query_args(), gtk_object_newv(),
4014         gtk_object_class_add_signals(),
4015         gtk_object_class_user_signal_new(),
4016         gtk_object_class_user_signal_newv(),
4017         gtk_object_arg_set(), gtk_object_arg_get(),
4018         gtk_object_args_collect(),
4019         gtk_object_default_construct(),
4020         gtk_object_constructed(),
4021         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4022         removed nsignals, signals and n_args members from GtkObjectClass.
4023         (gtk_object_new): use g_object_new_valist().
4024         (gtk_object_set): use g_object_set_valist().
4025         (gtk_object_get): use g_object_get_valist().
4026         
4027         * gtk/gtkcompat.h: define gtk_object_default_construct().
4028         
4029         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4030         g_object_new().
4031
4032         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4033         fucntions, cleaned up method assignments (make sure your structures
4034         are setup properly before calling out). removed all GTK_CONSTRUCTED
4035         hacks ;)
4036
4037 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4038
4039         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4040         off-by-one error in checks. (Dave Lambert)
4041
4042 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4043
4044         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4045         Don't free gdk_fb_keyboard twice.
4046
4047 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4048
4049         * gtk/testgtk.c:
4050         (create_tooltips): 
4051         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4052         use GObject swapped_signal:: properties instead.
4053
4054         * gtk/gtkcellrenderertoggle.c: 
4055         * gtk/gtkcellrenderertextpixbuf.c: 
4056         * gtk/gtkcellrenderertext.c: 
4057         * gtk/gtkcellrendererpixbuf.c: 
4058         * gtk/gtkcellrenderer.c:
4059         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4060         missing warnings for invalid property ids, install properties
4061         with g_object_class_install_property() now.
4062         
4063         * gtk/gtksignal.c:
4064         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4065         
4066 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4067         
4068         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4069         to determine if a window is the focus widget within
4070         its toplevel.
4071
4072         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4073         to be boolean.
4074
4075         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4076         of the case where the container CAN_FOCUS to here instead
4077         of having it in each individual move-the-focus place.
4078
4079         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4080         focusing to be geometric in a much more obvious sense. Arrowing
4081         around is still non-intuitive because it isn't perfect and
4082         because entries, etc, grab the arrow keys, but it at least
4083         usually will do what you expect now.
4084         
4085         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4086         file.
4087
4088         * gtk/gtknotebook.c: Change tabs to be a single item in
4089         the focus chain. Make movement of focus on tabs with arrow
4090         keys wrap around.
4091         
4092         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4093         CHECK_FIND_CHILD macro to give informative error messages
4094         instead of silent returns.
4095
4096         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4097         flag since we handle GdkReturn on the tabs.
4098
4099         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4100         windows rather than sending expose events directly.
4101
4102         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4103         definition for GtkNotebookPage into .c file, since it is private.
4104
4105         * gtk/testgtk.c (create_notebook): Add option for 
4106         testing borderless notebook.
4107
4108         * gtk/testgtk.c (page_switch): Removed egregious poking
4109         around in GTK+ internals.
4110
4111         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4112
4113         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4114         properly through gtk_clist_focus. Make the title headers a
4115         single item in the tab-focus chain, and make left-right wrap
4116         around.
4117
4118         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4119         focus method so that wrapping around works properly.
4120
4121         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4122         that is handled for the widget now. 
4123
4124 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4125
4126         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4127         widgets as TOPLEVEL.
4128
4129         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4130         TOPLEVEL widgets are containers.
4131
4132         * gtk/gtkinvisible.h: Remove useless include.
4133
4134 2000-12-11  Havoc Pennington  <hp@redhat.com>
4135
4136         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4137         Handle chopping off \r\n and 0x2029 in addition to \n before
4138         passing to PangoLayout
4139
4140         * gtk/gtkimcontextsimple.c
4141         (gtk_im_context_simple_get_preedit_string): 
4142         return an empty string if no match is pending
4143
4144         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4145         assertion that the returned preedit string was sane
4146
4147         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4148         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4149         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4150
4151 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4152
4153         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4154         Fix up finalizer to chain to its parent.
4155
4156 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4157
4158         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4159         Clearified the difference between the keyboard types. Wrote a note
4160         about the magic sysrq key to get out of raw mode.
4161
4162 2000-12-09  James Henstridge  <james@daa.com.au>
4163
4164         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4165         member to hold masks for detecting the start of a protocol packet.
4166         (mouse_devs): add packet start masks for ps2 and ms device types.
4167         Left the mask for fidmour blank, as I have no idea what it should
4168         be.
4169         (handle_mouse_io): skip bytes until we get to the start of a
4170         packet.  My Logitech mouse seems to be passing an extra NULL pad
4171         byte, and GPM does a similar thing here.
4172         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4173         this is the ms mouse driver.
4174         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4175         completely broken except for button1.  It was checking the wrong
4176         bit in the packet for the status of the right mouse button, and
4177         wrongly assuming right == button2 rather than 3.  I fixed that and
4178         also added support for middle button (button2).
4179
4180 2000-12-08  Havoc Pennington  <hp@redhat.com>
4181
4182         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4183         that cause a segfault on text insertion
4184
4185         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4186         warning
4187
4188         * gtk/gtktextiter.c (test_log_attrs): use
4189         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4190
4191         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4192         Get log attrs for a line, using a cache stored on the buffer
4193         
4194         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4195         reported by Jeff Franks
4196
4197 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4198
4199         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4200         /dev/ttyS0 -> /dev/mouse
4201
4202 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4203
4204         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4205         Added dummy gdk_fontset_load.
4206
4207 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4208
4209         * docs/README.linux-fb:
4210         * docs/Makefile.am:
4211         Initial GtkFB docs.
4212         
4213         * gdk/linux-fb/Makefile.am:
4214         Define GDK_DATA_PREFIX.
4215
4216         * gdk/linux-fb/gdkmain-fb.c:
4217         Fix typo.
4218         Change default display to /dev/fb0.
4219
4220         * gdk/linux-fb/gdkpango-fb.c:
4221         Add $(prefix)/share/fonts/ to font path.
4222         
4223 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4224
4225         * gdk/linux-fb/gdkkeyboard-fb.c:
4226         New file containing the abstracted keyboard driver. Most code
4227         taken from gdkinput-ps2.c
4228
4229         * gdk/linux-fb/gdkinput-ps2.c:
4230         Removed file.
4231         
4232         * gdk/linux-fb/Makefile.am:
4233         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4234
4235         * gdk/linux-fb/gdkcolor-fb.c:
4236         display->fb was renamed to display->fb_fd.
4237
4238         * gdk/linux-fb/gdkcursor-fb.c:
4239         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4240
4241         * gdk/linux-fb/gdkinput.c:
4242         Moved gdk_input_init here from gdkinput-ps2.c
4243
4244         * gdk/linux-fb/gdkmain-fb.c:
4245         display->fb was renamed to display->fb_fd.
4246         Now the tty and the console is opened here instead
4247         of in the keyboard driver. Also check GDK_VT to see what
4248         tty to open.
4249         Move gdk_beep () here from gdkinput-ps2.c
4250         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4251
4252         * gdk/linux-fb/gdkmouse-fb.c:
4253         Add header.
4254         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4255         Return correct keyboard modifiers.
4256         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4257
4258         * gdk/linux-fb/gdkprivate-fb.h:
4259         Add tty and vt info to display.
4260         Add orignal modeinfo storage to display
4261         Update global functions
4262
4263         * gdk/linux-fb/gdkwindow-fb.c:
4264         Added gdk_fb_window_find_focus().
4265         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4266
4267 2000-12-07  Havoc Pennington  <hp@pobox.com>
4268
4269         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4270         function, noticed by Alex
4271
4272 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4273
4274         * configure.in: Detect freetype properly
4275
4276         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4277         above.
4278
4279 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4280
4281         * gdk/linux-fb/Makefile.am:
4282         Add gdkmouse-fb.c
4283         
4284         * gdk/linux-fb/gdkmouse-fb.c:
4285         New file. Abstracted the mouse drivers a bit.
4286
4287         * gdk/linux-fb/gdkcursor-fb.c:
4288         The cursor hide/show functions was moved here from gdkinput-ps2.c.
4289
4290         * gdk/linux-fb/gdkinput-ps2.c:
4291         Removed old mouse handling code. Moved cursor handling code
4292         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
4293         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
4294         gdk_mouse_get_info.
4295
4296         * gdk/linux-fb/gdkmain-fb.c:
4297         Pass NULL pointers for x,y in gdk_mouse_get_info call.
4298
4299         * gdk/linux-fb/gdkprivate-fb.h:
4300         Removed public gdk_fb_find_common_ancestor, added and renamed
4301         functions for the new mouse handling code.
4302
4303         * gdk/linux-fb/gdkwindow-fb.c:
4304         Moved gdk_fb_window_send_crossing_events here. added global
4305         variable gdk_fb_window_containing_pointer. made
4306         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
4307         renamed to gdk_mouse_get_info.
4308
4309 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4310
4311         * gdk/linux-fb/gdkevents-fb.c:
4312         Update to match latest gmain/gsource changes.
4313
4314         * gdk/linux-fb/gdkinput-ps2.c:
4315         Bogus gdk_keymap_get_entries_for_keycode implementation so that
4316         it links. Will be implemented later.
4317
4318 2000-12-03  Havoc Pennington  <hp@pobox.com>
4319
4320         * gdk/Makefile.am: add gdkkeys.[hc]
4321
4322         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
4323         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
4324
4325         * acconfig.h, configure.in: add checks and command line options
4326         for XKB
4327
4328         * gdk/x11/gdkkeys-x11.c: Implement the above functions
4329         
4330         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
4331         and group in the key event
4332
4333         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
4334         field with the low-level hardware key code, and a group
4335         field with the keyboard group
4336
4337         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
4338         and declare a couple globals used for keymap handling
4339         
4340         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
4341         hold down Shift-Control and type a hex number to get a Unicode 
4342         character corresponding to the hex number
4343         (gtk_im_context_simple_get_preedit_string): Fix cursor position
4344         (return bytes not chars)
4345
4346 2000-12-05  Elliot Lee  <sopwith@redhat.com>
4347
4348         * gdk/gdkcolor.h: Make GdkColor specify element sizes
4349         to avoid waste on 64-bit platforms.
4350
4351 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
4352
4353         * INSTALL: Fix link to PNG home, remove reference
4354         to fribidi.
4355
4356         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
4357         
4358         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
4359         tested.)
4360
4361         * gtk/gtkcheckmenuitem.c: Permanently turn on
4362         always_show_toggle.
4363
4364         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
4365         be NULL. (Vladimir Klebanov, #26545)
4366
4367         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
4368         some signed/unsigned comparison problems. (#6510,
4369         David Kaelbling)
4370
4371         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
4372         return type to boolean (Oskar Liljeblad, #18648)
4373
4374 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4375
4376         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
4377         Remove bogus colormap setting.
4378
4379 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4380
4381         * gdk/linux-fb/gdkcolor-fb.c:
4382         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
4383
4384         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
4385         Must set colormap.
4386         
4387 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
4388
4389         * docs/tutorial/gtk-tut.sgml: DND updates
4390
4391 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
4392
4393         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4394         Remove old debug g_warning().
4395         (gdk_fb_draw_drawable): The src argument can be either a wrapper
4396         or an implementation, just pass the implementation to draw_drawable_2.
4397         
4398         * gdk/linux-fb/gdkprivate-fb.h:
4399         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
4400
4401         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4402         clear and invalidate area when window is destroyed.
4403         (send_map_events): Remove old commented out code.
4404
4405 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4406
4407         * gdk/linux-fb/gdkpango-fb.c:
4408         Use italic instead of oblique in font aliases.
4409         
4410         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
4411         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
4412         other unsupported functions.
4413
4414 2000-12-04  Havoc Pennington  <hp@redhat.com>
4415
4416         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
4417
4418         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
4419
4420         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
4421
4422         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
4423         hack to avoid infinite loops (synthetic expose event) - 
4424         Owen has more appropriate fixes in a branch he'll check in later.
4425
4426         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
4427         separator, CR, and CRLF as line ends
4428
4429         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
4430         into lines using pango_find_paragraph_boundary(); other bits of
4431         the widget are still going to be broken if the boundary isn't '\n'
4432         though
4433
4434 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4435
4436         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
4437         multiply.
4438
4439         * gdk/linux-fb/gdkpango-fb.c:
4440         Copied some 26.6 scaling macros from pango to clean up the rounding.
4441         (pango_fb_font_get_glyph_info): Correct sign on x value.
4442
4443         * gdk/linux-fb/gdkprivate-fb.h:
4444         Removed unreferenced external functions.
4445
4446         * modules/linux-fb/Makefile.am: Use ` instead of '.
4447
4448         * modules/linux-fb/basic.c:
4449         Remove dead code. In particular the dummy lang engine which broke all
4450         pango layouts in GtkFB. Don't include tables-big.i anymore.
4451
4452         * modules/linux-fb/tables-big.i:
4453         Upgrade to latest version from pango. Left for reference, basic_ranges
4454         moved to basic.c.
4455         
4456 2000-12-04  Havoc Pennington  <hp@redhat.com>
4457
4458         Fix bugs Alex found:
4459         
4460         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
4461         to "draw"
4462
4463         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
4464
4465         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
4466
4467         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
4468         implementation in here, apparently the expose() implementation was
4469         dead code.
4470
4471 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4472
4473         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4474         Return positive descent.
4475
4476 2000-12-02  Havoc Pennington  <hp@pobox.com>
4477
4478         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
4479         method and signal
4480         
4481         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
4482         calls gdk_window_process_updates() to push the exposes through
4483         (gtk_widget_class_init): No more draw signal, no
4484         gtk_widget_real_draw()  
4485         
4486         * gtk/gtkbin.c (gtk_bin_draw): remove
4487
4488         * gtk/gtkbox.c (gtk_box_draw): remove
4489
4490         * gtk/gtkbutton.c (gtk_button_draw): remove
4491
4492         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
4493
4494         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
4495
4496         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
4497
4498         * gtk/gtkclist.c (gtk_clist_draw): remove
4499
4500         * gtk/gtkentry.c (gtk_entry_draw): remove
4501
4502         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
4503
4504         * gtk/gtkfixed.c (gtk_fixed_draw): remove
4505
4506         * gtk/gtkframe.c (gtk_frame_draw): remove
4507
4508         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
4509
4510         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
4511
4512         * gtk/gtklayout.c (gtk_layout_draw): remove
4513
4514         * gtk/gtklist.c (gtk_list_draw): remove
4515
4516         * gtk/gtklistitem.c (gtk_list_item_draw): remove
4517
4518         * gtk/gtkmenu.c (gtk_menu_draw): remove
4519
4520         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
4521
4522         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
4523
4524         * gtk/gtknotebook.c (gtk_notebook_draw): remove
4525
4526         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
4527
4528         * gtk/gtkpacker.c (gtk_packer_draw): remove
4529
4530         * gtk/gtkrange.c (gtk_range_draw): remove
4531
4532         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
4533
4534         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
4535
4536         * gtk/gtktable.c (gtk_table_draw): remove
4537
4538         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
4539
4540         * gtk/gtktext.c (gtk_text_draw): remove
4541
4542         * gtk/gtktextview.c (gtk_text_view_draw): remove
4543
4544         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
4545
4546         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
4547
4548         * gtk/gtktree.c (gtk_tree_draw): remove
4549
4550         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
4551
4552         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
4553
4554         * gtk/gtkviewport.c (gtk_viewport_draw): remove
4555
4556         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
4557
4558         * gtk/gtkvscale.c (gtk_vscale_draw): remove
4559
4560         * gtk/gtkwindow.c (gtk_window_draw): remove
4561
4562 2000-20-01  Anders Carlsson  <andersca@gnu.org>
4563
4564         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
4565         a GtkToggleButton is both insensitive and active, it was being
4566         drawn by the GtkButton draw handler which doesn't check the
4567         state. Now it's calling gtk_toggle_button_paint instead.
4568         
4569 2000-12-01  Havoc Pennington  <hp@redhat.com>
4570
4571         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
4572         dangling pointers to the appearance attributes from the 
4573         line display
4574
4575         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
4576         width/height to mean "full width/height of drawable"
4577
4578         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
4579         click to select word/line
4580         
4581         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
4582         when getting log attrs. Get a slice, so that pixmaps and stuff
4583         are properly handled.
4584
4585         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
4586         paste into the selection (replaces selection now, previously
4587         crashed or added to selection). Reveals longstanding btree bug -
4588         select multiple lines, middle-click on the selection, boom. This
4589         isn't related to my changes though.
4590
4591         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
4592         PangoLogAttrs changes
4593         (gtk_entry_move_backward_word): ditto
4594
4595         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
4596         functions return bool whether the iter moved onto a
4597         dereferenceable position.
4598  
4599         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
4600         functions for motion in terms of display lines.
4601
4602         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
4603         get the buffer a mark is inside
4604         
4605 2000-12-01  Alexander Larsson  <alexl@redhat.com>
4606
4607         * gdk/linux-fb/Makefile.am:
4608         * modules/linux-fb/Makefile.am:
4609         Freetype 2 final uses freetype-config
4610
4611         * gdk/linux-fb/gdkpango-fb.c:
4612         Upgrade to use Freetype 2 final.
4613         More flexible support for font aliases, this also fixes a bug with
4614         GtkFontSelector, as the aliases must be visible in the font/family list,
4615         or GtkFontSelector reads uninitialized memory.
4616
4617 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
4618
4619         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
4620         XGetIMValues to properly terminate variable argument list, and do
4621         NULL return check for ic_values and xim_styles.
4622
4623         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
4624         Restore preedit state after XmbResetIC().
4625         
4626         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
4627         XvaCreateNestedList() should take XvaNestedList, but not
4628         XvaNestedList*.
4629
4630         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
4631         preedit_draw_callback, preedit_caret_callback): Match
4632         "preedit-changed" signal name to "preedit_changed" to be
4633         consistent to the spec.
4634
4635         * gtk/gtkimcontextsimple.c (check_table):
4636         Match "preedit-changed" to "preedit_changed" to be consistent
4637         to the spec.
4638
4639 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
4640
4641         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
4642         gc->clip_region == NULL>
4643
4644 2000-11-30  Tor Lillqvist  <tml@iki.fi>
4645
4646         Changes by Hans Breuer:
4647         
4648         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
4649         Dont't use negative width and height as max_hints. This fixes
4650         Owen's recent testgtk changes for win32.
4651
4652         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
4653         gdk_win32_hdc_release): These are exported and may be called with
4654         other drawable types than our GdkDrawableImplWin32 (?).
4655
4656         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
4657         so always #define USE_BACKING_STORE.
4658
4659         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
4660         of printf for debugging output.
4661
4662         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
4663         
4664         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
4665
4666         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
4667         declaration.
4668
4669         * gtk/gtktexttypes.h: Ditto.
4670
4671         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
4672         (GDK_VoidSymbol) also if in case of arg check failure.
4673
4674         * gtk/gtkimcontextsimple.c
4675         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
4676         position to the pointer, but to the variable it points to.
4677
4678         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
4679
4680         * gtk/gtk.def: Updates.
4681
4682 2000-11-29  Elliot Lee  <sopwith@redhat.com>
4683
4684         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
4685         GTK_TYPE_TREE_MODEL.
4686
4687 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4688
4689         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
4690         Set the size of the font from the description.
4691         (gdk_text_width): Gross hack that calculates the width
4692         of text by text_length * size/2. This is necessary because
4693         GtkLabel does some ugly gtk_string_width call to calculate
4694         an good size.
4695         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
4696
4697 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
4698
4699         * docs/tutorial/gtk-tut.sgml: DND updates
4700
4701 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4702
4703         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4704         If you pass width or height == 0 to gdk_window_clear_area they
4705         should be calculated from the window size.
4706
4707 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4708
4709         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
4710         a grab, but no grab-cursor, use the cursor from the grabbed
4711         window. (gdk_fb_window_send_crossing_events): Send normal
4712         enter/leave notifications if grab and owner_events == TRUE.
4713
4714 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4715
4716         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4717         Do implicit button grabs, even if the window doesn't
4718         want the event.
4719         (gdk_fb_window_send_crossing_events): If there is a
4720         grab, only the grabbed window gets normal enter/leave
4721         notifications. On ungrab go from grabbed window to current.
4722         Don't send any notification to b when propagating from c -> b.
4723         If setting a grab on window, don't set prev_window.
4724         (handle_mouse_input): Send enter/leave events to the window the
4725         mouse is over, not the grabbed one.
4726         
4727 2000-11-28  Elliot Lee  <sopwith@redhat.com>
4728
4729         * gdk/gdkregion-generic.c: Zap warning.
4730         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
4731         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
4732
4733 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
4734
4735         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4736         The cursor should be hidden if it is part of either the
4737         source or destination region. Not only if it is in both.
4738         (gdk_window_set_transient_for): Silence warnings.
4739
4740 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4741
4742         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
4743         The default mode in X is Pie Arcs, therefore that is
4744         what Gtk+ uses.
4745
4746 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4747
4748         * gdk/linux-fb/gdkinput-ps2.c:
4749         Implement correct EnterNotify/LeaveNotify:
4750         (gdk_fb_window_send_crossing_events): New function that sends
4751         all GdkCrossingEvents from the last mouse-window to the specified
4752         destination.
4753         (gdk_fb_window_visibility_crossing): Removed function.
4754         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
4755         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
4756         instead of gdk_window_get_pointer() for better readability.
4757
4758         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
4759         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
4760
4761         * gdk/linux-fb/gdkprivate-fb.h:
4762         removed gdk_fb_window_visibility_crossing, added
4763         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
4764
4765         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
4766         New function that finds the least common ancestor of two windows.
4767         (gdk_window_show, gdk_window_hide):
4768         Use gdk_fb_window_send_crossing_events.
4769         (gdk_fb_window_move_resize): Send configure events to toplevel
4770         windows. Use gdk_fb_window_send_crossing_events.
4771
4772 2000-11-27  Havoc Pennington  <hp@redhat.com>
4773
4774         * gtk/gtkprivate.h (enum): Remove a trailing comma
4775
4776 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
4777
4778         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
4779         the "changed" callback of the adjustment.  We need to redraw the
4780         spin button's arrows when the adjustment's range changes.
4781         (adjustment_changed_cb): Draw the arrows.
4782         (gtk_spin_button_value_changed): Draw the arrows.
4783
4784 2000-11-23  Alexander Larsson  <alexl@redhat.com>
4785
4786         * gdk/linux-fb/gdkselection-fb.c:
4787         Initial selection implementation.
4788
4789         * gtk/gtkselection.c:
4790         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
4791         requestor in gtk_selection_request.
4792         
4793         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
4794         Added gdk_selection_property atom.
4795
4796         * gdk/linux-fb/gdkprivate-fb.h:
4797         Export _gdk_selection_window_destroyed.
4798         Removed mask_off_x/y from GdkCursorPrivateFB.
4799         Removed hbearing, added top, left to PangoFBGlyphInfo.
4800
4801         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4802         Call _gdk_selection_window_destroyed
4803         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
4804         the root window has been created.
4805         (static_dx_hack, static_dy_hack, compare_draw_rects,
4806         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
4807         in region. They are already sorted. Instead just traverse them in
4808         reverse if draw_direction < 0.
4809         
4810         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4811         Double-clicks must be sent after the normal button_press.
4812         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
4813         
4814         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
4815         Pass _gdk_fb_screen_gc instead of NULL.
4816
4817         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4818         Initialize gdk_selection_property.
4819         (gdk_event_make): Remove unused code.
4820
4821         * gdk/linux-fb/gdkcursor-fb.c:
4822         Make the pixmap for the cursor the same size as the mask. Also remove
4823         the mask_off_x/y fields in GdkCursorPrivateFB and combine
4824         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
4825         Now the whole cursor is visible.
4826
4827         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4828         Fix bug where xdest+height instead of ydest+height was used
4829         to calculate if the source and dest overlapped. This fixes the
4830         redraw bug when the main window in testgtk was scrolled when
4831         partially covered by a tall window.
4832         Copy rectangles in region in order depending on draw_direction.
4833         Also moved the draw_direction flipping of start_y and end_y into
4834         the gc functions, as this might not be what all of them want.
4835         (gdk_fb_draw_lines): Support dashed lines.
4836         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
4837         so that the text is positioned correctly (was 1 pixel high).
4838
4839         gdk/linux-fb/gdkgc-fb.c:
4840         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
4841         all lines were drawn a pixel to short. Also checked the default of
4842         the rest of the values, and they're the same as X now.
4843
4844         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
4845         Clean up pixel positioning of the glyphs. Just use bgy->top and
4846         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
4847         to all divisions to get correct rounding behaviour.
4848
4849         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
4850         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
4851         Moved start_y/end_y flip into draw_drawable implementations.
4852         Flip also x rendering when draw_direction < 0.
4853         Remove unneccesary multiply with draw_direction.
4854
4855 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
4856
4857         * docs/tutorial/gtk-tut.sgml:
4858           - get rid of gtk_toggle_button_toggled FUD
4859           - start DND section - needs work - based on:
4860                 http://wolfpack.twu.net/docs/gtkdnd/
4861
4862 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4863
4864         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4865         Correct calculation of font metrics. Now GtkEntrys have sane
4866         size.
4867
4868 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4869
4870         * gdk/gdktypes.h:
4871         Add new type GdkSpan
4872         
4873         * docs/reference/gdk/gdk-sections.txt,
4874         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
4875         gdk/gdkregion.h:
4876         Implement and document gdk_region_spans_intersect_foreach.
4877
4878         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
4879         Add new file gdkrender-fb.c which contains all core
4880         rendering code.
4881         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
4882         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
4883         (optimized rectangle fillers).
4884
4885         * gdk/linux-fb/gdkdrawable-fb2.c:
4886         Move all rendering code to gdkrender-fb.c.
4887         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
4888         Use the new span intersection functions in gdk_fb_fill_spans.
4889         gdk_fb_draw_rectangle() clips filled rectangles and calls
4890         gc->fill_rectangle with the result.
4891         gdk_fb_fill_spans() gets extra argument "sorted".
4892
4893         * gdk/linux-fb/gdkevents-fb.c:
4894         Remove unused includes and defines.
4895         New function gdk_fb_get_time() to get correct time for events.
4896
4897         * gdk/linux-fb/gdkinput-ps2.c:
4898         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
4899         Make sure to set the time of all events.
4900
4901         * gdk/linux-fb/gdkmain-fb.c:
4902         Use gdk_fb_get_time ().
4903
4904         * gdk/linux-fb/gdkprivate-fb.h:
4905         New virtual GC calls: fill_span & fill_rectangle.
4906         Export gdk_fb_get_time().
4907         gdk_fb_fill_spans() gets extra argument "sorted".
4908
4909         * gdk/linux-fb/mi*.c:
4910         Use GdkSpan instead of GdkRectangle.
4911         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
4912         from XFree 4 source)
4913         
4914 2000-11-22    <jrb@redhat.com>
4915
4916         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
4917         reversing the order in an if statement will do.  Doing so managed
4918         to make the treemodelsort half work.  Other half will follow after
4919         I get the insert function fully fixed.
4920
4921 2000-11-21  Elliot Lee  <sopwith@redhat.com>
4922         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
4923         more than 2 bits. Besides, I need to implement an evil hack. :)
4924
4925 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
4926
4927         * docs/tutorial/gtk-tut.sgml: minor corrections
4928
4929 2000-11-20  Jonathan Blandford <jrb@redhat.com>
4930         * gtk/gtktreemodelsort.h: Add convertion functions to let you
4931           convert to and from relative path's and iters.
4932
4933         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
4934           testing sorting functions a bit better.  Currently broken -- will
4935           fix in morning.
4936
4937 2000-11-20  Havoc Pennington  <hp@redhat.com>
4938
4939         * gtk/gtkwidget.c: Documented a bunch of functions in here
4940         (gtk_widget_realize): Warn if you try to realize
4941         a widget with no parent that isn't a toplevel
4942         (gtk_widget_intersect): return a gboolean
4943
4944 2000-11-20  Havoc Pennington  <hp@redhat.com>
4945
4946         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
4947         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
4948         scrolling to be implemented in GDK to finish. Also, right now
4949         we just size_allocate all children on every layout change,
4950         which is pretty lame. Test commented out of testtext.c, 
4951         until it works better.
4952
4953 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
4954
4955         * gdk/linux-fb/gdkdrawable-fb2.c:
4956         Removed unused arguments from gdk_fb_drawable_get_pixel().
4957
4958         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
4959         Renamed fidur specific mouse packet data in MouseDevice to
4960         generic. Used it in ps2 mouse handling code to avoid blocking
4961         reads.
4962
4963 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
4964
4965         * demos/gtk-demo/main.c: Changed to have the list become
4966         non-italic when the demo window is destroyed through an external
4967         event (like a close button).  Doing so found three bugs in the
4968         widget.
4969
4970         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4971
4972         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4973         we actually set the cell.
4974
4975         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4976
4977         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4978         free a leaked path.  Thanks memprof.
4979
4980 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4981
4982         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4983         off-by-one error when destroying allocated segments
4984         on failure. (Elliot)
4985
4986 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4987
4988         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4989         memleaks found by Evan Martin.
4990
4991 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4992
4993         * Released 1.3.2
4994         
4995         * NEWS: Updates for 1.3.2
4996
4997 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4998
4999         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5000         but in general for window system specific events.
5001
5002         * gtk/gtk.def
5003         * gtk/makefile.mingw.in
5004         * gtk/makefile.msc.in: Update.
5005         
5006         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5007
5008 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5009
5010         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5011         distribute gtk.immodules.
5012
5013         * gtk/Makefile.am (install-data-local): Don't install the
5014         gtk.immodules file created for the uninstalled modules;
5015         instead run gtk-query-immodules after install
5016
5017 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5018
5019         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5020         -rpath to the right install location.
5021
5022         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5023         -export-dynamic.
5024
5025         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5026         properly.
5027
5028 2000-11-15  Havoc Pennington  <hp@pobox.com>
5029
5030         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5031         patch from Mikael Hermansson to temporarily stop blinking while
5032         the user is using the keyboard to type or navigate. 
5033
5034         Also, when blinking, stay on for longer than we stay off. Also,
5035         return from start_cursor_blink if !cursor_visible, to save
5036         checking that flag all over the place before we call
5037         start_cursor_blink.
5038
5039 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5040
5041         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5042         only contain a "fontset" line, which is now ignored.
5043
5044         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5045         double-click-to-select-word work.
5046         
5047 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5048
5049         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5050         Don't move back one char when we are actually at the end of the 
5051         paragraph.
5052
5053 2000-11-15  Robert Brady  <robert@suse.co.uk>
5054
5055         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5056         'o' < 'p'.
5057         
5058         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5059         bind_textdomain_codeset.
5060
5061         (gtk_init_check): Make the warning about translating default:LTR
5062         sterner.
5063         
5064 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5065
5066         * **/Makefile.am : remove unecessary rules for win32-specific
5067         config-substituted targets. If you want these rules, use
5068         --enable-maintainer-mode (called automatically by autogen.sh).
5069         Stops a lot of unneccessary make-time warnings.
5070
5071         * gtk/gtktext{layout,display}.c: Factor in total width as
5072         well as screen when figuring alignment for word-wrap as well as
5073         no wrap; this is necessary to handle lines that cannot be wrapped
5074         at all.
5075
5076 2000-11-15  Havoc Pennington  <hp@redhat.com>
5077
5078         * gtk/testtext.c: Implement essential color cycling feature
5079
5080 2000-11-15  Havoc Pennington  <hp@redhat.com>
5081
5082         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5083         when we invalidate the main window.
5084
5085         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5086         GtkTextView will now invalidate the side windows for us when text
5087         changes.
5088
5089 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5090
5091         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5092         unconditionally, since we may need to update the horizontal
5093         scrollbars even if the height didn't change.
5094
5095         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5096         the extra attrs, since some of them affect size.
5097
5098         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5099         x_offset correctly.
5100
5101 2000-11-15  Havoc Pennington  <hp@redhat.com>
5102
5103         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5104         don't move the first line out into the margin, instead move the
5105         whole paragraph in order to make space for the first line within 
5106         the margin
5107
5108 2000-11-15  Havoc Pennington  <hp@redhat.com>
5109
5110         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5111         xoffset in addition to yoffset, so horizontal scrolling doesn't
5112         break redraws
5113
5114 2000-11-15  Havoc Pennington  <hp@redhat.com>
5115
5116         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5117         from the cursor
5118         (render_layout_line): fix reversed test that caused weird
5119         underlines to get drawn
5120
5121 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5122
5123         * gdk/linux-fb/gdkprivate-fb.h:
5124         Fix debug macros.
5125         
5126 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5127
5128         * gdk/linux-fb/gdkprivate-fb.h:
5129         Added virtual functions set_pixel, get_color,
5130         fill_span and draw_drawable to the GC.
5131         Added global _gdk_fb_screen_gc to use instead of
5132         NULL when drawing to the screen.
5133         Added _gdk_fb_gc_calc_state() prototype.
5134
5135         * gdk/linux-fb/gdkgc-fb.c:
5136         Call _gdk_fb_gc_calc_state() on any gc state change.
5137
5138         * gdk/linux-fb/gdkglobals-fb.c:
5139         Add _gdk_fb_screen_gc
5140                 
5141         * gdk/linux-fb/gdkdrawable-fb2.c:
5142         _gdk_fb_gc_calc_state() calculates best functions
5143         for the GC state and depth.
5144         Moved bpp specialized code to separate functions.
5145         Added optimized 24 bpp AA draw_drawable.
5146
5147         * gdk/linux-fb/gdkevents-fb.c:
5148         Silence gcc warning.
5149
5150         * gdk/linux-fb/gdkimage-fb.c:
5151         Use _gdk_fb_screen_gc
5152
5153         * gdk/linux-fb/gdkwindow-fb.c:
5154         Init and use _gdk_fb_screen_gc
5155
5156         * gdk/linux-fb/mitypes.h:
5157         Remove unused types.
5158
5159 2000-11-14  Havoc Pennington  <hp@pobox.com>
5160
5161         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5162         to pixels
5163
5164 2000-11-14  Havoc Pennington  <hp@pobox.com>
5165
5166         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5167
5168         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5169         unknown char, no real reason we were using a variable. 
5170         Remove gtk_text_unknown_char variable. Fix all the text widget
5171         files accordingly.
5172
5173         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5174         since the Unicode spec seems to prefer that character for our
5175         purposes.
5176
5177 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5178
5179         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5180         value of g_getenv() isn't freeable, so g_strdup it.
5181
5182         * modules/input/inuktitut.c: Inuktitut input method.
5183
5184         * modules/input/Makefile.am: Build this.
5185         
5186 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5187
5188         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5189         of gtk programs.
5190
5191 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5192
5193         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5194         reversed > that was causing Home to go to end of previous line.
5195
5196         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5197         modified-keypresses (leave for bindings.)
5198
5199         * modules/input/Makefile.am: Remove useless -export-dynamic
5200         from module LDFLAGS.
5201
5202 2000-11-14  Havoc Pennington  <hp@redhat.com>
5203
5204         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5205         higher.
5206
5207         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5208         account. Also, render rise, underline, background, etc. for
5209         pixbufs as well as text. Also, draw underlines one pixel higher.
5210
5211         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5212         PangoAttribute for the rise, so it gets drawn properly. Also,
5213         add the GtkTextAppearance attribute for pixbuf/widget segments
5214         as well; we should go ahead and have rise, underline, background,
5215         stipple work for those
5216
5217         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5218         Pango
5219
5220 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5221
5222         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5223
5224         * gtk/gtk.def: Update.
5225
5226         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5227         included.
5228         (gtk_rc_get_im_module_file): Use run-time installation directory
5229         on Win32.
5230
5231         * gdk/win32/rc/gdk.rc: Remove.
5232         * gdk/win32/rc/gdk.rc.in: New file.
5233         * gdk/win32/rc/Makefile.am: New file
5234         * gdk/win32/Makefile.am: Corresponding changes.
5235
5236         * gtk/gtk.rc: Remove.
5237         * gtk/gtk-win32.rc.in: New file.
5238         * gtk/Makefile.am: Corresponding changes.
5239
5240         * configure.in: Corresponding changes.
5241
5242         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5243         has a built gtkcompat.h. Developers using CVS code on Win32 can
5244         hand-edit it from gtkcompat.h.in.
5245
5246         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5247         gtkcompat.h from gtkcompat.h.win32.
5248
5249 2000-11-14  Havoc Pennington  <hp@redhat.com>
5250
5251         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5252         to default to GDK_ACTION_MOVE if the drag is within a single
5253         widget. Defaults to GDK_ACTION_COPY between widgets.
5254
5255 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5256
5257         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5258
5259         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5260
5261         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5262         srcdir != builddir
5263
5264         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5265
5266         * configure.in (GTK_VERSION): Up to 1.3.2
5267
5268         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5269         gtkimcontextxim.h
5270
5271         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5272         missing doc comment.
5273
5274 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5275
5276         * modules/linux-fb/basic.c:
5277         Use the glib iconv wrappers.
5278
5279 2000-11-13  Havoc Pennington  <hp@pobox.com>
5280
5281         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5282         still more bugs.
5283
5284         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
5285         scroll the GdkWindows before realization.
5286
5287 2000-11-13  Havoc Pennington  <hp@redhat.com>
5288
5289         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
5290         where GC didn't always get updated properly
5291
5292         * demos/gtk-demo/textview.c (create_tags): Use subattributes
5293         of fonts instead of setting the entire font
5294
5295         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
5296         setting entire font
5297
5298         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
5299
5300         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
5301         a bunch of individually-settable font attributes. You can still 
5302         use the "font" and "font_desc" args, they just set all the font
5303         attributes at once.
5304
5305 2000-11-13 Elliot Lee <sopwith@redhat.com>
5306
5307         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
5308
5309 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
5310
5311         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
5312         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
5313
5314         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
5315         work better.
5316
5317 2000-11-13  Havoc Pennington  <hp@redhat.com>
5318
5319         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
5320         the module file.
5321
5322         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
5323         dest->language
5324
5325         * gtk/testtext.c: Test pixels above/below/inside paragraphs
5326         settings
5327
5328         * gtk/gtktextview.c: Implement object args and setters/getters for
5329         all the aspects of the GtkTextAttributes that are not set from
5330         GtkWidget attributes. This is spacing, justification, margins,
5331         etc.
5332
5333         (gtk_text_view_set_arg)
5334         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
5335         args
5336         (gtk_text_view_class_init): Add args for justify, left_margin,
5337         right_margin, indent, and tabs
5338         
5339
5340         * gtk/gtktextlayout.c (set_para_values): fix to display indent
5341         attribute properly
5342
5343         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
5344         replace with indent attribute
5345
5346         * gtk/gtktextlayout.c (set_para_values): multiply indent by
5347         PANGO_SCALE
5348
5349         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
5350         rearranging code to do that
5351         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
5352         i.e. don't subtract the top_margin first, just to keep
5353         all margin-futzing in one place.
5354
5355         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
5356
5357         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
5358         special case of last line, Pango now handles this itself.
5359         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
5360         Y coordinate
5361         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
5362         (find_display_line_above): wasn't moving the byte index as it
5363         iterated over lines, so always returned byte 0. Also, port to use
5364         PangoLayoutIter.
5365         (find_display_line_below): same problem as
5366         find_display_line_above. Also, port to use PangoLayoutIter.
5367
5368 2000-11-13  Alexander Larsson  <alexl@redhat.com>
5369
5370         * gdk/linux-fb/*.[ch]:
5371         Massive reindent to gtk+ standard. My hands hurt.
5372
5373         * gdk/linux-fb/gdkcolor-fb.c:
5374         Move GdkColorPrivateFB from inherited to windowing_data
5375
5376         * gdk/linux-fb/gdkcursor-fb.c:
5377         _gdk_cursor_new_from_pixmap made static
5378
5379         * gdk/linux-fb/gdkdnd-fb.c:
5380         GdkDragContextPrivate moved to windowing_data
5381
5382         * gdk/linux-fb/gdkdrawable-fb2.c:
5383         Removed endian.h, use glib endianness macros instead
5384         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
5385         and GDK_DRAWABLE_IMPL_FBDATA
5386
5387         * gdk/linux-fb/gdkfont-fb.c:
5388         Add empty gdk_font_load(). Needed for linking of Gtk+.
5389
5390         * gdk/linux-fb/gdkimage-fb.c:
5391         Removed endian.h, use glib endianness macros instead
5392         Moved GdkImagePrivateFB to windowing_data
5393         gdk_image_new_bitmap didn't always allocate enough
5394         memory.
5395
5396         * gdk/linux-fb/gdkinput-ps2.c:
5397         Added semi-working support for MS serial mice.
5398
5399         * gdk/linux-fb/gdkprivate-fb.h:
5400         s/GdkWindowPrivate/GdkWindowObject/
5401         Removed GdkWindowPrivate typedef
5402         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
5403         Removed GDK_DRAWABLE_P
5404         Move GdkColorPrivateFB from inherited to windowing_data
5405         Moved GdkImagePrivateFB to windowing_data
5406
5407         * gdk/linux-fb/gdkvisual-fb.c:
5408         Removed some unused debug code.
5409
5410         * gdk/linux-fb/gdkwindow-fb.c:
5411         Use stock cursors instead of including X headers.
5412         s/GdkWindowPrivate/GdkWindowObject/
5413
5414         * gdk/linux-fb/mitypes.h:
5415         Removed unused types.
5416
5417         * modules/linux-fb/basic.c:
5418         Use the pango fribidi wrappers.
5419
5420 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5421
5422         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
5423         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
5424         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
5425         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
5426         GEqualFunc where applicable.
5427         
5428         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
5429         pango_font_description_equal as changed in pango.
5430         
5431         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
5432
5433         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
5434
5435         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
5436
5437         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
5438
5439         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
5440
5441         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
5442
5443         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
5444         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
5445
5446         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
5447         gtk_rc_styles_compare -> gtk_rc_styles_equal.
5448
5449 2000-11-12  Havoc Pennington  <hp@pobox.com>
5450
5451         * demos/gtk-demo/Makefile.am (democodedir): change demo install
5452         dir to datadir/gtk+-2.0/demo
5453
5454         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
5455         sorts of text widget and Pango font bugs. Urgh.
5456
5457         * demos/gtk-demo/Makefile.am (demos): Add textview.c
5458
5459         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
5460         tree that you should double click to see the demo. Fix 
5461         types of variables to reflect changed return values from 
5462         GtkTreeStore and GtkTreeViewColumn constructors.
5463
5464         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
5465         newly-created buffer to prepare for GObject semantics
5466
5467         * gtk/testtext.c: don't leak the buffer with GObject semantics
5468
5469         * gtk/testtextbuffer.c: ditto
5470         
5471 2000-11-12  Havoc Pennington  <hp@pobox.com>
5472
5473         Rename this testgtk to gtk-demo to avoid confusion, and 
5474         install it so people can use it as a supplement to 
5475         the documentation.
5476         
5477         * demos/gtk-demo: Moved from demos/testgtk
5478
5479         * demos/testgtk: Removed
5480
5481         * configure.in: make Makefile in gtk-demo
5482         
5483         * demos/gtk-demo/Makefile.am: Install sample source to 
5484         datadir/gtk-demo (maybe there's a better place?), and 
5485         rename the binary to gtk-demo
5486         
5487         * demos/gtk-demo/main.c (load_file): Load installed sample
5488         source if source isn't found in pwd.
5489
5490 2000-11-09  Havoc Pennington  <hp@pobox.com>
5491
5492         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
5493         argument to set the char displayed when visibility == FALSE
5494         (gtk_entry_create_layout): If !entry->visible, replace 
5495         all chars with the "invisible char"
5496
5497         * gtk/testgtk.c: Test the invisible_char deal
5498         
5499 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
5500
5501         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
5502         can't get a native font in the right encoding.
5503
5504 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
5505
5506         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
5507         respectively.
5508
5509 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
5510
5511         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
5512         Fix warning when moving between paragraphs.
5513
5514         * gtk/gtkentry.[ch]: Change move => move_cursor, 
5515         delete => delete_from_cursor, insert => insert_at_cursor
5516
5517 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
5518
5519         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
5520
5521         * modules/input/imthai-broken.c: A Thai input method for use if
5522         Thai keys are really generating Latin1 keysyms.
5523
5524         * modules/input/Makefile.am: Build these.
5525
5526 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
5527
5528         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
5529         g_filename_{to,from}_utf8 now takes an extra parameter.
5530
5531         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
5532         strftime into UTF-8.
5533
5534         (column_from_x, gtk_calendar_paint_day_names): Support RTL
5535         calendars.
5536
5537         (gtk_calendar_paint_day_names): Draw day names in the right 
5538         place.
5539         
5540 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
5541
5542         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
5543         problem with using result of g_get_charset() backwards -
5544         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
5545
5546         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
5547         negative min_width/height and max_width/height to
5548         mean "requisition"; this allows setting a window
5549         to be user-resizable in only one direction easily.
5550
5551         * gtk/testgtk.c (create_main_window): Remove hard-coded
5552         usize - set a default size in the vertical direction.
5553
5554 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
5555
5556         * gtk/gtkrange.c: Add some missing casts. Support 
5557         2 and 3 button clicks on the arrows to mean 
5558         "move by pages" and "jump to end". (Like gtkspinbutton)
5559
5560 2000-11-12 Hans Breuer <Hans@Breuer.Org>
5561
5562         * gdk/win32/makefile.msc : reflect build module changes
5563
5564         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
5565         from GdkPixmap*, cast implementation member instead.
5566
5567         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
5568         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
5569         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
5570         more Gdi functions return value checking. 
5571         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
5572         GdkImagePrivateWin32 *.
5573
5574         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
5575         menus useable again. Add #pragma message to keep reminded on this issue.
5576         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
5577         windows. This allows to enable backing store on Win32!
5578
5579         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
5580         in drawable is of impl type. Correct specific type checks appropriate.
5581  
5582         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
5583         GDK_WINDOW_DESTROYED before allocating new resources.
5584
5585         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
5586
5587         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
5588         (gdk_window_foreign_new) initialize parent handle.
5589         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
5590
5591         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
5592         Let the GDI invalidate the window on MoveWindow call to fix scrolling
5593         problems (e.g. main buttons in testgtk). 
5594
5595 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
5596
5597         * gtk/gtkentry.c (gtk_entry_key_press): Call 
5598         gtk_widget_activate for GDK_Return.
5599
5600         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
5601         of preedit cursor position.
5602
5603 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
5604
5605         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
5606         static.
5607
5608 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
5609
5610         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
5611         out support for multiple locales; that simple doesn't
5612         work reliably with current Xlib
5613
5614         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
5615         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
5616         Add support for positioning the cursor within the preedit string.
5617
5618 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
5619
5620         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
5621         at XIM input method module.
5622
5623         * gtk/gtktextview.c: Check for bindings after passing
5624         events to im context filter.
5625
5626 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
5627
5628         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
5629         empty attribute lists properly.
5630
5631 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
5632
5633         * gtk/queryimmodules.c (main): Return non-zero exit
5634         status if errors were encountered querying any
5635         modules.
5636
5637         * modules/input/Makefile.am (moduledir): remove
5638         leftover bin program target.
5639
5640         * docs/make-todo: Fix typo in error message.
5641
5642 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
5643
5644         * configure.in: Add modules/input/Makefile
5645
5646 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
5647
5648         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
5649         don't include gtkthemes.h.
5650
5651         * gtk/testgtk.c gtk/testtext.c: Set environment variables
5652         to point
5653
5654         * gtk/Makefile.am: Add new .c and .h files, build 
5655         gtk-query-immodules and use it to create a gtk.immodules
5656         file for use of test programs.
5657
5658         * gtk/gtkpreview.c: remove extra blank line.
5659
5660 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
5661
5662         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
5663         Add the ability to add extra tables beyond the default
5664         one, and also the ability to have compose sequences 
5665         that are prefixes of other compose sequences. 
5666
5667         * gtk/gtkimcontextsimple.c: Export a preedit string which
5668         consists of possible candidates for keystrokes that have
5669         been entered but not yet committed.
5670
5671         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
5672         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
5673
5674         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
5675         Add a function to add input-method switching menu items
5676         to a menu.
5677
5678         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
5679         when switching input methods.
5680
5681         * gtk/gtkimcontextsimple.[ch]: Change the format of
5682         the compose table to allow compose tables of different
5683         lengths / sequence.
5684
5685 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
5686
5687         * gtk/gtkimmodule.[ch]: Support routines for loading
5688         GtkIMContext implementations dynamically at runtime.
5689
5690         * modules/input/imcyrillic-translit.c: A sample input
5691         method (based on GtkIMContextSimple with an extra table),
5692         which demonstrates preedit strings and the module
5693         system for input modules
5694
5695         * gtk/queryimmodules.c: Program to query the available
5696         input modules and write the results into a file.
5697          
5698         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
5699         extra config options "im_module_file" (cache file for
5700         input method modules), and "im_module_path" - path
5701         to look for modules when generating cache file.
5702
5703         This doesn't scale.
5704
5705 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
5706
5707         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
5708         generic code from gtkthemes into a new abstraction
5709         GtkModule which has the logic for implementing
5710         a loadable module which implements a number of 
5711         GObject types.
5712
5713 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
5714
5715         * gtk/gtkeditable.[ch]: Convert GtkEditable from
5716         a class into an interface  
5717         
5718         * gtk/gtkoldeditable.[ch]: Move the old editable
5719         implementation into here, so legacy widgets can
5720         still rely on the implemenation. GtkOldEditable
5721         exports GtkEditable. Make selection handling
5722         code use new text conversion functions (and
5723         handle UTF-8 as a side-effect). Use GtkClipboard
5724         for CLIPBOARD.
5725
5726         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
5727         Adopt to match above changes.
5728
5729         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
5730         avoid GtkOldEditable implementation. Restructure
5731         to reduce number of places that modify state directly.
5732         Move to GtkBindingSet. Display the preedit string.
5733         Queue recomputation of PangoLayout and scroll position
5734         to improve effiency of doing complex changes naively.
5735         Add a menu with cut/copy/paste and input method selection.
5736
5737 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
5738
5739         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
5740         to set preedit string and attributes; display preedit string by
5741         inserting string and attributes at cursor when creating the
5742         GtkTextLineDisplay.
5743
5744         * gtk/gtktextlayout.c: Move all conversions between byte
5745         positions in PangoLayout and GtkTextIter into new functions
5746         line_display_iter_to_index/index_to_iter that properly
5747         handle the preedit string.
5748
5749         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
5750         it to return const char * (eventually will end up
5751         as GCONST char *, most likely.)
5752
5753         * gtk/gtktextview.[ch]: Handle the preedit string, call
5754         gtk_im_context_reset() as necessary, add a menu to switch
5755         input methods.
5756         
5757         * gtk/gtktextlayout.[ch]: Remove useless
5758         gtk_text_layout_get_log_attrs() function.
5759
5760 2000-11-11  Tor Lillqvist  <tml@iki.fi>
5761
5762         * gdk/gdk.def
5763         * gtk/gtk.def: Update.
5764
5765         * gdk/win32/*.c: Add last argument to g_type_register_static()
5766         calls.
5767
5768         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
5769
5770         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
5771         generated by older wheel mouse drivers. Get the correct y
5772         coordinate from WM_MOUSEWHEEL messages.
5773
5774         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
5775         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
5776         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
5777         Debugging functions.
5778
5779         * gdk/win32/gdkprivate-win32.h: Declare them.
5780
5781         * gdk/win32/gdkinput-win32.h: Add declaration for
5782         gdk_input_window_destroy().
5783
5784         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
5785
5786 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
5787
5788         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
5789         function to help handle keeping things in sync.
5790
5791 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
5792
5793         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
5794         BOXED marshallers.
5795
5796         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
5797         (gtk_list_store_class_init): use the new BOXED marshallers.
5798
5799         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
5800         new_with_values to new_with_types.
5801         (gtk_tree_store_get_column_type): add this.
5802         (gtk_tree_store_class_init): use the new BOXED marshallers.
5803
5804         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
5805         mirror some POINTER marshallers.
5806
5807 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
5808
5809         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
5810         allow more interesting iterators.  Also, made the lifecycle of
5811         iterators more explicit.
5812
5813         * gtk/gtktreemodelsort.[ch]: New model for sorting.
5814
5815         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
5816         types.
5817
5818 2000-11-09  Alexander Larsson  <alexl@redhat.com>
5819
5820         * demos/testgtk/menus.c:
5821         Changes to make the new testgtk compile after
5822         gtk_menu_append was removed.
5823
5824         * gdk/linux-fb/gdkdrawable-fb2.c
5825         (gdk_fb_get_depth, gdk_fb_get_visual,
5826         gdk_drawable_impl_fb_class_init): Implement
5827         these drawable functions. Now GtkImages work again.
5828
5829         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
5830
5831         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
5832         
5833         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
5834         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
5835         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
5836         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
5837
5838 2000-11-08  Havoc Pennington  <hp@pobox.com>
5839
5840         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
5841         visible_set args, don't know where these had gone, I thought they
5842         used to be there
5843
5844         * gtk/testtext.c: Add a menu item to apply invisibility tag;
5845         now we can test the feature and see that it's totally broken.
5846
5847 2000-11-08  Havoc Pennington  <hp@pobox.com>
5848
5849         Make DND copy pixbufs and tags when source and target share a 
5850         tag table.
5851         
5852         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
5853         in-process GTK_TEXT_BUFFER_CONTENTS target
5854         (gtk_text_view_drag_data_received): Paste from
5855         GTK_TEXT_BUFFER_CONTENTS if we receive it.
5856
5857 2000-11-08  Alexander Larsson  <alexl@redhat.com>
5858
5859         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
5860         API changes.
5861
5862         * gtk/gtkmenu.c: Add support for scrolling menus.
5863         Remove gtk_menu_append/prepend/insert, these have been moved to
5864         gtkcompat.h as #defines.
5865
5866         * gtk/gtkcompat.h.in:
5867         Add compatibility #defines for gtk_menu_append/prepend/insert
5868
5869         * gtk/gtkmenu.h: Add data needed for scrolling menus.
5870         GtkMenuPositionFunc gets an extra argument push_in.
5871         gtk_menu_append/prepend/insert removed.
5872         
5873         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
5874         positioning behaviour to fit to scrolling menus.
5875
5876         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
5877         into menuitem->submeny. That is wrong, and broke torn
5878         off submenus of torn off menus, since they were unrealized
5879         when the first menu was unrealized.
5880
5881         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
5882         gtk_menu_shell_select_item() since these need to be overridden in
5883         GtkMenu.
5884
5885         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
5886         positioning behaviour to fit to scrolling menus.
5887         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
5888         the current item so that it is prelighted when the menu pops up.
5889         This is a workaround to the fact that the menu doesn't get the
5890         initial enter event (due to grabs).
5891
5892         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
5893         s/gtk_menu_append/gtk_menu_shell_append/
5894
5895         * gtk/gtknotebook.c:
5896         s/gtk_menu_insert/gtk_menu_shell_insert/
5897
5898         * gtk/testgtk.c (create_menu, create_menus):
5899         Create the first menu with 50 items so that menu scrolling
5900         can be tested.
5901         
5902         
5903         Patch from Jonathan Blandford  <jrb@redhat.com>
5904
5905         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
5906         system to handle size requests.  First, we ask what the size of
5907         the toggle is.  Then, when allocating the size, we allocate the
5908         toggle_size first.  This way we can have multiple menu-item
5909         classes w/o needing a seperate class for each.
5910
5911         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
5912         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
5913
5914         * gtk/gtkcheckmenuitem.c
5915         (gtk_check_menu_item_toggle_size_request): New function to handle
5916         the toggle size-request.
5917
5918 2000-11-07  Havoc Pennington  <hp@redhat.com>
5919
5920         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
5921         Half-ass somewhat fix this function, so that scrolling to the
5922         insertion point works. Pango hacking is in the future to really
5923         fix it.
5924
5925         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
5926         length of data, no longer used.
5927
5928         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
5929         method contents in here, get rid of destroy method
5930         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
5931         that were backward. Remove debug spew.
5932         (cut_or_copy): Make the clipboard work with insert_range to
5933         preserve tags and pixbufs, not just the primary selection.
5934
5935 2000-11-07  Havoc Pennington  <hp@redhat.com>
5936
5937         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
5938         to gtk_text_mark_get_visible
5939
5940         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
5941         bug that was generating an invalid iterator
5942
5943         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
5944         ensure_char_offsets() in front of code placing the iter in an
5945         invalid state.
5946
5947         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
5948         make override_location arg const
5949         (paste): Replace the selection if we paste into the 
5950         current selection
5951
5952         * gtk/gtkselection.h: Remove "GtkSelectioData"
5953         (struct _GtkSelectionData): move the definition here.
5954
5955         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
5956         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
5957
5958         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
5959
5960         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
5961         (gtk_text_buffer_insert_range_interactive): implement
5962         (gtk_text_buffer_get_tags): Remove, replaced by
5963         gtk_text_iter_get_tags()
5964
5965         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
5966         limit parameter, to avoid infinite linear scan.
5967         (gtk_text_iter_backward_search): Add search limit
5968         (gtk_text_iter_forward_find_char): Add search limit
5969         (gtk_text_iter_backward_find_char): Add search limit
5970
5971 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5972
5973         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5974         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5975         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5976         gdk/linux-fb/gdkwindow-fb.c:
5977         use g_object_new() instead of g_type_create_instance() which
5978         is a private function for fundamental type implementations.
5979
5980         * gdk/linux-fb/gdkinput-ps2.c:
5981         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5982         instead just store the current modifier state. Add a (somewhat broken)
5983         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5984         Rename exported function gdk_input_ps2_get_mouseinfo to
5985         gdk_input_get_mouseinfo.
5986
5987         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5988         gdk/linux-fb/gdkwindow-fb.c:
5989         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5990         
5991
5992 2000-11-02  Havoc Pennington  <hp@redhat.com>
5993
5994         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5995         use stock buttons. Should be 100% source compatible, appropriate
5996         filesel fields now point to dialog->vbox and dialog->action_area.
5997         On the bizarre side, dialog->action_area and filesel->action_area
5998         are not the same widget.
5999         (gtk_file_selection_init): Put some padding around the selection
6000         entry, so it isn't touching the GtkDialog separator.    
6001
6002         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6003         use stock buttons, etc. Should also be source compatible.
6004         Set the dialog default title in _init not _new().
6005         
6006         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6007         Use stock buttons; don't put a button box inside the existing
6008         dialog button box. Don't bother with push/pop colormap anymore.
6009
6010         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6011         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6012         for message dialog, and necessary for the font selection and color
6013         selection with help and apply buttons.
6014         
6015         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6016         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6017         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6018         between buttons, put less padding around the action area.
6019         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6020         This will also exit the loop if the widget is hidden.
6021         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6022         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6023         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6024         special-case delete event.
6025
6026         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6027         formatting
6028         
6029 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6030
6031         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6032         button to temporarily disable position recording in the
6033         "saved position" test.
6034
6035 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6036
6037         * gtk/gtkthemes.c: added compat code that temporarily implements
6038         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6039         going to be revamped by owen's upcoming GtkModule patches, but
6040         untill then people want gtk to build, right? ;)
6041
6042 2000-11-04  Havoc Pennington  <hp@pobox.com>
6043
6044         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6045         list
6046
6047         * docs/Changes-2.0.txt: Add note about
6048         gtk_container_get_toplevels()
6049
6050         * gtk/gtktextview.h: formatting
6051         
6052         * gtk/gtktextview.c: don't start descriptions with "Returns",
6053         confuses gtk-doc
6054
6055 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6056
6057         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6058         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6059
6060 2000-11-03  Havoc Pennington  <hp@redhat.com>
6061
6062         * gtk/gtktexttagtable.c: Docs
6063         (gtk_text_tag_table_size): return a signed int
6064
6065         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6066         (gtk_text_tag_event): make the event_object a GObject
6067
6068         * gtk/gtktextview.c: Write API docs for all functions.
6069
6070         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6071         for gtk_text_view_get_window_type() called on one of the private
6072         windows.
6073
6074         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6075         directly, call get_buffer() which demand-creates a default
6076         buffer. So gtk_text_view_new() can be used to create a view with a
6077         default buffer in it, if you just want an empty text box users can
6078         put data in. Useful for GUI builders also.
6079
6080 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6081
6082         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6083         the charset encodign portion MUST be in lowercase.
6084         * gtk/gtkrc.az: added file for Azeri language
6085
6086 2000-11-03  Havoc Pennington  <hp@redhat.com>
6087
6088         Get widgets working on the btree/buffer side. Display of them 
6089         still doesn't work.
6090         
6091         * gtk/gtktextview.c: start implementing child widget stuff
6092
6093         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6094
6095         * gtk/gtktextlayout.c: handle embedded widgets
6096
6097         * gtk/gtktextdisplay.c: handle embedded widgets
6098
6099         * gtk/gtktextchild.c: Implement all the child anchor goo
6100
6101         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6102         function
6103
6104         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6105         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6106         creating a child anchor or a pixbuf segment.
6107         (gtk_text_btree_create_child_anchor): new function
6108         (gtk_text_btree_unregister_child_anchor): new function
6109
6110         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6111         allocate_child signal on GtkTextLayout
6112
6113         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6114         values
6115         (gtk_text_iter_get_child_anchor): new function
6116
6117         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6118         default handler for the changed signal, which calls
6119         gtk_text_buffer_set_modified(), instead of just always emitting
6120         changed then calling set_modified() manually. I guess this is
6121         maybe more flexible. It seems logical.
6122
6123 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6124
6125         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6126         now.
6127
6128         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6129
6130 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6131
6132         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6133         been marked static.
6134
6135 2000-11-02  Havoc Pennington  <hp@redhat.com>
6136
6137         * gtk/testgtk.c (create_labels): had a test backward
6138
6139         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6140         fields, so the dest GC ends up with the correct clip origin, 
6141         etc. Fixes a bug where colored labels didn't redraw 
6142         properly.
6143
6144 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6145
6146         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6147         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6148         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6149         Add last argument to t_type_register_static call.
6150         
6151         * gdk/linux-fb/gdkdrawable-fb2.c:
6152         Add last argument to t_type_register_static call.
6153         export the get_image drawable virtual function.
6154
6155         * gdk/linux-fb/gdkimage-fb.c:
6156         Add last argument to t_type_register_static call.
6157         rename gtk_image_get to _gdk_fb_get_image and
6158         export it for use by gdkdrawable-fb2.
6159
6160         * gdk/linux-fb/gdkprivate-fb.h:
6161         export _gdk_fb_get_image.
6162
6163         * gdk/linux-fb/gdkselection-fb.c:
6164         Add new api call stubs.
6165
6166         * gtk/Makefile.am:
6167         Missing ( in linux-fb part.
6168
6169         * modules/linux-fb/Makefile.am:
6170         Must link with gdk_pixbuf or get unresolved symbol.
6171
6172 2000-11-01  Havoc Pennington  <hp@pobox.com>
6173
6174         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6175         GTK_TYPE_TEXT_ITER and BOXED marshallers
6176
6177         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6178
6179         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6180         
6181         * gtk/gtk-boxed.defs: add GtkTextIter
6182
6183         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6184         properly use OBJECT and BOXED
6185
6186 2000-11-01  Havoc Pennington  <hp@redhat.com>
6187
6188         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6189
6190         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6191         before returning it. 
6192         
6193 2000-11-01  Havoc Pennington  <hp@redhat.com>
6194
6195         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6196         Clip the rectangle to be rendered to the drawable, since
6197         get_from_drawable() requires a region within the drawable
6198
6199 2000-11-01  Havoc Pennington  <hp@redhat.com>
6200
6201         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6202         from coordinates.
6203
6204 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6207         it isn't NULL.
6208
6209 2000-11-01  Havoc Pennington  <hp@pobox.com>
6210
6211         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6212         on a label
6213         (gtk_label_finalize): unref the attr list if any.
6214
6215         * gtk/testgtk.c (create_get_image): close test on second click
6216         (make_message_dialog): close dialog if it exists
6217
6218         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6219
6220         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6221         gdk-pixbuf
6222
6223         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6224         from Pango markup format
6225         (gtk_label_set_markup_with_accel): ditto but with accelerator
6226         parsing
6227
6228         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6229
6230         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6231         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6232         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6233         call gdk_window_get_origin().
6234
6235         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6236         implement GDK_PIXBUF_ALPHA_FULL
6237         
6238 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6239
6240         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6241         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6242         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6243         multiple handlers respectively, instead of only treating the
6244         first handler found (bug reported by owen).
6245
6246 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6247
6248         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6249
6250         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6251
6252         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6253         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6254         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6255
6256         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6257         widget.  Needs writing someday.
6258
6259         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6260         the docs.
6261
6262 2000-10-30  Havoc Pennington  <hp@redhat.com>
6263
6264         * gtk/gtktextview.h, gtk/gtktextview.c:
6265         Rename delete_at_cursor delete_from_cursor, and 
6266         move to move_cursor.
6267
6268 2000-10-30  Havoc Pennington  <hp@redhat.com>
6269
6270         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6271         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6272         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6273         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6274         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6275         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6276         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6277         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6278         gtktexttypes.h, gtktextview.c, gtktextview.h:
6279
6280         Massive reindentation and reformatting. Arg alignment and comments
6281         still need fixing in various places.
6282
6283 2000-10-30  Havoc Pennington  <hp@redhat.com>
6284
6285         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
6286         to be named insert_at_cursor and delete_at_cursor so C++ can
6287         handle them.
6288
6289 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6290
6291         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
6292         to get a double directory separator in case the home directory
6293         ends with one. This would cause trouble especially on Windows,
6294         where the path will be confused with the syntax for an an UNC
6295         (network share) path \\server\share\path.
6296         (gtk_rc_add_initial_default_files): Ditto.
6297
6298 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
6299
6300         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
6301
6302         * gtk/gtktextview.c: Use correct marshallers.
6303
6304 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
6305
6306         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
6307         use new iter stuff, and added all the appropriate signals et al.
6308
6309         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
6310         code is internal to gtk only.
6311
6312 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6313
6314         * gtk/gtk.def
6315         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
6316         glib-genmarshal etc.
6317
6318 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
6319
6320         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
6321         parallel builds.
6322
6323 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
6324
6325         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
6326
6327 2000-10-27  Robert Brady  <robert@suse.co.uk>
6328
6329         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
6330         en_GB (British), ia (Interlingua).
6331
6332 2000-10-26  Havoc Pennington  <hp@redhat.com>
6333
6334         * gtk/gtktextiter.c (my_strrstr): fix constness warning
6335
6336         Fixed output of:
6337         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
6338         
6339         * gtk/gtktextsegment.c (char_segment_new): rename
6340         (_char_segment_new_from_two_strings): rename
6341         (_toggle_segment_new): rename
6342         
6343         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
6344         (make_clipboard_widget): make it static
6345         (text_get_func): static
6346         (text_clear_func): static
6347
6348         * gtk/gtkcolorsel.c (adjustment_changed): make this function
6349         static
6350         (hex_changed): make it static
6351         (hsv_changed): make it static
6352         (opacity_entry_changed): make it static
6353
6354         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
6355         (toggle_segment_check_func): rename with _gtk
6356
6357         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
6358         (_widget_segment_new): rename
6359         (_widget_segment_add): rename
6360         (_widget_segment_remove): rename
6361         (_widget_segment_ref): rename
6362         (_widget_segment_unref): rename
6363
6364         * gtk/gtktextmark.c (_mark_segment_new): Rename
6365         _gtk_mark_segment_new   
6366
6367 2000-10-26  Havoc Pennington  <hp@redhat.com>
6368
6369         * gtk/gtkmarshal.list: add new marshallers used by the text widget
6370         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6371         types
6372
6373         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
6374         marshaller types
6375
6376         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
6377         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
6378         license on these files.
6379
6380         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
6381         work.
6382
6383         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
6384         runtime random number different for each tree, instead of 
6385         a constant I made up.
6386
6387 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
6388
6389         * gtk/Makefile.am: buncha cleanups, kludged build sources
6390         dependencies with a Makefile: oldest-source-stamp dependancy
6391         for the moment. automake is really fighting us here, with
6392         intentionally not allowing user-defined rules or dependancies
6393         prior to it's -include $(DEP_FILES) statement. sucks rocks!
6394
6395         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
6396         to public headers. tehy have a comment stating that they are
6397         "semi-public" aren't included by gtk.h and if enums popup there,
6398         they can be /*< skip >*/-ed.
6399
6400         * gtk/gtktextlayout.h: 
6401         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
6402         added LGPL... <SIGH>
6403
6404 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
6405
6406         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
6407         GtkTreeIter.  Added iterators everywhere.
6408
6409         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
6410
6411         * gtk/gtktreeviewselection.c: Changed to use the iterators.
6412
6413         * gtk/gtktreestore.c: Changed to use the iterators.
6414
6415         * gtk/gtkliststore.c: Commented out the code.  Will convert to
6416         iterators tomorrow.
6417
6418         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
6419         iterators tomorrow.
6420
6421         * gtk/treestoretest.c: Changed to use iterators.
6422
6423         * demos/testgtk/main.c: Moved to use the new iterator system.
6424
6425 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
6426
6427         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
6428         localization misbehaviour.
6429
6430         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
6431         a useless type without copy/free.
6432
6433         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
6434         of GTK_TYPE_CTREE_NODE.
6435
6436 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
6437
6438         * gtk/gtksignal.c:
6439         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
6440         applicable.
6441
6442         * gtk/gtk-boxed.defs (GtkSelectionData): specify
6443         gtk_selection_data_copy and gtk_selection_data_free
6444         do GtkSelectionData work as params in signals.
6445
6446 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
6447
6448         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
6449         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
6450         couldn't they at least give it a non-standard name?
6451         
6452         * gtk/gtktextlayout.c: arg! yet another implementation of
6453         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
6454
6455         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
6456         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
6457         home. now i know this _is_ a conspiracy.
6458
6459         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
6460         ::state-changed.
6461
6462         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
6463         (gtk_accel_group_create_add): marshaller signature fixups.
6464
6465         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
6466         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
6467
6468         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
6469         anymore.
6470
6471 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
6472
6473         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
6474         due to the signal system changes, it wouldn't build currently. to
6475         be fixed soon.
6476
6477         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
6478
6479         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
6480         so it needs gtk_marshal_VOID__ENUM() instead of
6481         gtk_marshal_NONE__UINT().
6482
6483         * gdk/gdk*.c: adapted type registration functions.
6484
6485         * gtk/gtkbindings.c:
6486         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
6487         gone.
6488
6489         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
6490
6491         * gtk/gtkobject.c:
6492         (gtk_object_destroy):
6493         (gtk_object_shutdown): fixed recursion guards. basically we have to
6494         catch the case where any of GObject.shutdown() or gtk_object_destroy()
6495         is called during ::destroy, and avoid recursion there.
6496
6497         * gtk/gtktypeutils.c:
6498         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
6499         boxed_copy/boxed_free. this needs a more general solution based on a
6500         publically installed code-generator utility.
6501
6502         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
6503         glib's gobject has support for that now.
6504         define GtkSignalMarshaller in terms of GSignalCMarshaller.
6505
6506 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
6507
6508         * gtk/gtksignal.[hc]:
6509         * gtk/gtkmarshal.[hc]:
6510         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
6511         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
6512         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
6513         care of that.
6514
6515         * *.c: marshaller name fixups.
6516
6517         * gtk/gtkmarshal.list: added a comment briefing the format.
6518
6519 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
6520
6521         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
6522         compatibility macros here now. more specifically, most of
6523         the API is preserved (yes, _most_, nonwithstanding the
6524         following exceptions listed, the API is stil lHUGE ;)
6525         things that got removed completely:
6526         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
6527         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
6528         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
6529         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
6530         gtk_signal_remove_emission_hook().
6531         non-functional functions variants:
6532         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
6533         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
6534         not supported anymore.
6535         (gtk_signal_compat_matched): new internal function to aid
6536         implementation of the compatibility macros, it  provides
6537         functionality to block/unblock/disconnect handlers based
6538         on func/data.
6539
6540         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
6541
6542         * *.c: adaptions to new type registration API signatures.
6543
6544 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
6545
6546         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
6547
6548 2000-10-25  Robert Brady  <robert@suse.co.uk>
6549
6550         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
6551         gdk_property_delete): If window == NULL, assume the root window.
6552         (restoring the behaviour that was in 1.2).
6553         
6554         * gtk/testtext.c (save_buffer): Allow creation of new files when
6555         saving.
6556
6557         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
6558         calls to read().
6559
6560 2000-10-25  Tor Lillqvist  <tml@iki.fi>
6561
6562         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
6563
6564         * gdk/win32/gdkdrawable-win32.c
6565         * gdk/win32/gdkimage-win32.c
6566         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
6567         X11 backend.
6568
6569         * gdk/win32/gdkcc-win32.c
6570         * gdk/win32/gdkcolor-win32.c
6571         * gdk/win32/gdkfont-win32.c
6572         * gdk/win32/gdkinput-win32.c
6573         * gdk/win32/gdkmain-win32.c
6574         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
6575
6576 2000-10-24  Havoc Pennington  <hp@redhat.com>
6577
6578         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
6579         it a static function
6580
6581         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
6582         redraw text when a tag is applied to it.
6583
6584         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
6585         (gtk_text_tag_affects_nonsize_appearance): private functions to
6586         see if a tag requires various kinds of redraw/layout to be queued
6587         up.
6588
6589         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
6590
6591         * gtk/testtext.c (fill_example_buffer): Put the cursor 
6592         at the start of the buffer, so search works by default
6593
6594         * gtk/gtktextiter.c (lines_match): init match_start always
6595
6596         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
6597         function, get iter at a line + a byte index
6598
6599         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
6600         to set byte position within a line
6601         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
6602
6603 2000-10-23  Havoc Pennington  <hp@redhat.com>
6604
6605         * gtk/testtext.c: Re-enable the "find" dialog
6606
6607         * gtk/testgtk.c: Add test for gdk_drawable_get_image
6608         
6609         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
6610         the arguments to gdk_draw_drawable were in the wrong order
6611         (gdk_window_paint_init_bg): This function was ignoring the
6612         init_region, instead of clipping to it, so the entire backing
6613         pixmap was cleared on every begin_paint()
6614         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
6615         was in here again, the loop kept using the same GtkWindowPaint
6616         over and over.
6617         (gdk_window_begin_paint_region): Fix a bug where we had two
6618         x_offset instead of x_offset and y_offset
6619
6620         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
6621         before we get the image.
6622         (gdk_draw_drawable): get the composite before we draw the drawable.
6623         (gdk_drawable_real_get_composite_drawable): default
6624         get_composite_drawable implementation that returns the drawable 
6625         itself
6626
6627         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
6628         get_composite_drawable virtual function
6629
6630         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
6631         list-walking bug
6632
6633         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
6634         make this work if the source drawable is a GdkDrawableImplX11
6635         instead of a public drawable type. This is really broken; the
6636         problem is that GdkDrawable needs a virtual method get_xid(), but
6637         of course that doesn't work in practice. Enter RTTI.
6638
6639         Also, improve mismatched depth message.
6640
6641         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
6642         GdkPixmap
6643
6644         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
6645         install _gdk_x11_get_image as our implementation of get_image
6646         
6647         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
6648         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
6649
6650         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
6651         gdk_drawable_get_image
6652
6653         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
6654
6655         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
6656         get_image
6657
6658         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
6659         trailing semicolon after for loop
6660
6661 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
6662
6663         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
6664         where font_desc for widget's context lagged widget's font_desc by
6665         one step.
6666
6667 2000-10-22  Tor Lillqvist  <tml@iki.fi>
6668
6669         * gdk/win32/gdkgc-win32.c
6670         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
6671
6672         * gtk/makefile.mingw.in
6673         * gtk/gtk.def: Updates.
6674
6675         * gtk/testgtk.c: sleep() is called _sleep in MS's C
6676         library.
6677
6678         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
6679
6680         * gtk/makefile.msc: Remove
6681
6682         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
6683
6684         * gtk/Makefile.am: Add it.
6685
6686         * configure.in: Generate it.
6687
6688         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
6689         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
6690         something even if not implemented, to satisfy picky MSVC.
6691
6692         Patches by Hans Breuer:
6693         
6694         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
6695         SetBkMode() and SetTextAlign() before calling
6696         pango_win32_render().
6697
6698         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
6699         Set hcliprgn to NULL after destroying it.
6700         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
6701
6702         * gdk/win32/gdkgeometry-win32.c
6703         (_gdk_windowing_window_queue_antiexpose): More effective
6704         implementation.
6705
6706         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
6707         depth as default, not the visual's.
6708
6709         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
6710         against empty title.
6711
6712         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
6713         IMAGE_PRIVATE_DATA.
6714
6715         * gdk/win32/gdkimage-win32.c: Use it.
6716
6717 2000-10-22  Robert Brady  <robert@suse.co.uk>
6718
6719         * configure.in: Check for bind_textdomain_codeset
6720
6721         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
6722         present, make use of it.
6723
6724         Add a translatable string "default:LTR" which, if translated
6725         to "default:RTL", will cause the default direction to be
6726         Right-to-Left.
6727
6728         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
6729         direction if marked as flippable.
6730
6731         * gtk/gtkhscale.c: Mark widget as flippable.
6732         
6733 2000-10-04  Havoc Pennington  <hp@redhat.com>
6734
6735         * gtk/testgtk.c (create_buttons): create some stock buttons
6736         with the default accel group
6737         (create_image): test some new GtkImage features
6738         (make_message_dialog): test GtkMessageDialog
6739         (create_modal_window): fix someone's bizzarro indentation
6740
6741         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
6742         GTK_WIN_POS_CENTER_ON_PARENT. 
6743         Add "destroy with parent" setting, which means the window goes
6744         away with its transient parent.
6745         (gtk_window_get_default_accel_group): get the default accel group
6746         for the window.
6747         (gtk_window_set_destroy_with_parent): set/unset destroy with
6748         parent flag
6749         (gtk_window_read_rcfiles): invalidate icon set caches
6750         after reloading rcfiles 
6751
6752         * gtk/gtkenums.h (GtkWindowPosition): add
6753         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
6754         on its parent window when the dialog is mapped for the first time.
6755
6756         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
6757         a simple message dialog class
6758         
6759         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
6760         handler to emit response signal, and maybe later it would
6761         honor a hide_on_delete flag - though that isn't there yet.
6762         Set border width on the vbox to 2, so we get some padding.      
6763         Use a button box for the action area.
6764         (gtk_dialog_key_press): synthesize a delete event if Esc
6765         is pressed and the GtkWidget key press handler didn't 
6766         handle the escape key.
6767         (gtk_dialog_new_with_buttons): new function creates a dialog
6768         with some default buttons in it.
6769         (gtk_dialog_add_action_widget): add an activatable widget
6770         as a button in the dialog - you can also add a non-activatable
6771         widget by accessing the action area directly.
6772         (gtk_dialog_add_button): add a simple button - stock ID or 
6773         label - to the action area
6774         (gtk_dialog_response): emit response signal
6775         (gtk_dialog_run): block waiting for the dialog, return 
6776         the response. Override normal delete_event behavior, so that 
6777         delete_event does nothing inside gtk_dialog_run().
6778
6779         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
6780         emitted when an action widget is clicked or the dialog gets
6781         delete_event
6782
6783         * gtk/gtk.h: add gtkmessagedialog.h
6784
6785         * gtk/Makefile.am: add gtkmessagedialog.[hc]
6786
6787 2000-10-18  Havoc Pennington  <hp@redhat.com>
6788
6789         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
6790         where any number of empty lines would get skipped
6791
6792         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
6793         edge.
6794
6795         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
6796         warning about invalid iterators (explain more thoroughly)
6797         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
6798
6799         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
6800         big
6801
6802         * demos/*.c: Add error handling
6803
6804         * gtk/gtktextbuffer.c: don't modify const iterators
6805
6806         * gtk/gdk-pixbuf-loader.c: Add full error handling here
6807
6808         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
6809         on file load
6810
6811         * gtk/gtkiconfactory.c: Update to reflect addition of error
6812         handling to gdk-pixbuf loaders
6813
6814 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
6815
6816         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
6817         move to new modularized testgtk.
6818
6819 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
6820
6821         * gtk/gtktreeview.c: Draw the arrows correctly.
6822
6823         * gtk/gtktreemodel.c: Added user docs.
6824
6825         * gtk/gtk.h: remove gtktreedatalist.h.
6826
6827         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
6828         parent when generating my type.
6829
6830         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
6831         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
6832
6833 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6834
6835         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
6836         GtkTreeModel from object to interface.
6837
6838 2000-10-16  Havoc Pennington  <hp@redhat.com>
6839
6840         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
6841         compilation
6842
6843 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6844
6845         * gtk/gtktreeselection.c: Add API documentation to all public
6846         functions.
6847
6848         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
6849         functions.
6850
6851 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
6852
6853         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
6854         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
6855         docs to all public functions.
6856
6857         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
6858         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
6859         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
6860         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
6861         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
6862         issue.
6863
6864 2000-10-14  Robert Brady  <robert@suse.co.uk>
6865
6866         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
6867
6868 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
6869
6870         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
6871         values other then G_TYPE_STRING.
6872         * gtk/gtktreeselection.c: Minor commenting updates.
6873         * gtk/gtktreeview.c: Format updates.
6874
6875 2000-10-09  Tor Lillqvist  <tml@iki.fi>
6876
6877         * README.win32: Update.
6878
6879         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
6880         lines that had been deleted by mistake (?).
6881
6882         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
6883         also the case fg==white and bg==black (but still not randomly
6884         coloured cursors). Thanks to Wolfgang Sourdeau.
6885
6886         * gdk/win32/*.c: Silence gcc -Wall.
6887
6888         * gtk/gtk.def: Add missing entry points.
6889
6890         Fixes by Hans Breuer:
6891
6892         * gdk/makefile.msc
6893         * gdk/win32/makefile.msc: Update.
6894
6895         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
6896         some MSVC thing, presumably), cause breakpoint on failures. Add
6897         GDK_NOR case. Call g_log_set_always_fatal.
6898
6899         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
6900         should be pased by reference.
6901         
6902         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
6903         
6904         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
6905
6906         * gdk/win32/gdkevents-win32.c
6907         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
6908
6909         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
6910         implementation object.
6911
6912         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
6913         not just windows.
6914         
6915         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
6916         Use the wrapper object.
6917         
6918 2000-10-06  Havoc Pennington  <hp@redhat.com>
6919
6920         * Makefile.am (SRC_SUBDIRS): contrib subdir
6921
6922         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
6923         so it can be used in Xlib version
6924
6925         * demos/testpixbuf.c (update_timeout): error checking from 1.0
6926         tree
6927
6928         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
6929         change from 1.0 tree that returns first frame of animation
6930         if the loaded file is an animation.
6931
6932         * contrib: add new directory to hold stuff that comes with GTK+
6933         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
6934         
6935         * configure.in: add contrib/*
6936
6937 2000-10-05  Havoc Pennington  <hp@redhat.com>
6938
6939         * demos/testpixbuf-save.c: add pixbuf save test
6940
6941         * demos/Makefile.am: add testpixbuf-save.c
6942
6943 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
6944
6945         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
6946         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
6947         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
6948         * gtk/gtktreeselection.[ch]: Replaced
6949         "node_selected"/"node_unselected" signal with "selection_changed"
6950         signal.
6951
6952 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6953
6954         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
6955         tree widget.
6956
6957 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6958
6959         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
6960         drawing.
6961
6962 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
6963
6964         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
6965         Move list pointer forwards before removing item from
6966         list. (Crash reported by Salmaso Raffaele)
6967
6968         * gdk/gdkwindow.h: Remove spurious trailing ,
6969
6970         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6971         dependencies on uninstalled libraries, sorry folks.
6972
6973 2000-10-04  Havoc Pennington  <hp@redhat.com>
6974
6975         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6976         gtk/gtkiconfactory.c: Fix copyrights    
6977
6978         * demos/testpixbuf.c: add inline pixbuf test
6979         
6980 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6981
6982         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6983         Add gdk_window_iconify.
6984
6985         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6986         (gdk_window_set_geometry_hints): Add win_gravity
6987         to geometry structure.
6988
6989         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6990         Implement _NET_WM_PING.
6991
6992         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6993         Set _NET_WM_PID on the client leader.
6994
6995         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6996         Handle UTF-8 better.
6997
6998         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6999         UTF-8 better, set _NET_WM_NAME as well. Only set
7000         icon name if it hasn't previously been explicitely 
7001         set.
7002
7003 2000-10-03  Havoc Pennington  <hp@redhat.com>
7004
7005         * gtk/testtextbuffer.c: clean up trailing whitespace,
7006         add extensive tests for tag toggle iteration.
7007         
7008         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7009         distance
7010
7011         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7012         optimize case where the tag root is on level 1
7013         (gtk_text_line_previous_could_contain_tag): attempt to implement
7014         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7015         functionality
7016
7017         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7018         Implement this, though not very efficiently.
7019
7020         * gtk/gtktextiterprivate.h: reformat
7021
7022         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7023         iterator
7024
7025         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7026         this to properly revalidate the iterators.
7027
7028         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7029         properly at the end of the line (and therefore on empty lines)
7030
7031         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7032         maybe we should return a value...
7033
7034 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7035
7036         * config.h.win32: Guard definition of alloca(). glib.h now handles
7037         that.
7038
7039         * gdk/gdk.def
7040         * gtk/gtk.def: Add new entry points.
7041
7042         Changes just to make GTK+ build without errors on Win32. No hope
7043         of it working in its current state, though...:
7044         
7045         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7046         some functions from the X11 backend, just to make GTK+ build.
7047
7048         * gdk/makefile.mingw.in
7049         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7050         number. Add new object files.
7051
7052         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7053         GetMessageTime to get timestamp (where on X11 uses
7054         gdk_x11_get_server_time()).
7055
7056 2000-10-02  Havoc Pennington  <hp@pobox.com>
7057
7058         * gtk/gtktextview.c: text_window_* weren't static and should have
7059         been.
7060         Start work on child widgets; not yet complete, syncing to 
7061         office computer.
7062
7063         * gtk/gtktextchild.h: change this to contain a public interface,
7064         starting work on child interfaces.
7065         * gtk/gtktextchildprivate.h: move private interfaces here
7066
7067         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7068
7069         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7070         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7071         gtk/gtktextmark.c: copyright notices
7072
7073         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7074         internal functions      
7075
7076         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7077         internal function
7078
7079         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7080         Reformatting    
7081
7082 2000-09-30  Havoc Pennington  <hp@pobox.com>
7083
7084         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7085         NULL start/end pointers
7086
7087         * gtk/gtktextbuffer.c: Write some docs
7088         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7089         NULL, so you can just check whether there's a selection.        
7090
7091         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7092         cleanup_line or segments_changed ourselves, it gets done 
7093         in unlink_segment
7094
7095         * gtk/gtktextmark.h:
7096         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7097         
7098         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7099
7100         * gtk/gtktextmark.c: delete some more old Tk cruft
7101
7102         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7103         mark before removing it, so we can emit MARK_DELETED with a valid
7104         pointer.
7105         (gtk_text_buffer_mark_set): hold ref across signal emission
7106
7107         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7108         whining about attempts to delete special marks
7109
7110         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7111         underscore, since it's internal.
7112
7113         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7114         now implemented in terms of iterators in gtktextiter.h
7115
7116         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7117         New function, destructively sets contents of buffer. Also 
7118         a convenient way to clear the buffer by setting text to ""
7119
7120         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7121         multiline string literal
7122
7123         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7124         text changes.
7125
7126         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7127         is not dereferenceable
7128         (gtk_text_iter_forward_lines): fix return value
7129
7130 2000-09-29  Havoc Pennington  <hp@redhat.com>
7131
7132         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7133
7134         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7135         that set border window size to have nicer name
7136         (gtk_text_view_mark_set_handler):  Fix this to have the 
7137         right signature.
7138
7139         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7140
7141         * gtk/testtext.c: Update with API changes, put line numbers on 
7142         both sides.
7143         
7144         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7145         with this
7146
7147         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7148         pixbuf; delete a big block of #if 0 Tk code
7149
7150         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7151         insert_pixmap with insert_pixbuf
7152
7153 2000-09-29  Martin Baulig  <baulig@suse.de>
7154
7155         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7156         confusion with the GdkPixbuf of the GNOME 1.x platform.
7157
7158 2000-09-29  Havoc Pennington  <hp@pobox.com>
7159
7160         * gtk/gtktextview.c: Implement the side windows.
7161
7162         * gtk/testtext.c: Implement simple line numbering in the 
7163         left side window; seems to make scrolling sloooow. Oops.
7164         Also, cursor blink is for some reason causing redraws
7165         of the line numbers. Should investigate...
7166
7167 2000-09-28  Havoc Pennington  <hp@redhat.com>
7168
7169         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7170         scrolling child windows, and draw focus rectangle properly.
7171         
7172         (gtk_text_view_buffer_to_window_coords):
7173         Coordinate transformation to deal with all these freaking windows
7174         and offsets
7175         (gtk_text_view_window_to_buffer_coords): transform the other way
7176
7177         * gtk/testtext.c (create_buffer): Update to match Pango API change
7178
7179         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7180         anonymous tags
7181         (foreach_unref): don't emit remove signal from finalize, just
7182         set tag's parent to NULL
7183
7184 2000-09-26  Havoc Pennington  <hp@redhat.com>
7185
7186         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7187         Fix some warnings       
7188
7189 2000-09-26  Havoc Pennington  <hp@redhat.com>
7190
7191         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7192         headers into the private header list
7193
7194         * Makefile.am (pkgconfig_DATA): install pkg-config files
7195
7196         * configure.in: add pkg-config files
7197
7198         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7199
7200         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7201         outstanding icon caches on theme change.
7202
7203         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7204         important types:
7205
7206         (GtkIconSource): Specification for creating a pixbuf 
7207         appropriate for a direction/state/size triplet from 
7208         a source pixbuf or filename
7209
7210         (GtkIconSet): List of GtkIconSource objects that are used to
7211         create the "same" icon (e.g. an OK button icon), and cache for
7212         rendered icons
7213
7214         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7215         up the icon set for a given stock ID.  GTK maintains a stack of
7216         GtkIconFactory to search, and applications or libraries can add
7217         additional icon factories on top of the stack
7218         
7219         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7220         the set of GtkIconSource specified for a given stock ID into 
7221         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7222         RcStyle, under the specified stock ID.
7223
7224         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7225         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7226         This allows people to theme how prelight, insensitive, etc. are
7227         done.
7228
7229         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7230         icon factories for a style, and return the resulting 
7231         icon set if any.
7232
7233         (gtk_style_render_icon): Render an icon using the render_icon 
7234         method in the GtkStyleClass.
7235
7236         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7237         Use the style for a given widget to look up a stock ID, get the
7238         icon set, and render an icon using the render_icon method 
7239         of the style
7240
7241         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7242         (contains information about a stock item), the built-in stock item
7243         IDs, and functions to add/lookup stock items.
7244
7245         * gtk/stock-icons/*: Stock icons that come with GTK
7246
7247         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7248         a button based on a GtkStockItem
7249         (gtk_button_new_accel): Takes a uline string and accel group, and
7250         installs the accelerator.
7251
7252         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7253         image-display widget.
7254
7255 2000-09-25  Havoc Pennington  <hp@redhat.com>
7256
7257         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7258
7259         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7260         Fix a bug when removing node data, we didn't properly 
7261         re-splice the linked list after removing the data.
7262
7263         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7264         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7265
7266         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7267
7268         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7269         for the layout from the GtkTextTag.
7270
7271         * gtk/gtktexttypes.h: delete tab and search cruft, 
7272         remove g_convert() in favor of GLib version
7273
7274         * gtk/gtktexttypes.c: remove tab implementation from here,
7275         move to Pango
7276
7277         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7278         tab stuff using new PangoTabArray from Pango
7279
7280         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7281         unused border_width stuff
7282
7283 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7284
7285         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
7286         glib) and now useless utf_to_latin1() latin1_to_utf()
7287
7288         * gtk/gtktextview.[ch]: Change ::move_insert and
7289         ::delete_text action signals to ::move and ::delete;
7290         create the signals with the right enumeration type,
7291         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
7292         C-v bindings, change Home, End to move to beginning/end
7293         of line, Add C-Home C-End to move to beginning/end
7294         of buffer. Change ::cut_text to ::cut_clipboard, etc;
7295         combine ::scroll_text into ::move; use new GtkSelectionData
7296         functions to simplify DND text handling.
7297         
7298         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
7299         deletion enumerations here, rename enumeration values to 
7300         be consistently plural.
7301
7302         * gtk/gtktextbuffer.c: Use new clipboard interfaces
7303         for cut/copy/paste and primary selection.
7304
7305         * gtk/gtktextbuffer.[ch]: Remove excess time and
7306         'interactive' arguments from cut/copy/paste;
7307         rename cut to cut_clipboard, etc; remove
7308         gtk_text_buffer_get_clipboard_contents().
7309
7310         * gtk/gtktextlayout.[ch]: Add 
7311         gtk_text_layout_move_iter_to_line_end() to move the iter to 
7312         line ends.
7313
7314         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
7315         Functions to set or get a UTF-8 string on the selection
7316         data.
7317
7318         * gtk/gtkclipboard.[ch]: New, simplified selection handling
7319         interfaces.
7320
7321         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
7322         created widgets - one of these is useless if we don't.
7323
7324         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
7325         a public function clear all targets registered for the
7326         widget.
7327
7328         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
7329         Never call gtk_widget_realize() - that was just asking
7330         for bizarre side-effects.
7331
7332         * gtk/gtkselection.c (gtk_selection_owner_set): Call
7333         gdk_selection_owner_set even if the widget is the
7334         same so that we reliably update the timestamp on
7335         the server.
7336
7337         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
7338         gdk_x11_get_server_time() function.
7339         
7340         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
7341         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
7342         Add some tricky filtering on serial numbers for
7343         selection clear events to fix up long-standard
7344         race condition FIXME's in gtkselection.c.
7345
7346         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
7347         routines to convert from utf8 to compound text or
7348         STRING and from a text property to UTF-8.
7349
7350         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
7351         a convenience function gdk_get_current_event_time().
7352
7353         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
7354         and free selection_data->data properly
7355
7356 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
7357
7358         * gtk/gtkthemes.c: Remove some unecessary includes.
7359
7360 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
7361
7362         * gtk/gtktextdisplay.c
7363         * gtk/gtktextlayout.c
7364         * gtk/gtktexttag.c
7365         * gtk/gtktexttag.h
7366         * gtk/testtext.c: Change the overstrike property to strikethrough,
7367         to closer match pango.
7368
7369 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
7370
7371         * gtk/gtktextview.c: Fix up visibility so that focus,
7372         cursor_visible and blink interact properly.  Reenable cursor blink
7373         which had been roughly disabled. Make blink and focus
7374         properly per-view.
7375
7376         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
7377         Add a flag for whether to display insertion cursor and
7378         a function to set the flag.
7379
7380         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
7381         get_line_y() to get_line_yrange(), to be a bit more generally
7382         useful.
7383
7384 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
7385
7386         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
7387           do stop_navigating_submenu, to clear last timeout properly.
7388           Also in gtk_menu_motion_notify move ignore_enter above
7389           the conditional to make it always happen as suggested by Owen
7390
7391 2000-09-07  Tor Lillqvist  <tml@iki.fi>
7392
7393         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
7394
7395         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
7396         w32api headers.
7397
7398         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
7399         declarations.
7400
7401         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
7402         (gdk_win32_get_colormap): A line had been deleted by mistake.
7403
7404         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
7405         (gdk_event_translate): Handle more virtual keycodes to be able to
7406         generate GDK events for Control-comma, Control-period, etc.
7407
7408         * gtk/gtk.def: Add some missing entry points.
7409
7410 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
7411
7412         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
7413         Doc comment fixing. (Mostly non-matching parameter names.)
7414
7415         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
7416         comments a little to avoid looking like a doc comment.
7417
7418         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
7419         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
7420         conversions be changed to GError?)
7421
7422         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
7423         Move private #defines into .c file.
7424
7425         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
7426         order of argument addition, remove duplicates.
7427
7428         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
7429         parent class is FrameClass, not BinClass.
7430
7431         * gtk/gtk.h: Add gtkinvisible, which was missing.
7432         (It's occasionalyl useful for client apps, if seldom.)
7433
7434         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
7435         #define.
7436
7437 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
7438
7439         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
7440         coordinates when creating window, instead of GDK-space
7441         coordinates. (Avoid BadValue on too large windows.)
7442
7443 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7444
7445         * configure.in (use_mmx_asm): Remove conftest* after use along the
7446         lines of AC_TRY_COMPILE.        
7447         
7448         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
7449         of g_dirname, which is deprecated.
7450         (gtk_rc_parse_any): Removed calls to
7451         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
7452
7453         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
7454         Removed calls to g_hash_table_{freeze,thaw}, as they are
7455         deprecated now.
7456
7457         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
7458         instead of g_basename.
7459         
7460 2000-09-04 Elliot Lee <sopwith@redhat.com>
7461         
7462         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
7463         ANSI warning.
7464
7465 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
7466
7467         * gtk/gtkwidget.h:  Add some documenting comments about 
7468           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
7469           just as owen said on irc.
7470
7471         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
7472           set HAS_DEFAULT.  Only set it if there isn't another window
7473           holding it (a focus window which RECEIVES_DEFAULT) and only unset
7474           it if the widget is not the focused window with RECEIVES_DEFAULT.
7475           This fixes weird double default bugs in dialogs which has things
7476           call gtk_window_set_default at times.
7477
7478 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
7479
7480         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
7481         Nils Barth and David Santiago to improve submenu
7482         navigation. The patch does this by creating a triangular
7483         region from the point where the pointer leaves the
7484         menu to the submenu.  While the pointer is in
7485         that region and a timeout has not expired, events 
7486         that would cause the active submenu to change are
7487         ignored.
7488
7489 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
7490
7491         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
7492         moving a toplevel window immediately after sizing it would
7493         result in it being sized back to the old size since 
7494         impl->width, impl->height aren't updated until we hear
7495         back from the server. There is still a (longstanding) bug
7496         here that gdk_window_get_size() will give the wrong size
7497         until we do hear back.
7498
7499 2000-08-31  Havoc Pennington  <hp@redhat.com>
7500
7501         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
7502         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
7503         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
7504         Rename GtkTextStyleValues to GtkTextAttributes
7505
7506 2000-08-31  Havoc Pennington  <hp@pobox.com>
7507
7508         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
7509         for rapid testing whether an iterator is the end iterator
7510         (gtk_text_btree_new): init end line cache
7511         (gtk_text_line_is_last): use fast cached line to 
7512         see if we're the last line.
7513         (get_last_line): use cached line here too, should 
7514         speed up some random unrelated code.
7515         
7516 2000-08-30  Havoc Pennington  <hp@pobox.com>
7517
7518         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
7519         signals.
7520
7521         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
7522         delete_text signals. This allows the signals to be used for
7523         implementing undo.
7524
7525         * gtk/gtktextbuffer.c: Change signal handler signatures; 
7526         provide "interactive" argument when emitting insert_text or
7527         delete_text signal.
7528         
7529 2000-08-30  Havoc Pennington  <hp@pobox.com>
7530
7531         * gtk/gtktextbuffer.c: Docs
7532
7533 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
7534
7535         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
7536         from switch statements, since Tor removed the enumeration
7537         value.
7538         
7539         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7540         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
7541
7542 2000-08-29 Elliot Lee <sopwith@redhat.com>
7543         * */*.h: Use G_GNUC_CONST.
7544
7545 2000-08-27  Havoc Pennington  <hp@pobox.com>
7546
7547         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
7548         minor indentation fixes, inserted some FIXME about stuff I
7549         realized was broken while documenting it.
7550         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
7551         GTK convention  
7552
7553 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
7554
7555         * gtk/testgtk.c (create_styles): Fix double free of
7556         font desc.
7557
7558 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7559
7560         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
7561         
7562         * gtk/testgtk.c (create_styles): Add a test for modifying
7563         the style through gtk_widget_modify_*.
7564
7565         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
7566         a function to get the current modifier style.
7567
7568         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
7569         of the passed in GtkRcStyle instead of ref'ing it.
7570
7571         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
7572
7573 2000-08-20  Tor Lillqvist  <tml@iki.fi>
7574
7575         * gdk/gdkimage.h
7576         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
7577         shared memory image+pixmap GdkImage type, or
7578         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
7579         I am dropping that.
7580
7581         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
7582         actually call gtk_init_abi_check(), passing also
7583         sizeof(GtkWindow). Ditto for gtk_init_check(). 
7584
7585         * gtk/gtk.def
7586         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
7587         New functions, used to check that the GTK+-using code has been
7588         compiled using the correct compiler and switches. In particular,
7589         with gcc one has to use the -fnative-struct switch as GTK+ is
7590         compiled with that.
7591
7592 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
7593
7594         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
7595         ->prev fields when merging lists. (Found simultaneously
7596         by Pawel Salek and Jakub Jelinek)
7597
7598 2000-08-12  Tor Lillqvist  <tml@iki.fi>
7599
7600         * gdk/gdk.def
7601         * gtk/gtk.def: Add missing entries.
7602
7603         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
7604         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
7605
7606         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
7607         function. Dummy implementation at this point.
7608
7609         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
7610         rules. Undefine GTK_COMPILATION when compiling the test programs.
7611         
7612         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
7613
7614 2000-08-11  Tor Lillqvist  <tml@iki.fi>
7615
7616         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
7617         to convert back and forth from UTF-8 and the "system" (or "current
7618         locale") charset when necessary. Indentation/spacing cleanup.
7619
7620 2000-08-10  Havoc Pennington  <hp@redhat.com>
7621
7622         * Makefile.am (snapshot): Change the format of the snapshot
7623         version to match glib
7624
7625         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
7626         from EXTRA_DIST since it doesn't seem to exist
7627
7628 2000-08-10  Tor Lillqvist  <tml@iki.fi>
7629
7630         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
7631         version of the directory name (not the UTF-8 one) when building
7632         the path name to stat().
7633
7634 2000-08-03  Elliot Lee  <sopwith@redhat.com>
7635
7636         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
7637         PANGO_ATTR_SHAPE set.
7638
7639 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
7640
7641         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
7642         Peter Osterlund to simplify the code while keeping the
7643         functionality the same.
7644
7645 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
7646
7647         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
7648         is_viewable() test further inside the function, since removing the 
7649         window from the redraw list without clearing ->update_area
7650         was also very broken.
7651
7652 2000-08-02  Tor Lillqvist  <tml@iki.fi>
7653
7654         * configure.in: Check for <unistd.h>.
7655
7656 2000-08-01  Martin Baulig  <baulig@suse.de>
7657
7658         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
7659         to display the message that this is a development version of GTK+.
7660
7661 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
7662
7663         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
7664         was depending on widget->allocation instead of the width of text_area,
7665         which was incorrect for subclasses like GtkSpinButton.
7666
7667         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
7668         with width == 1 tests that should be width == -1.
7669
7670 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
7671
7672         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
7673         (broken, Elliot, every single window blank on X) custom code with call
7674         to gdk_window_is_viewable() which a) prevents code duplicate and
7675         b) works. 
7676
7677 2000-07-31  Elliot Lee  <sopwith@redhat.com>
7678
7679         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
7680         to get the GDK_PARENT_ROOT() macro to work.
7681         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
7682         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
7683         of, windows that aren't shown.
7684         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
7685         pointer grab stuff.
7686
7687 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
7688
7689         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
7690           s/gtk_main_iteration/g_main_iteration/
7691
7692           Did this already in change:
7693                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
7694           don't know how it got reverted.
7695
7696 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
7697
7698         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
7699         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
7700
7701         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
7702         not gdk_pixbuf.
7703
7704 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
7705
7706         * configure.in,po/{sp,sr}.po: Added Serbian files
7707
7708 2000-07-30  Tor Lillqvist  <tml@iki.fi>
7709
7710         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
7711
7712         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
7713         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
7714         GIOChannel implementation.
7715
7716         * gdk/win32/gdkinput.c
7717         * gdk/win32/gdkpango-win32.c: Update license name here, too.
7718
7719         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
7720         definition to match prototype.
7721
7722         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
7723
7724 2000-07-27  Elliot Lee  <sopwith@redhat.com>
7725
7726         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
7727         function, to allow handling image formats that cannot be detected
7728         by looking at content alone.
7729
7730 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
7731
7732         * docs/tutorial/*.gif *.jpg *.eps
7733           Update these to the same look-n-feel.
7734           Why does including images in DocBook suck so badly?
7735
7736 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
7737
7738         * gtk/gtktable.c: applied patch from Phil Thompson
7739         <phil@river-bank.demon.co.uk> that enables space settings for
7740         the last row/columns as well.
7741
7742 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
7743
7744         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
7745         updates the license headers to the GNU Lesser General Public License,
7746         as well as updating the copyright year to 2000.
7747
7748 2000-07-26  Robert Brady  <rwb197@zepler.org>
7749
7750         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
7751           and po/Makefile, was installing and looking for them under gtk20
7752           and gtk2 respectively.
7753
7754 2000-07-25  Havoc Pennington  <hp@redhat.com>
7755
7756         * gtk/testtext.c: Comment out some stuff that depends on the rest
7757         of my patches.
7758
7759 2000-07-25  Havoc Pennington  <hp@redhat.com>
7760
7761         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
7762         buffer
7763
7764 2000-07-25  Havoc Pennington  <hp@redhat.com>
7765
7766         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
7767         widget changes.
7768
7769         * gtk/gtktextview.h: To be consistent with usage of "line"
7770         throughout the API to mean "newline-terminated thingy", change
7771         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
7772         to MOVEMENT_LINE.
7773
7774         (GtkTextView): Add flags for default editability, and whether to
7775         show the cursor. Add functions to get/set that. Add 
7776
7777         (gtk_text_view_get_iter_location): new function
7778
7779         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
7780         gtktextlayout.h
7781         (g_convert): Add g_convert temporarily, will go in glib in a bit
7782         
7783         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
7784         GtkTextTagTableForeach instead of brokenly using GHFunc.
7785         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
7786
7787         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
7788         moved to public header.
7789
7790         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
7791         "invisible", since "elide" was a bad name.
7792         (gtk_text_tag_get_priority): Added
7793
7794         (GtkTextStyleValues): put this in public header, along with
7795         functions to use it.
7796
7797         * gtk/gtktextmarkprivate.h: Include more headers, since we no
7798         longer include gtktextbtree.h.
7799
7800         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
7801         gtk_text_mark_deleted
7802
7803         * gtk/gtktextlayout.h: Don't include the "really private" headers,
7804         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
7805         to make this possible. Now we only need to install
7806         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
7807         (However the Makefile.am isn't changed yet because of the
7808         logistics of merging gtk-hp-patches piecemeal)
7809
7810         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
7811         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
7812         gtk_text_iter_get_line is now used in the public API for a
7813         different purpose.
7814
7815         * gtk/gtktextiter.h: Clean up function names to be more
7816         consistent. Always call char offset "offset" and byte index
7817         "index". A "line" is always a line number. 
7818
7819         (gtk_text_iter_is_last): new function, more efficient than 
7820         the existing way to check
7821         (gtk_text_iter_is_first): new function, also more efficient
7822
7823         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
7824
7825         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
7826         gtk_text_iter_forward_char, etc.
7827
7828         (gtk_text_iter_forward_to_tag_toggle): Renamed from
7829         forward_find_tag_toggle, since this isn't a linear search
7830
7831         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
7832
7833         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
7834         New functions, search for a buffer substring.
7835
7836         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
7837         interactive and default editable (since we need to store that info
7838         until we receive the selection data).
7839
7840         Remove all the _at_char and at_line etc. versions of functions;
7841         only have iterator versions.
7842
7843         Add _interactive() versions of functions, that consider the
7844         editability of text. (FIXME add interactive flag to the 
7845         insert/delete signals per Darin's suggestion)
7846
7847         (gtk_text_buffer_get_tag_table): new function, demand-creates the
7848         tag table if necessary
7849
7850         Remove declaration of gtk_text_buffer_get_iter_from_string
7851
7852         (_gtk_text_buffer_get_btree): private/internal function, added.
7853         
7854
7855         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
7856         (gtk_text_line_is_last): new function
7857
7858 2000-07-25  Havoc Pennington  <hp@redhat.com>
7859
7860         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
7861         using GtkProgressBar. See Changes-2.0.txt for details.
7862
7863         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
7864         "pulse_step" which are the equivalent of
7865         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
7866         Implement new API.
7867         
7868         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
7869         (use_text_format) to mark whether text set on the progress bar is
7870         a format string. Deprecate entire GtkProgress interface.
7871
7872         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
7873         (gtk_progress_build_string): make this a no-op if use_text_format
7874         is FALSE
7875
7876         * docs/Changes-2.0.txt: Describe progress bar changes.
7877
7878 2000-07-25  Tor Lillqvist  <tml@iki.fi>
7879
7880         * Makefile.am: Include the build directory.
7881
7882         * configure.in: Generate build/Makefile, build/win32/Makefile,
7883         gdk/, gdk/win32/, and gtk/makefile.mingw.
7884
7885         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
7886         Add GETTEXT_PACKAGE.
7887         
7888         * gdk/gdk.def
7889         * gtk/gtk.def: Updates.
7890
7891         * gdk/gdkfont.h
7892         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
7893         need them any longer.
7894
7895         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
7896
7897         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
7898         PANGOWIN32_LIBS and gdk_pixbuf.
7899
7900         * gdk/win32: Compiles, but no doubt doesn't work at all.
7901
7902         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
7903
7904         * gdk/win32/gdkinput.c: New file, temporarily.
7905         
7906         * gdk/win32/gdkinput-win32.h: New file
7907
7908         * gdk/win32/gdkinputprivate.h: Remove.
7909
7910         * gdk/win32/gdkpango-win32.c: New file.
7911
7912         * gtk/makefile.mingw.in: New file
7913
7914         * gtk/makefile.cygwin: Removed
7915         
7916         * gtk/Makefile.am: Update accordingly.
7917
7918         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
7919         made externally visible.
7920
7921         * gtk/gtkmain.c: Use it.
7922         
7923         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
7924         is enough.
7925
7926         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
7927
7928 2000-07-24 Elliot Lee <sopwith@redhat.com>
7929         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
7930         individual backends already.
7931         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
7932         again. Yes, there really is a good reason for this, if you are using the gdkregion
7933         internals, and if you're not, why do you care?
7934         * gdk/gdkwindow.c: Fix inverted condition
7935         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
7936         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
7937         * gtk/gtkrange.c: Redraw trough when moving.
7938         * gtk/gtktypeutils.c: Fix warning by adding const cast.
7939         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
7940
7941 2000-07-23  Tor Lillqvist  <tml@iki.fi>
7942
7943         * configure.in: Check for mkstemp and sigsetjmp. Output
7944         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
7945
7946         More work on GDK for Win32. Still in an intermediate state.
7947
7948         * gdk/makefile.cygwin
7949         * gdk/win32/makefile.cygwin: Removed.
7950         
7951         * gdk/makefile.mingw.in
7952         * gdk/win32/makefile.mingw.in: New files.
7953
7954         * gdk/Makefile.am
7955         * gdk/win32/Makefile.am: Generate and distribute them.
7956
7957         * gdk/win32/gdkwindow-win32.h
7958         * gdk/win32/gdkdrawable-win32.h
7959         * gdk/win32/gdkpixmap-win32.h: New files.
7960
7961         * gdk/win32/gdkcolor-win32.c
7962         * gdk/win32/gdkcursor-win32.c
7963         * gdk/win32/gdkdrawable-win32.c
7964         * gdk/win32/gdkgc-win32.c
7965         * gdk/win32/gdkimage-win32.c
7966         * gdk/win32/gdkprivate-win32.h
7967         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
7968         Rename fields and variables called xcursor, xid, etc (these names
7969         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7970
7971 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7972
7973         * gtk/gtkentry.[ch]: Fix some problems with vertical
7974         alignment.
7975
7976         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7977         char/byte confusion.
7978
7979 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7980
7981         * gtk/gtktextview.c (changed_handler): Fix bug where
7982         redraw wasn't being done properly when height of
7983         dirty region changed.
7984
7985         * demos/Makefile.am: Remove various references to
7986         -lgmodule
7987
7988 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7989
7990         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7991         PangoAttrShape to reserve space for pixmaps, add 
7992         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7993         in the display functions.
7994         
7995         * gtk/testgtk.c (create_layout): Set some more exotic
7996         scrolled window options
7997
7998         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7999         Add function to set the shadow type of a window, to allow
8000         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8001         which don't draw their own frame.
8002
8003 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8004
8005         * docs/tutorial/package-db-tutorial.sh: New file for
8006           packaging DocBook format tutorial
8007
8008 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8009
8010         * docs/tutorial/gtk-tut.sgml: Minor updates
8011
8012         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8013
8014 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8015
8016         * gtk/gtksignal.c: Fix C++ comment.
8017
8018         * gtk/gtkimmulticontext.c
8019         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8020         don't return value from void functions.
8021
8022         * gtk/gtk.def: Add gtk_rc_style_unref.
8023
8024 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8025
8026         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8027         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8028         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8029         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8030         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8031         gtk/gtktypeutils.h: Include files outside of the extern "C"
8032         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8033         <vakatov@peony.nlm.nih.gov>.
8034
8035 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8036
8037         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8038           Completes first pass. Hurrah!
8039
8040 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8041
8042         * docs/tutorial/gtk-tut.sgml: More clean ups.
8043
8044 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8045
8046         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8047         paint the background of the text area which was accidentally
8048         removed at some point.
8049
8050         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8051           
8052          - Move most of the functionality from the theme vtable
8053            into GtkRcStyleClass and GtkStyleClass. The moved
8054            vtable functions were changed a bit in the move to
8055            work better in their new home.
8056
8057          - Get rid of the engine and engine_data fields from
8058            GtkRcStyle and GtkStyle; instead the theme
8059            engine derives theme-specific subclasses of GtkRcStyle
8060            and GtkStyle
8061
8062          - Add extra dlsym() found entry point to themes,
8063            theme_create_rc_style().
8064
8065         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8066         in gtk_style_real_copy.
8067
8068         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8069         to register a type associated with an engine. (The engine
8070         won't be unloaded as there is an instance of the type.)
8071
8072
8073 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8074
8075         * docs/tutorial/gtk-tut.sgml: Clean ups.
8076
8077 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8078
8079         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8080           of cleaning up to do.
8081
8082 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8083
8084         * gdk/testgdk.c: New file, quick hack to test backends for
8085         pixel-by-pixel correctness of the most simple graphic operations.
8086
8087 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8088
8089         * Really release 1.3.1
8090         
8091         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8092         include structure.
8093
8094 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8095
8096         * Released 1.3.1
8097
8098 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8099
8100         * gtk/gtktextlayout.c: use FALSE for size_only most
8101         of the time when calling gtk_text_layout_get_line_display()
8102         to avoid causing double reshapes when a redraw follows
8103         immediately after.
8104
8105 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8106
8107         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8108         appropriate region and gdk_window_process_updates() so trough
8109         updating doesn't lag behind the window being scrolled.
8110
8111         * gdk/gdkgc.c: Make parent_class pointer static.
8112          
8113 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8114
8115         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8116         include <string.h>.
8117          
8118         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8119         cut-and-paste error in computing memory offset for 4 channels.
8120
8121 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8122
8123         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8124         gtk_rc_append_default_pixmap_path(), since it wasn't
8125         adding an interesting path and we don't have a meaningful
8126         default for this value.
8127
8128 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8129
8130         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8131         gtk-config to gtk-config-2.0 move gtk_.m4 to
8132         gtk-2.0.m4
8133
8134         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8135         gdk/Makefile.am demos/Makefile.am: Change 
8136         library names to libgtk-1.3.la, etc, so that we
8137         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8138
8139         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8140         gdk/Makefile.am gdk/x11/Makfile.am
8141         Move include files into /usr/include/gtk-2.0, 
8142         /usr/lib/gtk-2.0/include/
8143          
8144         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8145         gtk/gtkintl.h: Change package for gettext from 
8146         gtk+ to gtk20. Put hack in autogen.sh to modify
8147         po/Makefile.in.in after gettextize to make this
8148         possible.
8149
8150         * gtk+.spec: Some updates, not tested.
8151
8152         * gdk-pixbuf/Makefile.am: Move loaders into
8153         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8154
8155         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8156         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8157         to THEMENAME/gtk-2.0/. Move engine directory  to
8158         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8159         
8160 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8161
8162         Win32 changes, still doesn't build though.
8163
8164         * gdk/makefile.cygwin
8165         * gdk/win32/makefile.cygwin
8166         * gtk/makefile.cygwin: Updates.
8167
8168         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8169         default values for fg and bg pixel as X11 does (0 and 1), not
8170         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8171         Use 0 for pen width by default (treated as 1 anyway later, but for
8172         apps that might check the value in the GdkGC).
8173         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8174         interface to gdk_gc_predraw and _postdraw.
8175
8176         * gdk/win32/gdkwin32.h
8177         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8178
8179         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8180         extraneous semicolon.
8181
8182         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8183
8184         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8185         not the Win32 bitspixel value.
8186
8187         * gdk/win32/gdkcc-win32.c:
8188         * gdk/win32/gdkcolor-win32.c 
8189         * gdk/win32/gdkprivate-win32.h
8190         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8191         GDK object structure.
8192
8193 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8194
8195         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8196         * docs/tutorial/gtk_tut_it.sgml (name): 
8197         * docs/tutorial/gtk_tut_fr.sgml (name): 
8198         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8199         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8200
8201 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8202
8203         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8204           small changes.
8205
8206 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8207
8208         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8209         a bug here, never been here and never fixed anything ;(
8210         (don't segfault if tree->root_tree is NULL, which happens prior
8211         to widget realization, but puke instead).
8212
8213 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8214
8215         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8216         add the necessary tokens.
8217
8218         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8219         (gtk_rc_style_to_style): copy thicknesses.
8220         (gtk_rc_init_style): apply thicknesses.
8221         (gtk_rc_parse_style): parse xthickness and ythickness.
8222
8223         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8224
8225         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8226         (gdk_window_new): 
8227         (_gdk_windowing_window_init): 
8228         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8229         (gdk_pixmap_create_from_data): 
8230         (gdk_bitmap_create_from_data): 
8231         (gdk_pixmap_new): 
8232         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8233         (gdk_image_new): 
8234         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8235         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8236         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8237         (gdk_colormap_get_system): 
8238         (gdk_colormap_new): 
8239         * gdk/gdkwindow.c (gdk_window_init): 
8240         * gtk/gtkstyle.c (gtk_style_new):
8241         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8242         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8243         * gtk/gtkrc.c (gtk_rc_style_new):
8244         use g_object_new() instead of g_type_create_instance() which
8245         is a private function for fundamental type implementations.
8246
8247 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8248
8249         * configure.in: Add check for db2html
8250
8251 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8252
8253         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8254         hack to set glib_debug_objects based on gtk_debug_flags.
8255
8256 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8257
8258         * INSTALL.in: Update the Prerequisites section.
8259
8260         * Makefile.am demos/Makefile.am docs/Makefile.am
8261         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8262         gdk/linux-fb/Makefile.am: Dist fixes
8263
8264 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8265
8266         * NEWS: 10,000 foot view of 1.3.1 changes.
8267
8268 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8269
8270         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8271         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8272         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8273         gdk/x11/gdkmain-x11.c: 
8274
8275         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8276         as a return value of gdk_*_grab(). Previously, we just
8277         returned the X11 values directly.
8278
8279 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8280
8281         * gdk/x11/Makefile.am: Patch from George Lebl to 
8282         install all the headers in the right place.
8283
8284 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
8285
8286         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
8287           initial conversion to DocBook.
8288
8289 2000-07-04  Tor Lillqvist  <tml@iki.fi>
8290
8291         * README.win32: Improve a bit.
8292
8293         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
8294         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
8295         Alt+0nnn on the numpad (used to enter characters by numeric code
8296         from current DOS or ANSI codepage) working correctly, as in other
8297         Windows apps.
8298
8299         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
8300         same argument validity tests as in X11 version.
8301         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
8302
8303         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
8304         definitions in case missing from headers.
8305
8306         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
8307         destroy the window-specific cursor.
8308         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
8309         calling GetModuleHandle(NULL).
8310         (gdk_window_set_cursor): Reworked to always copy the passed cursor
8311         with CopyCursor before setting it as the window-specific
8312         cursor. It is OK for the caller to destroy the GdkCursor (and thus
8313         also its Windows cursor) after calling this function. Destroy any
8314         previous window-specific cursor.
8315
8316 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
8317
8318         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
8319         font charset is iso8859-1, not iso-8859-1.
8320
8321 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
8322
8323         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
8324         Use g_get_charset() instead of g_get_codeset().
8325
8326         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
8327         Comment out some strdup'ing functions to keep timj
8328         happy until we finish fighting this out.
8329
8330 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
8331
8332         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
8333         <= width or height.
8334
8335         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
8336         from 1.2 for parent/child states.
8337
8338         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
8339         of typos.
8340
8341         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
8342         event structures, replace with a generic axes field. Replace 
8343         deviceid/sourec with GdkDevice *device.
8344
8345         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
8346         to extract particular axis use value from event. (Also
8347         can be used for normal X/Y.)
8348
8349         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
8350         allow for arbitrary number of axes, namespace everything
8351         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
8352         everywhere.
8353
8354         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
8355         Get rid of the gdk_input_vtable setup if favor of simply
8356         defining the functions in gdkinput-none/gxi/xfree.c in
8357         a similar fashion to the way that the port structure is 
8358         done.
8359
8360         * gtk/gtkdnd.c: Fix fields of synthesized button press event
8361         for new event structures. 
8362
8363         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
8364         new device interfaces.
8365
8366 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
8367
8368         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
8369         set the initial text.
8370
8371         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
8372         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
8373         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
8374         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
8375
8376         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8377         pango_layout_set_font_description to simplify.
8378
8379 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
8380
8381         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8382         pango_layout_set_font_description to simplify.
8383
8384 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
8385
8386         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
8387         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
8388         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
8389
8390         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
8391         PANGO_PIXELS() macro.
8392
8393 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
8394
8395         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
8396         that returns a PangoContext owned by the widget and updated to
8397         match future changes in the widget. Also, make 
8398         gtk_widget_create_pango_layout() use this context. If we ever
8399         add a ::changed signal to PangoContext, this will make things
8400         much more convenient. 
8401
8402         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
8403         in the appropriate places instead of destroying the layouts and
8404         creating new ones.
8405
8406         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
8407         in a few strategic places.
8408
8409 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
8410
8411         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
8412         gtk_widget_size_request() on reparented child, if one. Otherwise,
8413         queue_resize() on the child never results in it getting size-requested
8414         at all.
8415
8416         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
8417         in option menus, so that (with luck) people won't copy it into
8418         their apps in the future.
8419
8420         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
8421         to gtk_option_menu_calc_size. This isn't perfect, but should fix
8422         a lot of problems with changing the size of the menu's menu
8423         items after adding it to the option menu.
8424
8425         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
8426
8427         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
8428         the text direction for a widget changes.
8429
8430         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
8431         ::direction_changed to get rid of various hacks.
8432
8433 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
8434
8435         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
8436         name.
8437
8438 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
8439
8440         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
8441         flag to the structure. Do not call XFreePixmap on pixmaps created
8442         by gdk_pixmap_foreign_new().
8443
8444 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
8445
8446         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
8447         value using GdkRGB functionality given GdkColormap and GdkColor.
8448         (name not final, waiting for inspiration.)
8449         
8450         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
8451         set the foreground/background of a GC using the GC's colormap
8452         and GdkRGB. (name not final, waiting for inspiration.)
8453
8454         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
8455         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
8456
8457         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
8458         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
8459         purely a function of the corresponding colormap. Make
8460         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
8461
8462         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
8463         gdk_pixbuf_*create_from_xpm_* in terms of
8464         gdk_pixbuf_new_from_xpm_data(), move into platform independent
8465         code.
8466
8467         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
8468         advantage of the new draw_rgb_32_image_dithalign.
8469
8470         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
8471
8472         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
8473         on each created GC.
8474
8475         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
8476
8477         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
8478         which we initialize from the drawable when the GC is created,
8479         if the drawable has a colormap.
8480
8481         * gdk/x11/gdkgc-x11.c: include string.h for memset.
8482
8483         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
8484
8485         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
8486
8487 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
8488
8489         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
8490         actually returning expose events, make sure to set
8491         the count field properly.
8492
8493         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
8494         accidentally reintroced bug which always cleared
8495         the graphics_exposures value. 
8496
8497 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
8498
8499         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
8500
8501 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
8502
8503         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
8504
8505 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
8506
8507         * docs/faq/gtk-faq.sgml: Start of Section 6.
8508
8509 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
8510
8511         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
8512         
8513         (Fixes problem with drawing childless frames. Pointed out
8514         by and a first patch from Anders)
8515         
8516         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
8517         compute a child_allocation, even if we don't have a child.
8518
8519         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
8520         Always chain to the parent's impl, even if we don't have a child.
8521
8522 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8523
8524         * gdk/gdkrgb.c: If possible, create only a single shm segment and
8525         use multiple parts of it instead of creating a bunch of separate
8526         segments, since the maximum number of segments per system is not
8527         large. (This might be worth backporting to GTK+-1.2.x if we make a
8528         new release )
8529
8530         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
8531         structure in preparation for per-colormap GdkRGB.
8532
8533         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
8534         to False when we get EINVAL from shmget so that the caller of
8535         gdk_image_new can retry with a smaller segment size.
8536
8537 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
8538
8539         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
8540
8541 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
8542
8543         * configure.in: make the current version number 1.3.1 (binary age 0,
8544         interface age 0).
8545         
8546         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
8547         gtkcompat.h is all we want.
8548
8549         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
8550         GLib primitive types. fixed g_type_register_fundamental() argument
8551         ordering.
8552
8553         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
8554         compiles.
8555
8556         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
8557         object code cleanup, comment trigraph fixes, etc...
8558
8559 2000-06-23  Havoc Pennington  <hp@redhat.com>
8560
8561         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
8562         instead of making up a bogus name for first_para_mark
8563
8564         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
8565         0 as a context ID
8566
8567 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
8568
8569         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
8570
8571 2000-06-21  Havoc Pennington  <hp@pobox.com>
8572
8573         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
8574         we didn't check window->bg_pixmap != GDK_NO_BG.
8575
8576         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
8577         gdk-pixbuf
8578
8579 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
8580
8581         * docs/faq/gtk-faq.sgm: Move file to here.
8582           TODO: Update Makfile.am 
8583
8584 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
8585
8586         * docs/gtk-faq.sgm: Add Section 2
8587
8588 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
8589
8590         * docs/gtk-faq.sgm: New file. Start of DocBook
8591           version of the FAQ.
8592
8593 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
8594
8595         * configure.in (GDK_PIXBUF_MAJOR): Define version
8596         numbers for GDK_PIXBUF_*, as they get substituted
8597         into a header file. Need to consider versioning
8598         for gdk-pixbuf more carefully later.
8599
8600 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
8601
8602         Work with srcdir != builddir.   
8603         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
8604         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
8605         * demos/testpixbuf.c: Likewise.
8606         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
8607         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
8608         <gdk/x11/gdkx.h>.
8609         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
8610         "gdk-pixbuf.h".
8611         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
8612
8613 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
8614
8615         * TODO.xml: Change 1.4 version numbers to 2.0.
8616
8617 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
8618
8619         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
8620         fixups to GTK+ standard.
8621
8622 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
8623
8624         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
8625         gdk-pixbuf.
8626
8627         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
8628         fixups for GObject.
8629
8630         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
8631         gdk-pixbuf with GDK dependencies moved into GDK.
8632         
8633         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
8634         move gdk-pixbuf-loader here until GObject has signals.
8635
8636         * demos/: New directory of demos. Move demos from
8637         gdk-pixbuf here.
8638
8639         * demos/pixbuf-init.c: Small bit of code to check for
8640         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
8641         set GDK_PIXBUF_MODULEDIR appropriately.
8642
8643         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
8644         define which no longer makes sense.
8645
8646 2000-06-21  Havoc Pennington  <hp@redhat.com>
8647
8648         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
8649         gtk_get_default_language
8650
8651         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
8652         new function to get the default language
8653
8654         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
8655         s/gtk_text_view_style_values/gtk_text_style_values/
8656
8657         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
8658         Add a "language" field to tags.
8659
8660         (gtk_text_tag_set_arg): Fix bug in setting
8661         "bg_full_height_set" tag.
8662
8663 2000-06-21  Havoc Pennington  <hp@redhat.com>
8664
8665         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
8666         in the interfaces
8667
8668         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
8669         stuff instead when possible.
8670
8671         * gtk/gtktexttypes.h: Delete some unused constants
8672
8673         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
8674         testtextbuffer.c: use glib instead of custom unicode routines
8675
8676 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
8677
8678         * docs/es/: Removed mistakenly added generated sgml
8679
8680         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
8681         Remove outdated info files.
8682
8683         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
8684         Moved tutorial files into subdir
8685
8686         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
8687         subdir.
8688
8689         * docs/man/gtk_button.pod: Remove. (contents will be
8690         integrated into gtk-reference button page.)
8691
8692         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
8693         docs/faq/Makefile.am: Adjust for new organization
8694
8695 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
8696
8697         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
8698         not $(MKINSTALLDIRS)
8699
8700 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
8701
8702         * gtk/testgtk.c (create_text): Finish the job Elliot started
8703         of removing font setting test for text widget. (Since text widget
8704         and GdkFont are not deprecated, and cause portability problems.)
8705
8706 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
8707
8708         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
8709         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
8710         Remove use of libunicode in favor of new GLib functions.
8711
8712         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
8713         nano-x, framebuffer. The X11 include is just a hack until we get
8714         the necessary functions in gdkcolor.h, so there is no reason to
8715         add other includes of platforms.
8716
8717         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
8718         window bigger than the screen change.
8719
8720         * gtk/testgtk.c: Revert some random changes from Elliot
8721         that had no particular point and were causing testgtkrc
8722         not to function correctly.
8723         
8724         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
8725         because GdkSegment and GdkRegionBox have the same fields,
8726         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
8727         results in clearer code.
8728
8729         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
8730         gdk_input_translate_coordinates): Fix missed GdkObjectification
8731
8732 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8733
8734         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
8735         * gtk/gtk{plug,socket}.h: Missed commits from previous.
8736
8737 2000-06-20  Havoc Pennington  <hp@redhat.com>
8738
8739         * modules/linux-fb/Makefile.am: Make this compile
8740         without framebuffer enabled
8741
8742         * gdk/linux-fb/Makefile.am: Add conditional to not build
8743         framebuffer unless specified in configure
8744
8745         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
8746         the size of the target instead of source if -1 was passed for
8747         width/height
8748
8749         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
8750         width/height confusion.
8751
8752 2000-06-19  Havoc Pennington  <hp@redhat.com>
8753
8754         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
8755         GDK_DRAWABLE_XID. In the future, we probably want to make it
8756         faster with G_DISABLE_CHECKS turned on.
8757
8758 2000-06-14  Havoc Pennington  <hp@redhat.com>
8759
8760         * gdk/Makefile.am: add gdkpixmap.c
8761
8762         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
8763         s/gdk_image_init/_gdk_windowing_image_init
8764
8765         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
8766         ref/unref
8767
8768         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
8769
8770         * gdk/gdkcompat.h: remove GdkWindowType compat, since
8771         GdkWindowType is now non-deprecated; 
8772         change gdk_window_get_type() compat to be
8773         gdk_window_get_window_type().
8774
8775         * gdk/gdkdnd.h: make GdkDragContext a GObject.
8776
8777         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
8778         virtual GObject. Make all functions call into the vtable.
8779         Move gdk_image_put() guts in here. Remove GdkDrawableType
8780         and gdk_drawable_get_type(), these are now GdkWindow-specific.
8781         draw_image, get_depth, get_size, set_colormap, get_colormap,
8782         get_visual added to the vtable.
8783         
8784         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
8785         GObject. Virtualize everything. 
8786         (gdk_gc_new_with_values): remove check for destroyed window,
8787         because now GdkWindow::create_gc will check this.
8788         (gdk_gc_set_values): New function to set GC values, this 
8789         was already implemented but wasn't in the header
8790
8791         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
8792
8793         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
8794         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
8795         remove _gdk_window_class; add _gdk_window_impl_get_type() and
8796         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
8797         _gdk_windowing_window_init, rename gdk_image_init to
8798         _gdk_windowing_image_init.
8799         
8800         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
8801         (gdk_draw_layout): Remove check for destroyed window, 
8802         because all the drawable methods already check it.
8803         
8804         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
8805         Add gdkpixmap.c which contains implementation of GdkDrawable
8806         virtual table (by chaining to a platform-specific implementation
8807         object).
8808         
8809         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
8810         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
8811         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
8812         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
8813         GdkColormapPrivate. 
8814
8815         * gdk/gdktypes.h: #include <glib-object.h>
8816
8817         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
8818         Move most functionality to platform-specific implementation
8819         object. GdkWindow itself now handles the backing store, then
8820         chains to the platform-specific implementation.
8821         (gdk_window_get_window_type): return GdkWindowType of the window.
8822         (gdk_window_peek_children): New routine, returns the children of 
8823         a GdkWindow
8824         (gdk_window_get_children): Was in X11-specific code and did 
8825         XQueryTree. Changed to simply return a copy of window->children; 
8826         so it can go in cross-platform code.
8827         
8828         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
8829
8830         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
8831         GdkColormap; just changed to use the new private data instead
8832         of casting to GdkColormapPrivate.
8833
8834         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
8835         gdk_cursor_new().
8836
8837         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
8838         (private data member in the GObject). 
8839         (xdnd_manager_source_filter): Function had broken 
8840         error handling, fix it (use gdk_error_trap_push).
8841
8842         * gdk/x11/gdkdrawable-x11.c: This file now implements
8843         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
8844         base class is purely for the convenience of the X port,
8845         and not part of the interface to cross-platform GDK.
8846
8847         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
8848         
8849         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
8850         specific to X, and returned by the create_gc virtual method
8851         of GdkDrawableImplX11. 
8852         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
8853         rather than gchar, this was also changed in the GdkGC vtable.
8854         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
8855         mask is 0, return immediately, instead of checking every flag.
8856         This is faster, and keeps us from segfaulting if values is NULL
8857         and the mask contains some nonzero flags.
8858
8859         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
8860         GdkWindow.
8861
8862         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
8863         GdkWindowPrivate is gone.
8864
8865         * gdk/x11/gdkim-x11.c: rename things that got renamed.
8866
8867         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
8868         remove the image_put stuff that got transferred to GdkDrawable.
8869         
8870         * gdk/x11/gdkinput.c: renamings
8871
8872         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
8873
8874         * gdk/x11/gdkpixmap-x11.c: GObject conversion
8875
8876         * gdk/x11/gdkprivate-x11.h: indentation fixes
8877
8878         * gdk/x11/gdkproperty-x11.c: renamings
8879
8880         * gdk/x11/gdkselection-x11.c: renamings
8881
8882         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
8883         implements the platform-specific "impl" object.
8884         Moved gdk_window_get_children to gdk/gdkwindow.c
8885
8886         * gdk/x11/gdkx.h: Remove all the private structs and private datas
8887         that no longer exist. Add declaration of GdkGCX11 object here.
8888         Fix all the macros to still work. 
8889
8890         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
8891         GdkDragContext from the boxed types since they are now GObjects.
8892
8893         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
8894         moved xthickness/ythickness into the instance. GtkStyleClass
8895         functions are now in the standard vtable for GtkStyle, so you have
8896         to create a GObject subclass to write a theme engine.
8897         (gtk_style_copy): fixed a leaked PangoFontDescription
8898         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
8899         can be the standard GObject function.
8900         
8901         * Throughout GTK:
8902         s/style->klass->[xy]thickness/style->[xy]thickness
8903         s/pango_layout_unref/g_object_unref/
8904
8905         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
8906         
8907         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
8908         accessing GDK internals.
8909
8910         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
8911         accessing GDK internals.
8912
8913 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8914
8915         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
8916
8917         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
8918         problem by calculating event position relative to the trough
8919         rather than the slider.
8920         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
8921
8922         * gdk/gdkgc.h: Add GDK_NOR.
8923
8924         * configure.in, Makefile.am: Add modules top level dir
8925         * configure.in: Only use pangox library if building x11 target.
8926         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
8927
8928 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8929
8930         * gtk/gtkcolorsel.c: Change private class member to be named
8931         private_data throughout the file.
8932
8933         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
8934         private_data to avoid clashing with keyword.
8935
8936 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8937
8938         * gdk/gdkdnd.h: Add comment to remove warning.
8939
8940 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
8941
8942         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
8943         Byelorussian language; changed the Makefile and file names 
8944         to reflect that.
8945
8946 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
8947
8948         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
8949         rather than gdk_window_hide; this makes things work
8950         correctly if the window is programmatically hidden while
8951         iconified.
8952
8953 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
8954
8955         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
8956         cut and paste typo where wrong pixmap was being
8957         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
8958
8959 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
8960
8961         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
8962         Add helper function to compute format / bytes 
8963         relationship. Use in a couple places to fix up
8964         errors which assume 8 * format.
8965
8966         * gtk/gtkselection.c (gtk_selection_request): Use 32
8967         rather than 8 * sizeof (GdkAtom), to work correctly
8968         on Alpha.
8969
8970 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8971
8972         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8973         libgtk.la
8974         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8975         versions
8976
8977         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8978         checking macros return NULL since the function has a return value.
8979
8980 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8981
8982         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8983         GTK+ from building at all.
8984
8985         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8986
8987 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8988
8989         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8990         gtk/Makefile.am: make it possible to configure gtk for different
8991         targets on the same platform. The library name is now 
8992         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8993         flag. Only the x11 target compiles right now.
8994         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8995         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8996         * gdk/nanox/gdk*generic*: delete generic region code.
8997         * gdk/linux-fb/gdk*generic*: delete generic region code.
8998         * README.nanox: update information.
8999         
9000 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9001
9002         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9003         prepend not append. (Pointed out by Brett Hall.)
9004
9005 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9006
9007         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9008
9009 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9010
9011         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9012         need this later, and this makes sure that the atexit for
9013         glib gets called after that for GDK, so atexits are
9014         properly ordered for object leak checking.
9015
9016         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9017
9018         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9019         pango_x_shutdown_display()
9020
9021         * gtk/simple.c (main): Close window on destroy.
9022
9023 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9024
9025         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9026         to treat initial creation different from setting with 
9027         regards to the graphics-exposures parameter, so add a parameter
9028         indicating whether this is initial or not.
9029
9030 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9031
9032         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9033         to sort of work by adding an extra return_exposes arg
9034         to gdk_event_translate() - it might be better to simply
9035         deprecate the function altogether and force people to rewrite
9036         without it. gdk_window_scroll() handles most of it, and where
9037         gdk_window_scroll() doesn't work, simply redrawing more does.
9038
9039         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9040         assertion.
9041
9042         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9043
9044         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9045         bunch of pretty much useless /* Print debugging info */ comments 
9046         which had drifted away from the code they were commenting.
9047
9048 2000-06-02  Havoc Pennington  <hp@pobox.com>
9049
9050         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9051         is in working order.
9052         
9053         * gtk/testtext.c: Change to reflect anonymous mark API
9054
9055         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9056
9057         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9058         field, which was unused.
9059
9060         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9061         saves some typing.
9062
9063         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9064
9065         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9066         flag on the insertion point and selection bound
9067
9068         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9069         make mark-manipulation functions take a GtkTextMark* instead of a
9070         mark name.
9071         
9072         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9073         GtkTextMarkBody; will be used to detect attempts to delete
9074         the permanent marks (insert and selection bound)
9075
9076         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9077
9078 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9079
9080         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9081         flag to on.
9082
9083         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9084         Honor DOUBLE_BUFFRED_FLAG
9085
9086         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9087         function to set the DOUBLE_BUFFERED flag.
9088
9089         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9090         or not exposes done on the widget should be double-buffered.
9091
9092         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9093         to be what would be expected. (Fixes problem with a
9094         g_return_if_fail() validating a TextDirection enumeration)
9095
9096 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9097
9098         * gtk/gtkwidget.c: Remove all references to 
9099         offscreen flag which was no longer used.
9100
9101         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9102
9103         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9104         for non-null label_widget->parent.
9105
9106         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9107         which no longer was used.
9108
9109         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9110
9111         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9112         for null arguments.
9113
9114         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9115         check for destroyed windows.
9116
9117 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9118
9119         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9120         the slave context there.
9121
9122         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9123         identical to GtkWindow.
9124
9125 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9126
9127         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9128         pangox to here, so we can write them independent of rendering
9129         system, using GDK primitives.
9130
9131         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9132         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9133         since we have a rendering-system independent implementation in
9134         terms of draw_glyphs().
9135         
9136         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9137         function to render a single line.
9138
9139         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9140         into ../gdkpango.c, which simplifies things, since we
9141         don't have to deal with raw X gc's.
9142
9143 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9144
9145         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9146         get the logical attributes for a given GtkTextLine.
9147
9148 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9149
9150         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9151         g_locale_get_codeset() to g_get_codeset() change.
9152
9153 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9154
9155         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9156         descriptions.
9157
9158         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9159         the entry.
9160
9161         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9162         redoing (vastly simplifying) for Pango. Still needs quite
9163         a bit of work. (Size selection is currently poor. List of 
9164         predefined sizes is not a good idea, since all of these
9165         sizes won't necessarily be distinct.)
9166
9167 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9168
9169         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9170         CODESET results for LANG=C.
9171
9172 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9173
9174         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9175         which takes a stringized pango font description;
9176         ignore the older 'font' and 'fontset' declarations.
9177
9178         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9179         field with a GdkFont derived via gdk_font_from_description(),
9180         for compatibility. (Should we just remove it entirely?
9181         Probably too much compatibility breakage, but people
9182         should be migrating to the new Pango stuff as quickly
9183         as possible.)
9184
9185 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9186
9187         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9188
9189 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9190
9191         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9192         redoing; there are some bugs in size allocation right
9193         now, the semi-existant distinction between header / day
9194         fonts was removed, but, with Pango, could actually
9195         be made functional in a nice way.
9196         
9197         * gtk/testcalender: Move calender from examples into this
9198         directory as a test program. (We really need to restrcture
9199         testgtk into a whole directory full of tests for every
9200         widget or functionality group, separated into multiple .c
9201         files.)
9202
9203 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9204
9205         * gtk/testgtk.c (file_exists): Fix stupid typo that
9206         was keeping RC file from being loaded.
9207
9208         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9209         RC file font code.
9210
9211 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9212
9213         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9214         Add function to load a GdkFont from a PangoFontDescription.
9215
9216 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9217
9218         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9219         variable should be of type GdkEventPrivate.
9220
9221 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9222
9223         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9224         to have any widget for the label, use a GtkLabel widget
9225         to display the text. (Based partially on a patch from
9226         Anders Carlson.)
9227
9228         (Quite a bit of code reorganization - strip 90% of the
9229         guts out of gtkaspectframe and add a single virtual
9230         func to GtkFrameClass - compute_child_allocation.)
9231
9232 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9233
9234         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9235         (Removed clist->row_center_offset field because caching
9236         it wasn't saving time or code, added private function
9237         _gtk_clist_create_cell_layout()).
9238
9239 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9240
9241         * gtk/gtkaccellabel.c: Pangoized.
9242
9243         * gtk/[hv]ruler.c: Pangoized
9244
9245 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9246
9247         * gtk/gtkfilesel.c (gtk_file_selection_init):
9248         Use gtk_clist_set_column_auto_resize() to remove need
9249         need for manual column width computations.
9250
9251 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9252
9253         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9254         ensuring Pango correctness, and considerably simplifying the
9255         code.
9256         
9257         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9258
9259         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9260         getting of numbers of lines.
9261
9262         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9263         to the actual requested width of the lable, not to the wrap
9264         width we set.
9265
9266         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9267
9268         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9269           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9270
9271         * gtk/gtktextview.c: Fix structure inheritance.
9272
9273         * gtk/gtkprogressbar.c: Pangoize.
9274
9275 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9276
9277         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9278         in a function.
9279
9280         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9281         bug with computing line tops.
9282
9283         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9284
9285 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9286
9287         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
9288         and y_offset coordinates to do what we need now. (The offset between
9289         buffer and layout coordinates has been reintroduced, but is a 
9290         bit different than before.)
9291
9292         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
9293         handle the adjustments ourselves, and scroll as necessary using
9294         the new gdk_window_scroll().
9295         
9296         The advantage of this is that when we are incrementally revalidating,
9297         we are essentially rearranging things around the visible portion
9298         of the screen. With the old setup, the visible portion of the
9299         screen was moved around in the layout, so scrolling and redrawing
9300         to track that caused jumping of the display. Since we now
9301         control the scrolling ourselves, we can suppress this and
9302         only redraw when things actually change.
9303
9304 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
9305
9306         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
9307         the region not just redisplay it after-all, since we store the
9308         cursors in the LineDisplay. (Ugly interactions here between
9309         GtkLayout and GtkTextBTree here.)
9310         
9311         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
9312
9313 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9314
9315         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
9316         Added function to scroll contents of a window while keeping the
9317         window constant. Works by XCopyArea or guffaw-scrolling depending
9318         on the details of how the window is set up. (guffaw-scrolling
9319         still needs to be filled in.)
9320
9321 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
9322
9323         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
9324         move the debugging that was tied to a global variable
9325         to that.
9326
9327         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
9328
9329         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
9330         validated flag, in line data instead of setting height/width to
9331         -1. This allows us to perform operations with partially invalid
9332         buffer (using the old size for invalid lines) and thus to do
9333         incremental vaidation. Keep height/width aggregates up to date
9334         when deleting text and rebalancing the tree.
9335
9336         * gtk/gtktextbtree.[ch]: Add functions validate a line
9337         (gtk_text_btree_validate_line), and to validate up
9338         to a number of pixels (gtk_text_btree_validate).
9339
9340         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
9341         that indicates that something is changed and a revalidation
9342         pass is needed. Change ::need_repaint to ::changed, and
9343         make it take old and new yranges instead of a rectangle.
9344
9345         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
9346         the line_data_destroy() function from 
9347         gtk_text_btree_add_view() to a virtual function in 
9348         GtkTextLayout
9349
9350         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
9351         since we are handling partial repaints in a different fashion
9352         now.
9353
9354         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
9355         of the selection instead of queueing a repaint on the
9356         entire widget.
9357
9358         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
9359         get_selection_bounds() down to btree, make the function
9360         in buffer a wrapper around the btree function.
9361
9362         * gtk/gtktextlayout.[ch]: Add functions to check if the
9363         layout is valid and to recompute either a range of pixels
9364         aroudn a line or a certain total number of pixels.
9365
9366         * gtk/gtktextlayout.[ch]: Cache a single line display;
9367         now that we only redraw the needed portions, the hit rate
9368         for this cache is quite high.
9369         
9370         * gtk/gtktextview.[ch]: Keep track of the first paragraph
9371         on the screen so that when re-laying-out the buffer, we can
9372         keep the same place. This requires connecting to ::value_changed
9373         on the adjustments
9374
9375         * gtk/gtktextview.[ch]: Add idle functions to revalidate
9376         the buffer after we receive an ::invalidated signal.
9377         
9378 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
9379
9380         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
9381         to max of allocation and layout size, not just to the
9382         layout size.
9383
9384         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
9385         Invalidate window so it gets redrawn properly.
9386
9387         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
9388         to mean the entire window.
9389
9390         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
9391         into public header.
9392
9393 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9394
9395         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
9396         to get the name of a mark.
9397
9398         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
9399         to find the paragraph from a y position.
9400
9401 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
9402
9403         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
9404         nodes have width/height >= 0, not > 0.
9405
9406 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
9407
9408         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
9409         Add a size_only flag, so when we only need the size, we don't create
9410         useless appearance attributes.
9411
9412         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
9413         duplicate setting of font description.
9414
9415         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
9416
9417 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9418
9419         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9420         EXTRA_DIST. It does not work well when the file that
9421         everything depends on is not in the tarball.
9422
9423 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9424
9425         * gtk/testgtk.c: Some hacks and fixes so that it basically
9426         works when not sitting in the GTK+ build tree.
9427
9428 2000-05-03  Havoc Pennington  <hp@redhat.com>
9429
9430         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9431         Properly determine the ordering of the tag root and the current
9432         line within the tree. Previous algorithm only worked if the tag
9433         root's immediate parent was the common root of both the current
9434         line and the tag root.
9435
9436 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
9437
9438         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
9439         alignment.
9440
9441         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
9442         the widget text directional dynamically.
9443
9444         * gtk/gtktextview.[ch]: Added functions to get and set default
9445         wrap mode.
9446
9447 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
9448
9449         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
9450         in cursor location computation.
9451
9452 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
9453
9454         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
9455         vadjusment values properly when layout gets smaller.
9456
9457         * gtk/gtktextview.c (need_repaint_handler): Areas being
9458         passed in are far completely inaccurate, and sometimes
9459         too small, so, for now, just queue a redraw on the
9460         whole visible region.
9461
9462 2000-04-25  Havoc Pennington  <hp@redhat.com>
9463
9464         * gtk/gtktextbtree.c (summary_destroy): new function to 
9465         destroy tag summary nodes
9466         (gtk_text_line_next_could_contain_tag): this function was 
9467         totally broken if the line passed in wasn't below the tag
9468         root. Fix it.
9469         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
9470         "wildcard" case, we have to do a linear scan. Blah.
9471         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
9472         we have to do the linear scan
9473         (tag_removed_cb): When a tag is removed from the tag table, 
9474         remove the GtkTextTagInfo node from the btree.
9475         (gtk_text_btree_spew): Implement the spew function, for 
9476         our debugging pleasure.
9477
9478 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
9479
9480         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
9481         a problem with referring to the wrong buffer.
9482
9483         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
9484
9485         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
9486         font description to gtk_style_new() - otherwise things
9487         don't work without a .gtkrc file.
9488
9489         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
9490         tags table if we create it ourself, too.
9491
9492         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
9493         it was conflicting with XKB modifiers.
9494
9495         * gtk/gtktextview.[ch]: Add simple support for 
9496         GtkIMContext.
9497
9498 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
9499
9500         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
9501         with deletion from last commit.
9502
9503 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
9504
9505         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
9506         in the context from the current locale.
9507         
9508         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
9509         context, not hardcoded value.
9510
9511         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
9512         not logical.
9513
9514 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9515
9516         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
9517         attributes - that doesn't handle partial-glyph selection
9518         properly. Instead use new pango_layout_line_get_x_ranges()
9519         functionality to draw the selection.
9520
9521         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
9522         now properly handles out-of-range coordinates.
9523
9524         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
9525
9526         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
9527         public.
9528
9529         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
9530         for paragraphs opposite to the base direction of the widget.
9531
9532         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
9533
9534         * gtk/gtktextlayout.c: Don't split segments on marks, since that
9535         causes Arabic words to reshape as you cursor through.
9536
9537         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
9538         cursor position when moving vertically with the arrow keys and
9539         scrolling with page-up/page-down. (Arrow keys save only the X,
9540         scrolling saves both X and Y.)
9541
9542         This means you can line-up / line-down or page-up / page-down
9543         without losing your place, and also that moving vertically
9544         with the cursor keys keeps the same X position, not the same
9545         character count:
9546
9547         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
9548         arrow keys move by display lines, not paragraphs.
9549
9550 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9551
9552         * gtk/gtklayout.c: Make sure that the bin window is at least
9553         as big as the allocation. (Should we also make sure that the
9554         bin window is big enough to completely cover widget->window?)
9555
9556         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
9557         function to get the onscreen rectangle.
9558
9559         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
9560         for offsets in window coordinates.
9561
9562 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
9563
9564         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
9565         confusion.
9566
9567         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
9568         from the widget direction.
9569
9570         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
9571         Add a "direction" attribute.
9572
9573         * gtk/gtktextview.c: global s/tkxt/text_view/.
9574
9575         * gtk/testtext.c: Added long block of text in Arabic, to test out
9576         the direction attributes. (Some problems with the shaping system
9577         for arabic become obvious - like the fact the cursor splits words
9578         into unjoined pieces.)
9579
9580 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
9581
9582         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
9583
9584         * gtk/gtktextlayout.c: Fix up alignment.
9585
9586         * gtk/testtext.c: Add some tests for centering, wrapping.
9587
9588 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
9589
9590         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9591         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
9592         If we wrote GTK+-specific layout-render function this could just replace
9593         the draw_layout() operation in the vtable.
9594
9595         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
9596         pango_layout_get_cursor_pos() and use that function.
9597
9598         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
9599         is a non-static symbol.
9600
9601         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
9602         with gtk_text_btree_find_line_by_y()
9603
9604         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
9605         renderer that handles GtkTextAppearance attributes.
9606
9607         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
9608
9609           - Move the values in the style that don't affect geometry into a
9610             GtkTextAppearance structure.
9611           - Change underline to take a PangoUnderline and "font" a string
9612             representation of a font description
9613           - Add a "font_desc" attribute which takes a FontDescription structure.
9614
9615         * gtk/gtktextlayout.[ch]:
9616
9617           - Get rid of the display-line list per each line. Instead, we
9618             generate, on demand, a GtkTextLineDisplay structure which]
9619             contains a PangoLayout * and other necesary information
9620             (offsets, cursor locations) for displaying a paragraph.
9621           - Get rid of the code to wrap lines, create display chunks,
9622             etc. Instead, we just go through a paragraph and convert
9623             it into the necessary inputs to a PangoLayout.
9624           - Implement a new attribute type, GtkTextAttrAppearance. This
9625             holds a GtkTextAppearance, and is used to pass colors, 
9626             stipple, etc, through from the layout to the display without
9627             having to use lots and lots of individual attributes.
9628           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
9629             in terms of PangoLayout functions.
9630         
9631         * gtk/gtktextview.c: 
9632          
9633           - Handle passing the necessary PangoContext to the layout
9634           - Some fixups in painting to deal with the automatic backing store
9635             and offsetting of GTK+-1.4
9636           - Add a style_set handler so that the default style reacts
9637             properly to theme changes.
9638         
9639         * gtk/gtktext?*.[ch]: Random code-style fixes.
9640
9641         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
9642
9643 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
9644
9645         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
9646         in original form preparatory to Pango-ization and gdkimcontext-ization.
9647
9648 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
9649
9650         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
9651         so that we can derive from gtkimcontext in language bindings properly.
9652
9653 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
9654
9655         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
9656         Add a compose table including (almost) all the compose combinations
9657         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
9658         data in the XIM implementation.
9659
9660         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
9661         Moved functions to convert keyvalues from and to unicode here from
9662         the win32 port and made them public.
9663
9664 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9665
9666         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
9667
9668 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
9669
9670         * gtk/gtkimcontext.[ch]: Base class for new input context system
9671
9672         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
9673         the real input context implementation to be loaded from modules
9674         and switched on the fly.
9675
9676         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
9677         context that just does direct keysymbol => unicode translation.
9678
9679         * gtk/gtkentry.[ch]: Start switching editing over to using
9680         GtkInputContext. (No handling of preedit yet.)
9681
9682 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
9683
9684         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
9685         many substitutions. (klass should not be subsituted.)
9686
9687 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
9688
9689         * configure.in: Add checks for Pango
9690
9691         * configure.in docs/Makefile.am: Add test for sgml2html
9692         and allow 'make dist' without building html, but print out
9693         warnings in that case. (For making snapshots)
9694
9695         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
9696         Add Pango libraries and C flags
9697
9698         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9699         Add function (gdk_draw_layout) to draw a pango layout.
9700
9701         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
9702         for getting Pango contexts for GDK.
9703
9704         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
9705
9706         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
9707         editing.
9708
9709         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
9710         keysym => unicode translations. More languages can be added
9711         here, but real input-method support is needed.
9712
9713         * docs/Changes-1.4.txt: Added note about entry behavior.
9714         
9715         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
9716         to set the reading direction for a widget and the global direction.
9717         Add test which allows toggling the global direction. Two private
9718         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
9719
9720         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
9721           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
9722
9723         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
9724
9725         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
9726         underlining now handled by Pango.
9727
9728         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
9729         to RCStyle and Style. (Having both this and the old font name and GdkFont 
9730         is temporary.)
9731
9732         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
9733         convenience functions for creating contexts and layouts for widgets.
9734
9735         * gtk/testgtk.c: Enhance label tests with multilingual labels.
9736
9737 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
9738
9739         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
9740         titles to be active, even if they aren't visible.
9741         (gtk_clist_column_titles_passive):  Ditto.
9742
9743 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
9744
9745         * gtkmenu.c:
9746         * gtkmenu.h:
9747         * gtktypeutils.h: Spelling/grammar fixes in comments.
9748
9749 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
9750
9751         * gdk/nanox/*.h: add missing header files.
9752
9753 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
9754
9755         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
9756         send_event to TRUE.
9757         (gtk_drawing_area_size): queue a resize.
9758
9759 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
9760
9761         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
9762         the handlers, also invalidate them. bug nailed down by Karl Nelson
9763         <kenelson@ece.ucdavis.edu>.
9764
9765 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
9766
9767         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
9768         "(nil)" foundries, patch from Grigorios Magklis.
9769
9770         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
9771         on non-available fonts, based on a patch by Grigorios Magklis
9772         <maglis@cs.rochester.edu>.
9773
9774 2000-05-18  Elliot Lee  <sopwith@redhat.com>
9775
9776         * gdk/x11/gdkregion-generic.c: If a region does not have any
9777         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
9778         instead of GDK_OVERLAP_RECTANGLE_IN.
9779
9780 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
9781
9782         * gtk/gtklayout.c (gtk_layout_map): Remove references to
9783         OFFSCREEN, as it is no longer necessary.
9784
9785 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
9786
9787         * gtk/gtkcolorsel.c: Patch from David Santiago
9788         <mrcooger@cyberverse.com> to change things so that the 
9789         indicator of the active palette entry is done independently,
9790         not via the focus, since it should always be visible.
9791
9792 2000-05-17  Tor Lillqvist  <tml@iki.fi>
9793
9794         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
9795         refcount leaks as in the X11 backend.
9796
9797         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
9798         cosmetics.
9799
9800         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
9801         backend. Add _gdk_windowing_window_destroy().
9802
9803         * gtk/gtkcolorsel.c: Include correct backend-specific header.
9804         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
9805         either, but these probably do exist on nanox?)
9806         
9807         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
9808         which isn't necessarily defined by <math.h>.
9809
9810         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
9811         ancestry past GtkObject.
9812
9813         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
9814         from DLL on Win32.
9815
9816         * gtk/gtk.def: Update corresponding to recent changes.
9817
9818         * gtk/makefile.{cygwin,msc}: Updates.
9819
9820 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
9821
9822         * docs/Changes-1.4.txt: A bit of editing.
9823
9824         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
9825         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
9826         to clear the update area for the window, and clear it
9827         when hiding a window.
9828
9829         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
9830         if window destroyed.
9831
9832         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
9833
9834         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
9835         gdk_window_destroy() to the generic code, since there was a lot of 
9836         window-system-independent logic it in. Add a function:
9837         
9838          _gdk_window_destroy() 
9839
9840         to the internal API to destroy a window without unreferencing it.
9841         Add a function:
9842
9843          _gdk_windowing_window_destroy()
9844
9845         That does the windowing-system-dependent part of destroying 
9846         the window.
9847
9848 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
9849
9850         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
9851
9852 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
9853
9854         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
9855         Make gtk_widget_shape_combine_mask() keep a reference count on
9856         the pixmap since it keeps it around.
9857
9858 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
9859
9860         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
9861         leak.
9862
9863         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
9864         leak with event filters.
9865
9866 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
9867
9868         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
9869         signal handlers with the right data arguments. (Fixes
9870         some warnings when a widget was repeatedly set as a drag
9871         destination.)
9872
9873         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
9874         window so we can avoid avoid setting the DND properties on the
9875         toplevel window repeatedly.
9876
9877 2000-05-13  Tor Lillqvist  <tml@iki.fi>
9878
9879         * gdk/win32/gdkwin32.h: Define more message types missing from
9880         mingw headers.
9881
9882         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
9883         call gdk_window_destroy_notify(). It was never called. This
9884         probably meant that the GdkWindow was never freed. Thanks Owen for
9885         noticing (!).
9886
9887         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
9888         window as destroyed before calling DestroyWindow(). DestroyWindow()
9889         causes a call to the window procedure (gdk_WindowProc), which
9890         calls gdk_event_translate(), which calls
9891         gdk_window_destroy_notify(), which gets confused unless the window
9892         is set as destroyed.
9893
9894         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
9895         this function to indicate it's win32 only. Put inside #ifdef
9896         G_ENABLE_DEBUG.
9897
9898         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
9899         debugging function. (gdk_event_translate:) Add a default branch
9900         that uses the above function to print debug messages with all
9901         Windows messages symbolically.
9902
9903         * gdk/win32/gdkprivate-win32.h: Declare it, and
9904         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
9905
9906 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
9907
9908         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
9909         public header file.
9910
9911 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
9912
9913         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
9914
9915         * gtk/gtktext.c: made the adjustments no-construct args, simply
9916         provide default adjustments.
9917         (gtk_text_destroy): release adjustments.
9918
9919         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
9920         adjustment argument non-construct.
9921
9922         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
9923         instead of in finalize.
9924         (gtk_progress_get_text_from_value): 
9925         (gtk_progress_get_current_text): 
9926         (gtk_progress_set_value): 
9927         (gtk_progress_get_percentage_from_value): 
9928         (gtk_progress_get_current_percentage): 
9929         (gtk_progress_set_percentage): 
9930         (gtk_progress_configure): ensure an adjustment is present.
9931
9932 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
9933
9934         * gtk/gtkcolorsel.[hc]:
9935         * gtk/gtkcolorseldialog.[hc]:
9936         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
9937         their parent implementation, use bit fields for boolean values, don't
9938         create unused widgets, usage of glib types, braces go on their own
9939         lines, function argument alignment, #include directives etc. etc. etc..
9940
9941         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
9942
9943 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
9944
9945         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
9946
9947         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
9948         of NULL.
9949
9950         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
9951         to freed data.
9952         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
9953
9954         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
9955         to NULL when the toplevel is getting destroyed.
9956         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
9957         (gtk_menu_destroy): 
9958         (gtk_menu_init): store the information of whether we have to
9959         readd the initial child ref_count during destruction in a new
9960         GtkMenu field needs_destruction_ref_count.
9961
9962         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
9963         here, those reading: learn from my mistake! ;)
9964         in order for set_?adjustment to support a default adjustemnt if
9965         invoked with an adjustment pointer of NULL, the code read (pseudo):
9966         if (v->adjustment) unref (v->adjustment);
9967         if (!adjustment) adjustment = adjustment_new ();
9968         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
9969         now imagine the first unref to actually free the old adjustment and
9970         adjustment_new() creating a new adjustment from the very same memory
9971         portion. here, the latter comparision will unintendedly fail, and
9972         all hell breaks loose.
9973         (gtk_viewport_set_hadjustment):
9974         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9975         after unreferencing it.
9976
9977         * gtk/gtkcontainer.[hc]: removed toplevel registration
9978         functions: gtk_container_register_toplevel(),
9979         gtk_container_unregister_toplevel() and
9980         gtk_container_get_toplevels() which had wrong semantics
9981         anyways: it didn't reference and copy the list.
9982
9983         * gtk/gtkwindow.c: we take over the container toplevel registration
9984         bussiness now. windows are registered across multiple destructions,
9985         untill they are finalized. the initial implicit reference count
9986         users are holding on windows is removed with the first destruction
9987         though.
9988         (gtk_window_init): ref & sink and set has_user_ref_count, got
9989         rid of gtk_container_register_toplevel() call. add window to
9990         toplevel_list.
9991         (gtk_window_destroy): unref the window if has_user_ref_count
9992         is still set, got rid of call to
9993         gtk_container_unregister_toplevel().
9994         (gtk_window_finalize): remove window from toplevel list.
9995         (gtk_window_list_toplevels): new function to return a newly
9996         created list with referenced toplevels.
9997         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9998
9999         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10000         adjustment a non-construct arg.
10001         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10002         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10003         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10004
10005         * gtk/gtkrange.c: added some realized checks.
10006         (gtk_range_destroy): get rid of the h/v adjustments in the
10007         destroy handler instead of finalize. remove timer.
10008         (gtk_range_get_adjustment): demand create adjustment.
10009
10010         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10011         we simply create them on demand now and get rid of them in
10012         the destroy handler.
10013         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10014         destroy handler instead of finalize.
10015         (gtk_viewport_get_hadjustment): 
10016         (gtk_viewport_get_vadjustment): 
10017         (gtk_viewport_size_allocate): demand create h/v adjustment
10018         if required.
10019
10020         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10021         gtk_widget_real_destroy () functionality.
10022         (gtk_widget_real_destroy): reinitialize with a new style, instead
10023         of setting widget->style to NULL.
10024
10025 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10026
10027         * gtk/gtkcalendar.c:
10028         * gtk/gtkbutton.c: ported _get_type() implementation over to
10029         GType, either to preserve memchunks allocation facilities,
10030         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10031
10032         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10033         over. prepare for ::destroy to be emitted multiple times.
10034         removed reference tracer magic. chain into GObjectClass.shutdown()
10035         to emit ::destroy signal.
10036
10037         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10038         fundamental.
10039
10040         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10041         cludge.
10042
10043         * gtk/gtksocket.c:
10044         * gtk/gtkplug.c:
10045         * gtk/gtklayout.c:
10046         * gtk/gtklabel.c:
10047         * gtk/gtkargcollector.c:
10048         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10049         not being a fundamental anymore, and to work with the new
10050         type system (nuked fundamental type varargs clutter).
10051
10052         * gtk/*.c: install finalize handlers in the GObjectClass
10053         part of the class structure.
10054         changed direct GTK_OBJECT()->klass accesses to
10055         GTK_*_GET_CLASS().
10056         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10057
10058         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10059         GType. made most of the GTK_*() type macros and Gtk* typedefs
10060         simple wrappers around macros and types provided by GType.
10061         most notably, a significant portion of the old API vanished:
10062         GTK_TYPE_MAKE(),
10063         GTK_TYPE_SEQNO(),
10064         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10065         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10066         GTK_TYPE_ARGS,
10067         GTK_TYPE_CALLBACK,
10068         GTK_TYPE_C_CALLBACK,
10069         GTK_TYPE_FOREIGN,
10070         GtkTypeQuery,
10071         gtk_type_query(),
10072         gtk_type_set_varargs_type(),
10073         gtk_type_get_varargs_type(),
10074         gtk_type_check_object_cast(),
10075         gtk_type_check_class_cast(),
10076         gtk_type_describe_tree(),
10077         gtk_type_describe_heritage(),
10078         gtk_type_free(),
10079         gtk_type_children_types(),
10080         gtk_type_set_chunk_alloc(),
10081         gtk_type_register_enum(),
10082         gtk_type_register_flags(),
10083         gtk_type_parent_class().
10084         replacements, where available are described in ../docs/Changes-1.4.txt.
10085         implemented compatibility functions for the remaining API.
10086
10087         * configure.in: depend on glib 1.3.1, use gobject module.
10088
10089 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10090
10091         * TODO.xml: Various updates to current status.
10092
10093 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10094
10095         * gtk.m4: Print out version when test succeeds.
10096
10097 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10098
10099         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10100         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10101         
10102         (Original triangle color selector from Simon Budig
10103         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10104         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10105         Santiago <mrcooger@cyberverse.com>)
10106
10107         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10108         out into a separate widget.
10109
10110         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10111         and opacity controls.
10112
10113 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10116         snuck in prematurely.
10117
10118 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10119
10120         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10121         had deleted a ! operator by mistake, which caused
10122         GDK_SELECTION_CLEAR events never to be generated, which caused
10123         only the first copy to the clipboard from an gtkeditable to
10124         actually cause a copy to the Windows clipboard.
10125
10126 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10127
10128         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10129         compilation, too. Current mingw gcc distributions include the
10130         necessary headers. Also the necessary IIDs are now in mingw
10131         headers/libraries, and own definitions unnecessary.
10132
10133         More hacking on OLE2 DND, still doesn't work though, and thus
10134         ifdeffed out.
10135
10136         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10137         here, too.
10138
10139 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10140
10141         * gdk/nanox/*: nano-X port work in progress.
10142         * gdk/simple.c: simple test for Gdk.
10143         * README.nanox: notes about the port: read this first!
10144         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10145         with nano-X.
10146
10147 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10148
10149         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10150         gdk_window_clear() into common code, implement in terms of
10151         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10152         not redirected to the backing rectangle.
10153
10154 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10155
10156         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10157         EXTRA_DIST. It does not work well when the file that
10158         everything depends on is not in the tarball.
10159
10160 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10161
10162         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10163         with recursion where process_updates() is called from
10164         an expose handler. (GtkTextView is highly broken in
10165         doing this, but it should work, so it is a nice test
10166         case.)
10167
10168 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10169
10170         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10171         handle the case where updates are queued during processing of
10172         updates.
10173
10174 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10175
10176         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10177         window is on gdk_display - use that instead of segfaulting.
10178
10179 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10180
10181         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10182         broken and require an empty arg, give it to them.
10183
10184 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10185
10186         * gtk/gtklabel.h: indentation fixes.
10187
10188 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10189
10190         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10191         draw too narrow or too low arcs, they seem to fail, at least with
10192         some display drivers.
10193
10194         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10195
10196         Large changes to the Win32 backend, partially made necessary by
10197         the changes to the backend-independent internal
10198         structures. Attempts to implement similar backing store stuff as
10199         on X11. The current (CVS) version of the Win32 backend is *not* as
10200         stable as it was before the no-flicker branch was merged. A
10201         zipfile with that version is available from
10202         http://www.gimp.org/win32/. That should be use by "production"
10203         code until this CVS version is usable. (But note, the Win32
10204         backend has never been claimed to be "production quality".)
10205
10206         * README.win32: Add the above comment about versions.
10207
10208         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10209
10210         * gdk/gdk.def: Update.
10211
10212         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10213         presumably be replaced by some more better mechanism as 1.4 gets
10214         closer to release shape.
10215
10216         * gdk/makefile.{cygwin,msc}: Update.
10217
10218         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10219         internal headers. Change code according to changes in these. Use
10220         gdk_drawable_*, not gdk_window_* where necessary.
10221
10222         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10223         our old DND.
10224
10225         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10226         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10227         Use correct function name in warning messages.
10228
10229         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10230         GSourceFuncs gdk_event_prepare and gdk_event_check.
10231         (gdk_event_get_graphics_expose): Do implement, use
10232         PeekMessage. Thanks to Hans Breuer.
10233         (event_mask_string): Debugging function to print an GdkEventMask.
10234         (gdk_pointer_grab): Use it.
10235
10236         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10237         (old) book I used claimed was Hangul actually is CJK Unified
10238         Ideographs Extension A. Also, Hangul Syllables were missing.
10239         Improve logging.
10240
10241         * gdk/win32/gdkgc-win32.c: Largish changes.
10242
10243         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10244         g_win32_getlocale() from GLib, and not setlocale() to get current
10245         locale name.
10246
10247         * gdk/win32/gdkprivate-win32.h
10248         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10249         gdkwin32.h, similarily as in the X11 backend.
10250
10251         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10252         assignment was used instead of equals in if test. Thanks to Hans
10253         Breuer.
10254
10255         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10256         the X11 version.
10257
10258         * gdk/win32/makefile.{cygwin,msc}
10259         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10260         path to the Win32 headers that works also with the mingw compiler.
10261
10262         * gtk/gtkstyle.c: Include <string.h>.
10263
10264 2000-04-26  Havoc Pennington  <hp@redhat.com>
10265
10266         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10267         replacing the broken gtk_label_get ()
10268
10269 2000-04-15  Havoc Pennington  <hp@pobox.com>
10270
10271         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10272         this keeps scanner scripts from getting confused.
10273
10274         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10275         data, rather than void
10276
10277 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10278
10279         * gtk/gtkclist.c (gtk_clist_motion)
10280         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10281         with is_hint FALSE, get x and y from the event. They used to be
10282         used uninitialised. The Win32 backend never sends motion events
10283         marked as hints. This for instance fixes the annoying file and
10284         font selector behaviour in the Win32 version.
10285
10286 2000-04-14  Tor Lillqvist  <tml@iki.fi>
10287
10288         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
10289         gtk_private_n_signals variables, they are used by some software,
10290         sigh.
10291
10292         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
10293         installation directory from the Registry, where the installer
10294         should have put it.
10295
10296 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
10297
10298         * gdk/x11/Makefile.am: Fix problem with installation directory for
10299         gdkx.h
10300
10301         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
10302         <mrcooger@cyberverse.com> so that when selecting menus with the
10303         mouse, the first item will not be selected, but when selecting
10304         with an accelerator, or navigating left-right on a menubar with
10305         the menus popped up, the first item will be selected.
10306
10307 2000-04-05  Dan Damian  <dand@dnttm.ro>
10308
10309         * configure.in: Added "ro" to ALL_LINGUAS.
10310
10311 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
10312
10313         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
10314         indentation.
10315
10316         * Makefile.am (EXTRA_DIST): Fix typo.
10317
10318         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
10319         to catch gdkconfig.h
10320
10321         * gtk/gtkitemfactory.c: Added FIXME.
10322
10323 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
10324
10325         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
10326         s/return_if_fail/return_val_if_fail/g and add a return value.
10327
10328 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10329
10330         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
10331         merge slipup.
10332
10333         * gdk/gdkinput.h: Fix missing line from merge.
10334
10335 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
10336
10337         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
10338         instead of gdkprivate.h.
10339
10340 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
10341
10342         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
10343         parent class to correctly be GtkDialogClass.
10344
10345 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
10346
10347         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
10348         toplevel windows and their immediate children by their parents,
10349         since the size of toplevel windows is out of our immediate
10350         control and we don't get any real benefit from trying to track
10351         this size for clipping.
10352
10353         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
10354         for input_only windows.
10355
10356         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
10357         to fix some hacks and make sure that we don't try to set the
10358         background of input only windows.
10359
10360 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
10361
10362         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
10363         the _really_ internal stuff, and leave gdkprivate.h for the fake private
10364         stuff that we've traditionally exposed.
10365
10366         * gdk/**.c: Use gdkinternals.h where appropriate.
10367
10368         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
10369         not include gdkprivate-x11.h, move all stuff of conceivable public
10370         interest into gdkx.h; keep all really private stuff in
10371         uninstalled header gdkprivate-x11.h.
10372
10373         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
10374         image->image_put on windows through a new function _gdk_window_draw_image()
10375         to allow us to do backing store for images. (Sort of ugly)
10376
10377         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
10378         contexts locally so that we can offset them properly when drawing 
10379         onto backing pixmaps.
10380
10381         * gdk/gdkinput.h: Reindented
10382
10383         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
10384         pixmap or color for the window, so we can properly initialize
10385         our double-buffer pixmaps, and also so that we temporarily set
10386         a background of None while scrolling.
10387
10388         * gdk/gdkregion.h: Revise region boolean operators to have an
10389         interface that is actually convenient - switch from creating new
10390         regions on every op, to "methods" that modify existing regions
10391         (A = A OP B). 3 argument forms which allow dest == src, would also
10392         be possible, but the current interfaces seem to map nicely
10393         onto what needs to be done. (There is quite a lot of region
10394         code in GDK now.)
10395
10396         * gdk/gdkregion.h: Add constructor from rectangle and a copy
10397         operator.
10398
10399         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
10400         gdkpoly-generic.h: Copy region code from Xlib, switch it over
10401         to 32 bit coordinates, modify it to be mostly GTK+ style
10402         and to have interfaces that match gdkregion.h.
10403
10404         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
10405         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
10406         create a backing pixmap and redirect all drawing to
10407         that backing pixmap until a matching gdk_window_end_paint().
10408
10409         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
10410         Create a special drawable class for GtkWindow's that 
10411         redirects the drawing to the backing pixmap as necessary
10412         and then calls the real operations in _gdk_windowing_window_class.
10413
10414         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
10415         Store invalid region for each window. Generate expose events for invalid
10416         region in an idle. This replaces both the expose compression
10417         and the redrawing queuing in GTK+. It is both more efficient and
10418         simpler than either one individually and far more so then the
10419         combination.
10420
10421         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
10422         Emulate 32 bit coordinates for windows with 16 bit coordinates
10423         by offsetting drawing, guffaw scrolling techniques and
10424         mapping/unmapping child windows as necessary.
10425
10426         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
10427         where, when invalid regions are processed, the region is stored,
10428         and if expose events come in that are detectably duplicate
10429         the processed exposes (by comparison of event serial numbers),
10430         the stored region is subtracted out of those exposes.
10431
10432         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
10433         regions newly exposed when scrolling or resizing windows.
10434         This, combined with forcing processesing of queued invalidated
10435         regions, gives nice flicker-free scrolling.
10436
10437         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
10438         invalidated regions after every scroll.
10439
10440         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
10441         emulation in GDK. Its, for all practical purposes just a
10442         GtkViewport/GtkFixed hybrid now.
10443
10444         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
10445         (16-bit) structures as necessary instead of just casting.
10446
10447         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
10448         in terms of the structures from gdkregion-generic.c, using appropriate
10449         offsets from GDK to X11 coordinates. Cache clip mask and
10450         origin and ts origin locally and only flush to the server
10451         when drawing, to avoid constantly setting and resetting these
10452         values when offsetting GC's for scrolling and backing pixmaps.
10453
10454         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
10455
10456         * gtk/gtkcontainer.c: Call process_all_updates at end
10457         of resizing to reduce flicker. (Avoids having redraw
10458         lag arbitrarily behind resize under some circumstances)
10459
10460         * gtk/gtkentry.c: Remove old backing store code, and simply take
10461         advantage of the new backing store capabilities of GDK.
10462
10463         * gtk/gtkmain.c: Simple implementation of widget backing
10464         store - simply push a paint while handling each expose.
10465         (Should really be configurable widget for widget.)
10466         
10467         * gtk/gtkwidget.c: Remove all the old complicated redraw
10468         code, and simply invalidate the GDK windows from
10469         gdk_window_queue_clear(), etc. (Sigh, so much carefully
10470         debugged complexity ... gone to the winds.)
10471
10472         Remove all the code for suppressing expose events while
10473         resizes are pending; this isn't needed since the invalid
10474         areas won't be processed until after the resizes are
10475         processed, since they are in a lower priority idle.
10476
10477 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
10480         and height of dest rectangle for non-intersecting rectangles.
10481
10482 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
10483
10484         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
10485         for GdkRectangle.
10486
10487 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
10488
10489         * gdk/gdk{events,image,private,types,window}.h
10490          gdk/x11/gdkinputprivate.h: Change all coordinates
10491          from int16 to int. Also, Change width and height from
10492          unsigned to signed to avoid all the stupid C 
10493          signedness bugs.
10494
10495 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
10496
10497         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
10498         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
10499         Add some more detailed checking.
10500
10501         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
10502         New function to retrieve the depth of a drawable.
10503
10504         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
10505         field, reorder fields to save memory. 
10506
10507 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
10508
10509         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
10510         of the background image instead of scaling the background down to
10511         a line.
10512
10513         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
10514         which temporarily set slider to wrong size.
10515
10516         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
10517         queue_clear().
10518
10519 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
10520
10521 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
10522
10523         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
10524
10525 2000-03-17  Tor Lillqvist  <tml@iki.fi>
10526
10527         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
10528         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
10529
10530         * gdk/win32/gdkfont-win32.c
10531         * gdk/win32/gdkproperty-win32.c
10532         * gdk/win32/gdkselection-win32.c
10533         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
10534         now declared such.
10535
10536 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
10537
10538         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
10539
10540 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
10541
10542         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
10543         is called without trapping X errors.
10544
10545 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
10546
10547         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
10548         way into the fontset lists.
10549
10550 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
10551
10552         * gtk/gtkthemes.h: add extern "C" scope.
10553
10554 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
10555
10556         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
10557         to make appends to the list constant. (gtk-guy-990901-0.patch)
10558
10559 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
10560
10561         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
10562         for the typename hash table.
10563
10564 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
10565
10566         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
10567         to make sure we never divide by zero. 
10568         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
10569
10570 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
10571
10572         * gtk/gtkfontsel.c: Apply patch from
10573         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
10574         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
10575
10576         Also, some cleanups in atom handling.
10577
10578 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
10579
10580         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10581         not GtkWidget.
10582
10583 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
10584
10585         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
10586         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
10587         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
10588         more guint wrap-around bugs before going to bed.
10589
10590 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
10591
10592         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
10593         guint wrap arounds in allocation.width.
10594
10595         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
10596         process untill we fit the allocation given.
10597
10598 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
10599
10600         * gtk/gtkwidget.c:
10601         (gtk_widget_unrealize): guard widget access with ref/unref
10602         around signal emission.
10603         (gtk_widget_hide): same here, but also check its destroyed
10604         state before queueing a resize.
10605
10606 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
10607
10608         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
10609         of gtk_default_insensitive_bg as insensitive base color.
10610
10611         * gtk/gtktext.c (gtk_text_style_set): set the background color according
10612         to the widget's state.
10613         (gtk_text_realize): same here.
10614         (gtk_text_state_changed): same here.
10615         (draw_bg_rect): compare background color against base[] from
10616         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
10617
10618 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
10619
10620         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
10621         grabs are active, unless a delete event is send to the toplevel
10622         of the currently grab holding widget.
10623
10624 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
10625
10626         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
10627         debugging g_print's.
10628
10629 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
10630
10631         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
10632         ever make the scrolled-window requisition ever depend on the 
10633         visibility state of the scrollbars for the AUTOMATIC policy. 
10634         This breaks the GTK+ requisition model, and causes loops.
10635
10636 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
10637
10638         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
10639         the default font to avoid problems with XFree86-4.0 where the
10640         default charset is iso10646-1, not iso8859-1.
10641
10642 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
10643
10644         * acinclude.m4
10645         * config.guess
10646         * config.sub
10647         * ltconfig
10648         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
10649
10650         * gtk/Makefile.am: minor cosmetic consistency tweak
10651
10652 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
10653
10654         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
10655         the activate_time to 0, so that we handle a quick
10656         press/release press/release properly and don't suppress
10657         the second release. (Red Hat bug #7545)
10658
10659 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
10660
10661         * gtk/gtkctree.c (row_delete):
10662         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
10663         bugs with destruction notifier, *always* update internal
10664         structures *before* calling user code.
10665
10666 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
10667
10668         A few more fixes for bug #5487, #2051, #2677.
10669         * gtk/gtkclist.c : 
10670         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
10671         not GDK_BUTTON_PRESS.
10672         (resync_selection): resync only if selection_mode is
10673         GTK_SELECTION_EXTENDED
10674         * gtk/gtkctree.c (resync_selection): same here
10675
10676 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
10677
10678         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
10679         gdk_drag_get_selection() and gtk_menu_detach().
10680
10681         [ From Jeroen Ruigrok/Asmodai ]
10682
10683 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
10684
10685         * gtk/gtknotebook.c (gtk_notebook_size_request): 
10686         page->tab_label can be NULL.
10687
10688 2000-01-25  Havoc Pennington  <hp@pobox.com>
10689         
10690         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
10691         arg is boolean
10692
10693         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
10694
10695         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
10696
10697         * gdk/gdkproperty.c (gdk_property_get): return boolean
10698
10699         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
10700
10701         * gdk/gdkim.c (gdk_im_ready): return boolean
10702
10703         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
10704
10705         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
10706         glib clash, should fix glib)
10707
10708         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
10709         (gdk_get_show_events): return gboolean, and canonicalize 
10710         to TRUE/FALSE
10711
10712         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
10713         colormap is private
10714         (gdk_colors_alloc): gboolean whether to be contiguous
10715         (gdk_color_equal): return gboolean since we are a predicate
10716         and not a qsort() (this looks semi-wrong due to glib breakage,
10717         IMO glib should be fixed)
10718         
10719         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
10720         (gdk_get_use_xshm): return gboolean
10721         (gdk_pointer_is_grabbed): return gboolean
10722
10723         * gdk/gdk.h: Change prototypes to match all the above changes,
10724         and re-run egtk-format-protos as required.
10725
10726 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
10727
10728         * gtk/gtkctree.c (resync_selection): 
10729         * gtk/gtkclist.c (resync_selection):
10730
10731         Return immediately if clist->drag_pos < 0. This is a workaround
10732         for the corrupt state that the clist gets into when a
10733         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
10734
10735         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
10736         
10737         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
10738         variable from recent commit.
10739
10740 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
10741
10742         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
10743
10744 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
10745
10746         * gtk/Makefile.am: prefix all autogenerated source that get build in
10747         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
10748         in builddir. since we subsequently cd into srcdir for autogeneration,
10749         the paths have to be stripped from the target file names, thusly we
10750         use $(@F) as target names now.
10751         put a comment about configure.in's --disable-rebuilds option,
10752         which can be used for non-writable source directories, for development
10753         setups though, srcdir has to be *writable*.
10754
10755 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
10756
10757         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
10758           Finish the job of allowing event to be NULL.
10759           (Fixes bug #4283, reported by Chris Blizzard)
10760
10761         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
10762           things so that the cursor appears on screen, properly
10763           take into account INNER_BORDER.
10764           (Fixes bug #4754, reported by Antonio Campos)
10765
10766 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
10767
10768         * gtk/gtknotebook.c (gtk_notebook_map): Don't
10769           show the tab_label unless it itself is visible.
10770
10771           gtk/gtknotebook.c (gtk_notebook_size_request):
10772           Do a better job of making sure that the visibility
10773           of the tab label corresponds to whether it should
10774           be mapped or not.
10775
10776 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
10777
10778         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
10779           Use the requisition, not the allocation, since the
10780           allocation has not necessarily been computed yet.
10781           (Pointed out by Eugene Osintsev)
10782
10783 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
10784
10785         * gtk/gtkstyle.c (gtk_style_new): Dont' set
10786           style/base[GTK_STATE_INSENSITIVE] both to
10787           gtk_default_insensitive_bg!
10788           (Bug #2187, reported by Jonathan Blandford)
10789
10790         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
10791           Add Alt_L, Alt_R to list of invalid accelerators.
10792           (Bug #3736, reported by Vlad Harchev)
10793
10794 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
10795
10796         * gtk/gtkfilesel.c (open_ref_dir): Fix several
10797         bugs which occured after an attempt to open 
10798         invalid home directory left cmpl_state->reference_dir == NULL.
10799
10800          - completion on files in home directory didn't work
10801          - completion on an empty string caused  segfault
10802
10803          (Bug #3678, reported by Steve Ratcliffe)
10804
10805         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
10806         cut and paste error that was causing scales to
10807         be incorrectly positioned.
10808         (Bug #2956,
10809          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
10810
10811 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
10812
10813         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
10814         when checking for dcgettext, if we've found we needed
10815         it for dgettext.
10816 +
10817 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
10818
10819         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10820         queue_clear on NO_WINDOW widgets during a reparent,
10821         since at that point the window and widget heirarchies
10822         are out of sync. This stops crashing in some cases
10823         (the scrolled window reparent test, for instance), and
10824         _probably_ won't cause drawing errors.
10825
10826         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
10827         test do what it was supposed to do and be robust against
10828         window closings, etc. (Bug #2443)
10829
10830 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
10831
10832         * gtk/gtkentry.c: Fix return values on mouse events.
10833         (Bug #2686, Sky <seb_sky@yahoo.com>)
10834
10835         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
10836         (pointed out by George Lebl)
10837
10838         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
10839         (From Ettore Perazzoli  <ettore@helixcode.com>)
10840  
10841 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
10842
10843         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
10844         clicks between rows or outside calender area correctly.
10845         (Patch from Damon Chaplin)
10846
10847         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
10848         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
10849           Call destroy function when overwriting existing data. 
10850           (Pointed out by Damon Chaplin)
10851
10852 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
10853
10854         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
10855           which was causing problems on various systems with Xmu.
10856           This hasn't been needed for a very long time.
10857           (Fixes #1185 3167)
10858
10859 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gdk/gdki18n.h: Include <ctype.h> when defining
10862           gdk_isw* in terms of is* as a fallback.
10863           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
10864
10865 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
10866
10867         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
10868           realize the widget when it is size allocated!
10869           (old, old bug)
10870
10871         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
10872           Removed unused call to gdk_window_get_size() that
10873           showed up when the above was fixed.
10874
10875 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
10876
10877         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
10878           fix up widget->window when the widget is a
10879           NO_WINDOW container widget.
10880
10881 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
10882
10883         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
10884           to account for the fact that feof() does _not_ 
10885           return TRUE on errors, and thus avoid infinite loops
10886           when trying to use gdk_pixmap_create_from_xpm()
10887           on unreadable values.
10888
10889 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
10890
10891         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
10892
10893 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
10896           gdk_gc_set_dashes to take gint8 instead of gchar to
10897           make it clearer that it is _not_ a NULL terminated string.
10898
10899         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
10900           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
10901           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
10902           arguments.
10903
10904 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
10905
10906         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
10907         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
10908         background size relative to our allocation, guard against small
10909         allocations, we may have not yet been size allocated.
10910
10911 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
10912
10913         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
10914         not just version == 3. We implement all 3 + most of 4 - 
10915         (we don't support matching text/plain;charset=iso-8859-1
10916         to a dest that expects text/plain). We'll still advertise
10917         3 to be safe, but any client implementing version >= 3
10918         must interoperate with 3.
10919         
10920 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10921
10922         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
10923         background and gc members, add a warning in gtk_tooltips_set_color()
10924         indicating that this function is deprecated.
10925
10926 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
10927
10928         * docs/gtkfaq.sgml: FAQ Update:
10929           - Minor cleanups (Emmanuel, me)
10930           - New questions:
10931                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
10932                 How can I retrieve the text from a GtkMenuItem? (timj)
10933                 How do I validate/limit/filter the input to a GtkEntry? (me)
10934                 Memory does not seem to be released when I free the list
10935                         nodes I've allocated (timj)
10936
10937 2000-03-07  Tor Lillqvist  <tml@iki.fi>
10938
10939         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
10940         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
10941         for which it is no use to call GetLastError onWin9x.
10942         (gdk_other_api_failed) New function, for general error
10943         reporting without calling GetLastError.
10944         (gdk_win32_api_failed) OTOH, this function always calls
10945         GetLastError. (gdk_win32_last_error_string) Remove this function,
10946         GLib has the equivalent now.
10947
10948         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
10949         call them with function name, file name and line number in the
10950         arguments.
10951
10952         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
10953         functions.
10954         
10955         * gtk/gtk.def: Add some missing entry points.
10956
10957         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10958         gtk_paned_set_gutter_size, which don't exist any longer, as void.
10959         
10960         Fixes by Hans Breuer:
10961
10962         * gdk/makefile.msc: Update for debugging.
10963
10964         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
10965         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
10966         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
10967         in the dash_list.
10968
10969         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10970         the x11 backend.
10971
10972         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10973
10974         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10975
10976 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10977
10978         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10979         just pixel value of background colour.
10980
10981         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10982         containing code snippet previously duplicated in a couple of
10983         places.
10984         
10985         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10986         gdk_colormap_color.
10987
10988         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10989         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10990         events for autorepeated Shift, Control and Alt keys. Use
10991         gdk_colormap_color.
10992
10993         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10994         pointer is inside the window the cursor of which we are setting,
10995         call SetCursor immediately.
10996
10997         * gdk/win32/makefile.cygwin
10998         * gtk/makefile.cygwin: If we don't have the build number stamp
10999         file, use zero.
11000
11001         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11002         gtk_paned_set_gutter_size as empty.
11003
11004         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11005         
11006 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11007
11008         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11009           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11010           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11011           docs/gtk_tut.sgml docs/gtk.texi TODO:
11012
11013           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11014
11015 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11016
11017         * gtk/gtkcalendar.c: Implement num_marked_dates,
11018           and don't emit mutiple day_selected signals on
11019           month_prev.
11020
11021 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11022
11023         * docs/make-todo (lineno): let title and logo be configurable so
11024         that GNOME can use this script too.
11025
11026         * TODO.xml: added logourl and a title
11027
11028 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11029
11030         * TODO.xml: Added some UI items, and an explanatory
11031         comment at the top of the file.
11032
11033 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11034
11035         * TODO.xml: some updates, added abunch of new entries.
11036         a note for those fiddeling with this file, when done
11037         with it, invoke:
11038         $ ./docs/make-todo TODO.xml >/dev/null
11039         and correct output errors before comitting changes.
11040
11041 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11042
11043         * TODO.xml: Added XML-structured TODO file.
11044         * docs/make-todo: python script to turn TODO.xml into
11045           pretty XML output. 
11046
11047 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11048
11049         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11050         the function to let it draw the seven dots, instead of the old,
11051         much maligned, method.
11052         (draw_dot): New function to draw a dot.
11053
11054         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11055         to draw the handle inside the border width as opposed to outside.
11056         Use paint function instead of gdk_draw_point.
11057
11058         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11059         to draw the handle inside the border width as opposed to outside.
11060         Use paint function instead of gdk_draw_point.
11061
11062         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11063         Change indenting to be more GTK like.
11064
11065 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11066
11067         * docs/gtk_tut.sgml: New section on GtkCalendar
11068         * examples/calendar: Update example code
11069
11070 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11071
11072         * docs/gtkfaq.sgml: FAQ Update
11073
11074 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11075
11076         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11077         to prevent the scroll event to be propagated upwards.
11078
11079 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11080
11081         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11082         OwnerGrabButtonMask from button entries for
11083         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11084
11085         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11086         to the event mask (which will result in button/press release
11087         being added to the event mask on Unix) so scrolling works
11088         for layouts in scroll windows.
11089
11090         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11091
11092         Patch from Anders Carlsson  <andersca@gnu.org> to add
11093         a scroll event.
11094
11095         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11096         scrolling to the "Test Scrolling" part of testgtk.
11097  
11098         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11099  
11100         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11101         it against GDK_SCROLL.
11102  
11103         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11104         way of mouse wheel scrolling.
11105  
11106         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11107  
11108         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11109  
11110         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11111  
11112         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11113         gdk_event_mask_table.
11114  
11115         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11116         GdkEventScroll handler.
11117  
11118         * gdk/gdkevents.h: Added GdkEventScroll structure.
11119  
11120 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11121
11122         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11123         and Anders Carlsson to change the Paned widgets so that they
11124         can be dragged from anywhere along the length. Also change
11125         the way that this is drawn to make this apparent.
11126
11127         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11128         from George Lebl to check that option_menu->menu is present
11129         before getting history.
11130
11131 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11132
11133         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11134         before the assertion for non-NULL segment list.
11135
11136         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11137         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11138         machine, but it might be display driver dependent. Sigh, so make
11139         sure the stipple is that size. Does Windows suck or what?
11140
11141         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11142         places.
11143
11144 2000-02-13  Havoc Pennington  <hp@pobox.com>
11145
11146         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11147         refcount to 1
11148         (gdk_cursor_new): init refcount to 1
11149
11150         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11151
11152 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11153
11154         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11155         so that we don't have to do unnecessary settings to the HDC.
11156
11157         * gdk/win32/gdkdrawable-win32.c
11158         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11159         gdk_gc_predraw.
11160
11161         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11162         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11163         GDI paths, call WidenPath to get the outline of the stroken path,
11164         and then fill the outline (with the brush that was built from the
11165         stipple).
11166
11167         * gdk/win32/gdkgc-win32.c: Factor out common code from
11168         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11169         gdk_win32_gc_values_to_win32values. Use correct colour for
11170         SetBkColor() (Until now the code actually used a random colour in
11171         the call to SetBkColor()... but that didn't show up as not many
11172         GDI APIs use the background colour. Pattern (opaque stippled)
11173         brushes do.)
11174
11175         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11176         gdk_win32_api_failed): New functions for error logging.
11177
11178         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11179         WIN32_API_FAILED to call them, passing function or file name and
11180         line number.
11181
11182         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11183
11184         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11185         GdkColor for foreground and background in GdkGCWin32Data.
11186
11187         * gdk/makefile.cygwin: Link in the resource object separately.
11188
11189         * gdk/win32/rc/gdk.rc
11190         * gtk/gtk.rc (New file)
11191         * gdk/win32/makefile.cygwin
11192         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11193         as in GLib.
11194
11195 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11196
11197         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11198         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11199         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11200         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11201         parameters given and cursor->ref_count. coding style fixups.
11202
11203         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11204         not GtkWidget.
11205         
11206         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11207         fix up widget macros and add _GET_CLASS() variant.
11208         
11209         * gtk/*.c: some GtkType fixups.
11210
11211 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11212
11213         * gdk/win32/gdkproperty-win32.c
11214         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11215         were reversed.
11216
11217 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11218
11219         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11220         g_filename_to_utf8 to convert the font names Windows gives us from
11221         whatever is the default codepage to UTF-8.
11222         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11223         in the other direction.
11224
11225         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11226         error in debugging output.
11227
11228 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11229
11230         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11231         and height parameters to gdk_window_clear_area(). Not minus one.
11232
11233 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11234
11235         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11236         checks if the widget passed to gtk_drag_get_data() was not the
11237         dest widget.
11238
11239 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11240
11241         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11242         g_filename_from_utf8 functions (which were added a moment ago to
11243         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11244         size buffers.
11245
11246         gtk_file_selection_get_filename returns the filename in the C
11247         runtime encoding. It calls g_filename_from_utf8, but copies the
11248         returned string to a static buffer, which is returned. I think
11249         this is better than returning the result from g_filename_from_utf8
11250         directly, which would mean all apps that use it would have to free
11251         the return value. Or should this function care about this issue at
11252         all? Maybe a new function with clearly defined semantics.
11253
11254         * gtk/gtkfilesel.h: Add comment about
11255         gtk_file_selection_get_filename returning the filename in the C
11256         runtime's encoding.
11257
11258         * README.win32
11259         * gdk/gdk.def
11260         * gdk/makefile.{cygwin,msc}
11261         * gtk/gtk.def: Updates.
11262
11263         * gdk/gdkcursor-win32.c: Initialise refcount.
11264
11265 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11266
11267         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11268
11269 2000-01-30  Havoc Pennington  <hp@pobox.com>
11270
11271         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11272         destroy
11273
11274         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11275
11276         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11277         implemented in platform-specific code
11278
11279         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11280
11281         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11282         underscore in front
11283
11284         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
11285         put an underscore in front
11286
11287         * gdk/gdkcursor.c: new file, implements
11288         gdk_cursor_ref/gdk_cursor_unref
11289
11290         * gdk/gdkcursor.h: Refcount GdkCursor
11291
11292         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
11293
11294 2000-01-29  Tor Lillqvist  <tml@iki.fi>
11295
11296         * gdk/gdkwindow.h
11297         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
11298
11299 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11300
11301         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
11302         structures to properly inherit from GtkWidget not GtkBin.
11303
11304 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
11305
11306         * gtk+.spec.in: Added lib/gtk+/include/* to %files
11307         (bug #5178 - Peter Wainright)
11308         
11309         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
11310         so that it will be installed.
11311         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
11312
11313 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
11314
11315         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
11316         for the GtkStyleClass vtable const.
11317
11318         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
11319         take a const string argument like GtkTranslateFunc. This will
11320         require changes in use code.
11321
11322 2000-01-19  Tor Lillqvist  <tml@iki.fi>
11323
11324         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
11325         semantics (to mimic the X11 backend, which just calls XClearArea)
11326         is to check for zero width (and height), and in that case use the
11327         window's width minus x (height minus y). This fixes for instance
11328         some redraw problems with gtkclist, which were easily noticeable
11329         in the gtk file selection widget.
11330
11331         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
11332         windows.
11333
11334 2000-01-13  Tor Lillqvist  <tml@iki.fi>
11335
11336         * configure.in
11337         * gdk/Makefile.am
11338         * gdk/x11/Makefile.am
11339         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
11340         (bug #5177).
11341         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
11342         out later.
11343
11344 2000-01-09  Tor Lillqvist  <tml@iki.fi>
11345
11346         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
11347         WM_MOVE for iconified or invisible windows. This fixes various
11348         problems when minimising windows. Thanks to Bernd Herd.
11349
11350 2000-01-05  Tor Lillqvist  <tml@iki.fi>
11351
11352         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
11353         backend's draw_lines method, not draw_points.
11354
11355 2000-01-02  Tor Lillqvist  <tml@iki.fi>
11356
11357         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
11358         before Owen's reorganisation: Don't have queued_events and
11359         queued_tail statics in this file, but use gdk_queued_events and
11360         gdk_queued_tail. This makes exposure event compression work again.
11361
11362         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
11363         seem to be needed?
11364
11365 1999-12-30  Tor Lillqvist  <tml@iki.fi>
11366
11367         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
11368         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
11369         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
11370         doesn't do anything.
11371
11372         * gdk/gdk.def: Add gdk_xid_table_insert.
11373
11374         * gdk/win32/gdkprivate-win32.h
11375         * gdk/win32/gdkevents-win32.c
11376         * gdk/win32/gdkinput-win32.c
11377         
11378         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
11379         extension_events field in the GdkWindowWin32Data struct. Use only
11380         the extension_events field in GdkWindowPrivate. Previously one was
11381         set, and the other one tested, which broke tablet
11382         functionality. Thanks to Keishi Suenaga for pointing this out.
11383
11384 1999-12-18  Tor Lillqvist  <tml@iki.fi>
11385
11386         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
11387         When handling a single character (text length == 1), don't handle
11388         it as if it was UTF-8.
11389
11390 1999-12-11  Tor Lillqvist  <tml@iki.fi>
11391
11392         * Makefile.am: Distribute README.win32.
11393         
11394         * gdk/Makefile.am
11395         * gdk/win32/Makefile.am: Distribute Win32 files.
11396
11397         * gdk/makefile.msc: New file.
11398
11399         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
11400         after label).
11401
11402         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
11403         gdk_error_code as GDKVAR, as they are referred outside GDK.
11404
11405         * gdk/win32/makefile.msc: Update.
11406
11407         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
11408         tweaks. Check only if at least one of those Unicode subrange bits
11409         we care for is set. If no code page bits are set, guess (wildly)
11410         based on the charset.
11411
11412         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
11413
11414         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
11415         non-NULL.
11416
11417         * gtk/gtkdnd.c
11418         * gtk/gtklayout.c
11419         * gtk/gtkplug.c
11420         * gtk/gtkselection.c
11421         * gtk/gtksocket.c
11422         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
11423         appropriate. There must be a cleaner way to handle this?
11424
11425         * gtk/gtkrc.c: Must include windows.h on Win32.
11426
11427         * gtk/testgtk.c: No need to include gdkx.h.
11428
11429         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
11430
11431 1999-12-07  Tor Lillqvist  <tml@iki.fi>
11432
11433         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
11434         the rbearing is set to the same as the width, but this should be
11435         fixed.
11436
11437 1999-12-06  Tor Lillqvist  <tml@iki.fi>
11438
11439         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
11440         function. If Windows doesn't tell us what Unicode subranges a font
11441         covers, guesstimate based on the codepages it covers. This will
11442         hopefully help those Windows versions or fonts that don't give us
11443         any useful Unicode subrange information with GetTextCharsetInfo.
11444         Call this function in gdk_font_load_internal.
11445
11446         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
11447         minor changes.
11448
11449 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
11450
11451         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
11452         New function, long needed.
11453
11454 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
11455
11456         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
11457         only_if_exists argument of gdk_atom_intern to
11458         bool.
11459
11460 1999-11-25  Tor Lillqvist  <tml@iki.fi>
11461
11462         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
11463         Fix two copy&paste errors.
11464
11465         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
11466         win32 has changed.
11467
11468         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
11469         GdkWin32SingleFont struct.
11470
11471         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
11472         subranges of loaded fonts. Clear font signature first, in case
11473         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
11474         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
11475
11476         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
11477         Unoffset clip region.
11478
11479 1999-11-23  Tor Lillqvist  <tml@iki.fi>
11480
11481         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
11482         event->any.window before calling filter functions.
11483
11484 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
11485
11486         * gtk/gtkgamma.h: Adapt cast macros to standard.
11487
11488 [ Merges from 1.2 ]
11489
11490 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
11491
11492         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
11493         If translation does not include a '/', use entire
11494         translation instead of crashing.
11495
11496 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
11497
11498         * docs/gtk_tut.sgml:
11499         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
11500
11501 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
11502
11503         * gtk/gtkselection.c (gtk_target_list_remove): Use
11504         g_list_remove_link, not g_list_remove.
11505
11506         [ From Geert Bevin <gbevin@thunderstorms.org> ]
11507         
11508 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
11509
11510         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
11511         statement upon unselection (how the heck did that slip in?).
11512
11513 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
11514
11515         * gtk/gtktext.c (gtk_text_freeze): 
11516         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
11517         in frozen state (and aparently crashes). patch provided by Anders
11518         Melchiorsen <and@kampsax.dtu.dk>.
11519
11520 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
11521
11522         * fix insensitive default/focus widget activation,
11523         reported by Matt Goodall <mgg@isotek.co.uk>.
11524
11525         * gtk/gtkwindow.c (gtk_window_key_press_event): 
11526         (gtk_window_activate_default):
11527         (gtk_window_activate_focus):
11528         return handled=FALSE for actiavtion of insensitive default
11529         widgets. return handled=TRUE for activation of insensitive
11530         focus widgets. don't activate in either case.
11531
11532 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
11533
11534         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
11535         and $glib_cflags to match library order and in the
11536         theory that an old version of GLib is more likely to
11537         be in the include directory for X then vice-versa.
11538         (Bug #2776)
11539
11540 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
11541
11542         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
11543         to determine the locale for fontsets, not LC_MESSAGES;
11544         the user may want English messages with a handling
11545         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
11546         will still be broken) (Bug #2891)
11547
11548 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11549
11550         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
11551
11552 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
11553
11554         * gtk/gtkrc.ko: Changed the Korean default fontset.
11555
11556 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
11557
11558         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
11559         where when scrolling to the left or top double exposes
11560         were done, causing major slowdowns.
11561
11562 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
11563
11564         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
11565         names to lowercase and alphanumeric, before looking
11566         them up.
11567
11568         * gtk/Makefile.am: Install codeset variant gtkrc files
11569         with normalized names.
11570
11571 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
11572
11573         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
11574         popup menus when the menu is already visible, but its parent
11575         is still hidden, (happens after tornoff window got hidden).
11576
11577 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
11578
11579         * gtk/Makefile.am (install-data-local): Fix
11580         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
11581         deleted, causing error messages on install.
11582
11583 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
11584
11585         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
11586         the handle as well, since we now sometimes ignore
11587         exposes on the handle while resizing.
11588
11589 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
11590
11591         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
11592         extra g_free introduced in one of the last one or two 
11593         commits.
11594
11595 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
11596
11597         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
11598         consistent, put each style that a gtkrc.* file creates
11599         in a unique namespace, remove old files before installing.
11600
11601 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
11602
11603         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
11604         gtk_rc_init is called multiple times. (Yes, people who
11605         do that have bugs in their code.)
11606
11607 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
11608
11609         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
11610         Remove it since it's generated by the Makefile anyway
11611
11612 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
11613
11614         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
11615         device->info.axes for core pointer.
11616
11617 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
11618
11619         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
11620         idle_id, to deal with obsolete, broken C libraries.
11621
11622 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
11623
11624         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
11625         allocation->x/y twice!
11626
11627         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
11628         consistent with gtk_vscale_pos_trough().
11629
11630 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
11631
11632         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
11633         be queueing a resize on a toplevel container between
11634         the time we show it and when we map it. So, we need
11635         to test GTK_WIDGET_VISIBLE() for toplevels, and only
11636         use GTK_WIDGET_DRAWABLE() for child windows.
11637
11638 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
11639
11640         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
11641         (fixes bug #2144)
11642
11643 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
11644
11645         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
11646         container DRAWABLE (instead of VISIBLE), so we don't queue
11647         resizes on non-toplevel containers.
11648
11649 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
11650
11651         * gtk/gtkselection.[ch]: Make the data argument
11652         const guchar *.
11653
11654 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
11655
11656         * gtk/gtkwindow.c: Try to behave sensibly if 
11657         the focus widget is the window itself. (Should
11658         we allow this at all?)
11659
11660 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11661
11662         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
11663         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
11664         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
11665         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
11666         in prototypes and implementations consistent (Tomas Ogren).
11667
11668         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
11669         before the widget is unparented (reported by damon).
11670
11671         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
11672         since we provide unsigned data anyways.
11673
11674 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
11675
11676         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
11677         the call to gtk_tooltips_layout_text() until later.
11678
11679         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
11680         Call gtk_widget_ensure_style() before using the style.
11681
11682 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
11683
11684         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
11685         for old widgets that don't propagate draws to all
11686         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
11687
11688 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
11689
11690         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
11691         for a redraw but just the widget that requested the resize.
11692
11693 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
11694
11695         * gtk/gtkcontainer.c: added new widget level method
11696         gtk_container_set_reallocate_redraws() and a GtkContainer flag
11697         reallocate_redraws : 1 to reflect the setting, exported this through
11698         the argument system as a boolean ::reallocate_redraws.
11699
11700         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
11701         on the widget because the allocation changes, do so as well for
11702         widget->parent if the parent has reallocate_redraws set to TRUE.
11703         with that containers requesting reallocation redraws get automatically
11704         redrawn if their children changed allocation (this unfortunately
11705         affects also other children that didn't change allocation, but we
11706         cannot work around that before 1.3).
11707
11708 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11709
11710         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
11711         _and_ height are >0 (not _or_).
11712
11713         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
11714         instead of gtk_container_queue_resize(), which is a core gtk internal
11715         function (must have been on crack when i queued that).
11716
11717         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
11718         we can check more reliably if we want to discard expose events.
11719         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
11720         flag.
11721         
11722         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
11723         we simply trust these events. for deciding whether to discard exposes,
11724         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
11725         
11726 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
11727
11728         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11729         queues of areas that are completely off screen.
11730
11731         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
11732         logic for handleboxes.
11733
11734         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
11735         check on width/height.
11736
11737 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
11738
11739         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
11740         we are fine with using $@ the way we do (if we actually encounter
11741         brokeness with $@ in VPATH builds because of additional path prefixes,
11742         we need to use $(@F) actually).
11743
11744 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
11745
11746         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
11747         short lived bugs, that would allow language bindings to do surgeries
11748         to our guts.
11749
11750 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
11751
11752         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
11753         where comparison was being done against an uninitialized
11754         value causing intermittant results depending on
11755         compiler flags. Also make it clearer that we aren't
11756         ever initializing the child as 0x0 (though this will
11757         be caught in gtk_widget_size_allocate())
11758
11759 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
11760
11761         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
11762         gtk_window_unset_transient_for() call after we do checks
11763         involving the old transient parent.
11764         [ From Lance Capser <lmc@cyberhighway.net> ]
11765
11766 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
11767
11768         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
11769         an empty file.
11770
11771 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
11772
11773         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
11774         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
11775
11776 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
11777
11778         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
11779         `$@' is valid only in the build dir, not after we've done 
11780         `cd $srcdir'.  Also use `test -f' instead of less portable
11781         `test -e'.
11782
11783 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
11784
11785         * gtk/gtktext.c (correct_cache_insert): Rewrite
11786          for simplicity, and hopefully correctness.
11787          (Fixes bug #1322, which was a segfault when
11788           on some insertions with the properties around
11789           the insertion set up just wrong.)
11790
11791         * gtk/gtktext.c (gtk_text_adjustment): When we receive
11792          a "changed" signal, clamp the new value to the adjustment
11793          bounds to avoid segfaulting if someone tries to change
11794          the adjustment to a bogus value. (Bug #1795)
11795
11796 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11797
11798         * gtk/gtkmain.c: Ignore unexpected destroy notifies
11799         for children, for toplevel windows handle them
11800         like delete_event.
11801
11802         * gtk/gtkplug.c: Add an unrealize handler so that
11803         we unref plug->socket_window when we are done
11804         with it.
11805
11806 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
11807
11808         * gtk/gtktext.c (clear_area): Fix stupid signedness
11809          problem that was causing background to sometimes
11810          be misaligned.
11811
11812 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
11813
11814         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
11815         
11816         * gtk/gtkmenu.c (gtk_menu_position): Make
11817          sure we never position menus with negative x, y,
11818          since gtk_widget_set_uposition() can't handle that.
11819
11820         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
11821          Modify the positioning code a bit so that we always
11822          put the top-left corner onscreen. (This is for
11823          UI reasons, gtk_menu_position() now takes care of
11824          gtk_widet_set_uposition() brokeness.)
11825
11826 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
11827
11828         * gtk/Makefile.am: fixed up things for -jx, x > 1.
11829
11830 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
11831
11832         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
11833           RC style that is passed in. The lack of the ref
11834           before was a bug. If people worked around this
11835           bug, this will introduce a slight memory leak
11836           in their code. The code should typically look like:
11837
11838             rc_style = gtk_rc_style_new ();
11839             [...]
11840             gtk_widget_modify_style (widget, rc_style);
11841             gtk_rc_style_unref (rc_style);
11842
11843         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
11844           the style if it was already set.
11845
11846         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
11847           style if it was set before.
11848
11849 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11850
11851         * gtk/testgtk.c (main): Add a check to see if we
11852           are being run from the correct directory and
11853           to quit nicely if we are not.
11854
11855         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
11856           static.
11857
11858 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
11859
11860         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
11861
11862         * gtk/gtkwindow.c:
11863         queue resizes unconditionally (gtk_widget_queue_resize will figure
11864         what to do if the window is not realized).
11865         (gtk_window_move_resize): only recenter the window
11866         for GTK_WIN_POS_CENTER_ALWAYS.
11867         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
11868         the same way as GTK_WIN_POS_CENTER.
11869
11870 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
11871
11872         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
11873         with (!(info->last_flags & GDK_HINT_POS)) instead of
11874         (!info->last_flags & GDK_HINT_POS).
11875
11876         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
11877         new_height unconditionally, because we use these values even if
11878         !default_size_changed && !hints_changed.
11879         comented the (default_size_changed || hints_changed) case with
11880         respect to resize rejects from the window manager.
11881
11882         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
11883         in the zvt condition hack, since this includes the window hints, set
11884         the hints after the handling_resize case.
11885
11886         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
11887         window is initially shown with to the geometry.
11888
11889 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
11890
11891         * gtk/gtkwindow.c (gtk_window_move_resize):
11892         s/size_changed/default_size_changed/g so i know what's
11893         really going on (frying brain on smaller flame now).
11894
11895 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
11896
11897         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
11898         we have size_changed upon handling_resize. this is a gross
11899         workaround for the broken zvt widget and should be removed in
11900         1.3 again (search for FIXME).
11901         Owen provided an accurate comment for this:
11902
11903         /* We could be here for two reasons
11904          *  1) We coincidentally got a resize while handling
11905          *     another resize.
11906          *  2) Our computation of size_changed was completely
11907          *     screwed up, probably because one of our children
11908          *     is broken. It's probably a zvt widget.
11909          *
11910          * For 1), we could just go ahead and ask for the
11911          * new size right now, but doing that for 2)
11912          * might well be fighting the user (and can even
11913          * trigger a loop). Since we really don't want to
11914          * do that, we requeue a resize in hopes that
11915          * by the time it gets handled, the child has seen
11916          * the light and is willing to go along with the
11917          * new size. (this happens for the zvt widget, since
11918          * the size_allocate() above will have stored the
11919          * requisition corresponding to the new size in the
11920          * zvt widget)
11921          *
11922          * This doesn't buy us anything for 1), but it shouldn't
11923          * hurt us too badly, since it is what would have
11924          * happened if we had gotten the configure event before
11925          * the new size had been set.
11926          */
11927
11928 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
11929
11930         * gtk/gtkrc.c: deal properly with the fact that RC
11931           style lists may include rc styles more than once.
11932
11933         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
11934           unused static function.
11935
11936         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
11937           stack of directories of RC files currently being
11938           parsed and implicitely add them to pixmap path.
11939           
11940           This fixes a bug where the directory would get
11941           appended then overwritten by pixmap_path declarations.
11942
11943           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
11944
11945         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
11946           theme's exit function. (Patch from Peter Wainwright,
11947           bug #1454)
11948
11949         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
11950           Add a destroy() handler to take care of removing
11951           group for menu item. (Fixes bug #1197)
11952
11953         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
11954           in warning message.
11955
11956 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
11957
11958         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
11959         roundtrip to figure window's width and height, since we know that
11960         anyways from widget->allocation.
11961
11962 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
11963
11964         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
11965           the hints after we request the new size.
11966
11967 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
11968
11969         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11970           GTK_WIDGET_REALIZED() assertion - we can compute the
11971           hints before we are realized.
11972
11973         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11974           hint changing so that we have a value of hints_changed
11975           when we decide whether to constrain the window size.
11976
11977         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11978
11979         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11980         change back to G_MAXINT.
11981
11982 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11983
11984         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11985         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11986         contain uncluttered values.
11987         (gtk_window_compute_hints): simply assert that window is realized
11988         and that geometry_info is valid, since we rely on this anyways.
11989         (gtk_window_constrain_size): major cleanups to the code.
11990         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11991         for the base size, instead of the minimums. use 32767 as max width
11992         and height (like in gtkwindow.c) instead of G_MAXINT.
11993
11994 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11995
11996         * cleaned up the GtkContainer.need_resize flag handling mess, we
11997         only need to force resize requests when we were prematurely
11998         realized, or our widget tree was modified when we were temporarily
11999         hidden. handling these cases directly upon showing the window (i.e.
12000         while the GdkWindow is still unmapped) avoids the need to wait for
12001         a configure event response and therefore makes the GUI more snappier
12002         and avoids blank windows during the roundtrip.
12003
12004         * gtk/gtkwidget.c:
12005         (gtk_widget_hide): 
12006         (gtk_widget_show): don't queue resizes on toplevels, they know how
12007         to deal with matters.
12008
12009         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12010         flag directly for not visible resize containers and spare us unecessary
12011         signal emissions.
12012
12013         * gtk/gtkwindow.c:
12014         (gtk_window_realize): if we need to enforce premature size allocation,
12015         queue a container resize so we are correctly resized later on.
12016         (gtk_window_init):
12017         (gtk_window_size_request):
12018         don't freak around with the ->need_resize flag,
12019         gtk_container_queue_resize() will care about that.
12020         (gtk_window_show):
12021         handle initial resizing issues here, we can handle matters better in
12022         this place, especially since we know that our GdkWindow is still
12023         unmapped.
12024         (gtk_window_move_resize):
12025         don't care about ->need_resize at all.
12026         handle size changes properly that occoured while we waited for a
12027         configure event.
12028
12029 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12030
12031         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12032         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12033         Move the hint setting code from gtk_widget_set_uposition
12034         to here; set the hints so that we respect any previously
12035         set geometry hints.
12036
12037         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12038         change the window hints here or move the window here,
12039         let that happen in gtk_window_move_resize().
12040
12041 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12042
12043         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12044         to already queued resizes (and therefore redraws) on a widget, check
12045         its anchestry as well.
12046
12047         * gtk/gtkcontainer.c:
12048         (gtk_container_queue_resize): clear resize widgets for resize
12049         containers before aborting prematurely. this is especially important
12050         for toplevels which may need imemdiate processing or their resize
12051         handler to be queued.
12052         (gtk_container_dequeue_resize_handler): added new internal function for
12053         gtkwindow.c.
12054
12055         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12056         configure event, take possible changes in window position into account
12057         as well.
12058         if we request a new window size, queue up a resize handler that will
12059         last until the configure event response arrives.
12060         combined the ->need_resize case (initial show) with the general size
12061         (hints) changed case and added even more comments.
12062         if !auto_shrink, only revert to the old allocation if the new size
12063         is smaller than the current allocation.
12064
12065 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12066
12067         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12068                            gtk_window_set_geometry_hints
12069                            gtk_window_set_default_size):
12070         When hints are set, queue a resize so that the hints will
12071         be eventually reset on the toplevel.
12072
12073         * gtk/gtkwindow.c (gtk_window_show): Use
12074         gtk_window_compute_default_size(). Clear the need_resize flag
12075         on the initail map so that we don't unnecessarily trigger the
12076         resize code.
12077
12078         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12079         into separate functions. Compare the hints we are setting
12080         with what we set last time so that we can accurately
12081         tell when we need to reset the hints.
12082
12083         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12084         function to figure out the size from requisition
12085         and default_size.
12086
12087         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12088         from fvwm to constrain a size to the geometry hints.
12089
12090         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12091         to compare two sets of geometry hints.
12092
12093         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12094         from gtk_window_set_hints(), just compute the hints,
12095         don't set them.
12096
12097         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12098         code from gtk_window_move_resize() to separate function,
12099         rationalize a bit.
12100
12101 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12102
12103         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12104         structure into a new private structure.
12105
12106         * gtkrc.c: Split GtkRcStyle into public/private.
12107         In the private part, add a list of pointers to the
12108         RcStyle lists this RcStyle participates in.
12109
12110         * gtkrc.c: When a RcStyle is free, remove all
12111         lists referencing it from the 
12112         realized_style_ht hash, and free those lists.
12113         
12114         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12115         gtk_rc_init(), since that adds the default styles
12116         to the list of parsed RC files again.
12117
12118         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12119         
12120 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12121
12122         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12123         checks that ensure that a widget's allocation is at least 1 in width
12124         and height. (GNOME note: this doesn't affect old panel code anymore,
12125         because GtkSocket will request width and height of at least 1 since
12126         Fri Jul 23).
12127
12128         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12129         allocated yet (happens if the user realizes the window prematurely),
12130         size request and allocate it.
12131         (gtk_window_size_allocate): guard against guint underflows.
12132
12133 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12134
12135         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12136         in gtk_built_sources, so gtk.defs gets built prior to all other
12137         sources.
12138
12139 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12140
12141         * gtk/Makefile.am:
12142         invoke indent on gtkmarshal.*. 
12143         rewrote source generation rules, use COPYING as oldest source tag for
12144         a piggyback rule to generate all sources from (don't touch it ;).
12145         major cleanups, strip spaces on build rules for GNU Make.
12146
12147         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12148         source and target files from commandline arguments. don't invoke indent.
12149
12150 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12151
12152         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12153         notebook after switch to avoid drawing problems.
12154         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12155         
12156         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12157         show them instead. 
12158         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12159
12160 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12161
12162         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12163         notebook after switch to avoid drawing problems.
12164         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12165         
12166         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12167         show them instead. 
12168         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12169
12170 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12171
12172         * gtk/gtkwindow.c:
12173         we use window->need_resize from configure_event now, to indicate that
12174         the gtkwindow should keep its allocation (e.g. because the user resized
12175         the window through window manager handles). resize_count is now reliably
12176         used to figure whether we got the allocation we requested from the
12177         window manager.
12178         configure events get queued as resizes now, the real stuff (size
12179         computation and allocation) now only goes on in gtk_window_move_resize().
12180         GtkWindow's requisition now contains its *real* requisition (like all
12181         other widgets), *not* taking usize into account.
12182         geometry_info->last_{width|height} is now updated from set_hints() only
12183         so it always contains the last hints we set for the window manager.
12184         made some event handlers return TRUE instead of FALSE.
12185         the overall code should be much more straight forward now, and the
12186         significant code portions are accompanied by comments now.
12187         (gtk_window_set_hints):
12188         removed requisition argument and made it
12189         fetch the requisition through gtk_widget_get_child_requisition.
12190         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12191         does that now.
12192         (gtk_window_show):
12193         ensure that the widget is realized before calling 
12194         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12195         ensure that we got properly size requested and allocated before
12196         realization.
12197         (gtk_window_configure_event):
12198         ignore plain window moves, or reallocate the widget tree through the
12199         resize queue otherwise.
12200         (gtk_window_move_resize):
12201         mostly rewrote this function to figure window manager hints more
12202         reliably, coalesce window moves and resizes to reduce configure events
12203         and do actuall size allocations.
12204
12205 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12206
12207         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12208         that have a resize pending, because a redraw is already queued for them.
12209
12210         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12211         hack to clear resize_widgets.
12212
12213         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12214         for resize containers prior to size allocation. (this is also a bit
12215         ugly, but avoids side effects for stopped emissions and is thus more
12216         reliable).
12217         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12218
12219         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12220         function from gtk_tooltips_expose, as we connect to ::expose_event
12221         *and* ::draw now.
12222
12223 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12224
12225         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12226         checks.
12227         (gtk_target_list_unref): Likewise.
12228
12229         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12230
12231 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12232
12233         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12234         guard against division by zero. (Fixes bug #1339)
12235
12236 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12237
12238         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12239         Prevent the trivial leak of information of allowing
12240         word motion when the entry is not visible.
12241
12242 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12243
12244         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12245         modality to error dialog as well as confirmation dialogs.
12246         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12247
12248 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12249
12250         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12251         tree->view_lines.
12252         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12253
12254         * gtk/Makefile.am (install-data-local): Solaris apparently
12255         has various troubles with ln -f; use rm first instead.
12256         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12257
12258 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12259
12260         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12261         use `cp' followed by `rm' (the `rm' was already there).
12262
12263 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12264         
12265         * configure.in: Fix autoconf warnings about cross compilation by
12266         trying to provide sane defaults for AC_TRY_RUN.
12267         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12268         put them into $(srcdir) when generated. Also add a dependency of
12269         gtksignal.h on gtkmarshal.h for -j builds. 
12270         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12271
12272 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12273
12274         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12275         GDK_THREADS_{LEAVE,ENTER} pair.
12276         (From Paul Fisher <pnfisher@redhat.com>)
12277
12278 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12279
12280         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12281         width and height are always >0 (owen).
12282
12283 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12284
12285         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
12286         change that assured that a widget's allocated with and height are
12287         always >1, since this breaks *buggy* panel code. unfortunately this
12288         back-breaks the gimp's color selector.
12289
12290         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
12291         allocation is always >0 in width and height, before sending the
12292         configure event; this is a *gross* hack to get the gimp back to work.
12293         
12294         * marked both cases with TODO-1.3
12295
12296 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
12297
12298         * gtk/gtktext.c: Don't display wrap indicators when
12299         text is not editable and word wrap is on.
12300
12301 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
12302
12303         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
12304         option menus here as they are not derived from menu shell, assure that
12305         the option menu has a menu we can add items to.
12306
12307 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
12308
12309         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
12310         width/height to (gint) before calculations and check against < 0 to
12311         avoid guint wraparounds.
12312
12313 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
12314
12315         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
12316         width and height is never zero. sanity check both dimensions against
12317         32767 and issue a warning if the allocation is greater than that.
12318
12319 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
12320
12321         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
12322         to g_main_pending() as well.
12323
12324 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
12325
12326         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
12327         call to g_main_iteration() - since that will regrab
12328         GTK+ lock to process events.
12329
12330 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
12331
12332         * gtk/gtkwindow.c
12333         - Regularize with the rest of GTK+ by making widget->requisition
12334           not reflect the set_usize()
12335         - Always recompute geometry hints, then check if they
12336           changed before sending them to the X server. The
12337           previous checks for changes would fail in a number
12338           of circumstances. 
12339
12340 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
12341
12342         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
12343
12344 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
12345
12346         * gtk/gtkdnd.c:
12347         - Code cleanups
12348         - Instantaneously update on modifier key presses
12349         - Allow cancellation of the drag with Escape.
12350
12351 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
12352
12353         * gtk/testgtk.c (create_handle_box): Set the policy
12354         to auto_shrink - otherwise the appearance is rather
12355         strange when flipping between horizontal and vertical.
12356
12357 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
12358
12359         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
12360         (gtk_window_set_default_size): don't change a value if it's < 0.
12361         queue a resize.
12362
12363 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
12364
12365         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
12366
12367 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
12368
12369         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
12370         add an extra "/" when concating "/" + filename.
12371         (From Matt Grossman <mattg@oz.net>)
12372
12373 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
12376         for fg_gc if we set it for drawing pixmap.
12377
12378 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
12379
12380         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
12381         
12382         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
12383         already set, call old engine's destroy function and
12384         unref the old engine.
12385
12386 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
12387
12388         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
12389
12390 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
12391
12392         * gtk/gtkaccelgroup.h: mark certain functions as internal.
12393
12394 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
12395
12396         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
12397         expand behaviour changed.
12398
12399         * gtk/gtklabel.c (gtk_label_set_pattern):
12400         (gtk_label_set_justify):
12401         (gtk_label_set_line_wrap):
12402         don't bother invoking queue_clear, the reallocation does
12403         that for us, always free_words so the upcoming resize will
12404         relayout the label's contents.
12405
12406 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
12407
12408         * applied argument implementation patches from Elena Devdariani
12409         <elena@cogent.ca>.
12410
12411         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
12412         ::space_style, ::relief
12413         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
12414         * gtk/gtkpreview.c: ::expand
12415         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
12416         * gtk/gtknotebook.c: ::homogeneous
12417         * gtk/gtklabel.c: ::wrap
12418         * gtk/gtklist.c: ::selection_mode
12419         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
12420         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
12421         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
12422         * gtk/gtkclist.c: ::sort_type
12423         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
12424         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
12425
12426 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
12427
12428         * gtk/gtkstyle.c: Removed ill-thought-out part of last
12429         comment.
12430
12431 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
12432
12433         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
12434         counting right when we have to attach a new style
12435         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
12436
12437         * gtk/gtkstyle.c: Documented the refcounting
12438         peculularities of gtk_style_attach.
12439
12440 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12441
12442         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
12443         window types.
12444
12445         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
12446         of GTK_TOPLEVEL for creating the window.
12447
12448 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12449
12450         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
12451         the last argument (reported by Per Winkvist).
12452         
12453 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
12454
12455         Fixes for invisible XOR lines (Frank Loemker
12456         <floemker@TechFak.Uni-Bielefeld.DE>)
12457         
12458         * gtk/gtkclist.c (gtk_clist_realize): Always use
12459         a non-zero pixel for GDK_XOR.
12460
12461         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
12462         Use GDK_INVERT instead of GDK_XOR.
12463
12464 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
12465
12466         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
12467         signals if h/voffsets differ from adjustment values.
12468         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
12469
12470 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
12471
12472         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
12473         ::selection-done emissions up to the topmost menu shell.
12474
12475 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
12476
12477         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
12478         the user data on the window before destroying it.
12479
12480         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
12481         unrealize handler to take care of destroying 
12482         notebook->panel properly. 
12483         (Bug #1198 - Morten Welinder <terra@diku.dk>)
12484
12485         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
12486         of g_new and g_realloc to stop memory leak. (Actually,
12487         we could just use g_realloc(), but I'm not 100% sure
12488         that is portable).
12489         (Bug #1196 - Morten Welinder <terra@diku.dk>)
12490
12491 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12492
12493         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
12494
12495         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12496         for fontsets.
12497
12498         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
12499         with bin/button confusion.
12500
12501 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
12502
12503         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
12504         and show how preselection of radio items is done.
12505
12506 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
12507
12508         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
12509         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
12510         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
12511         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
12512         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
12513         * gtk/gtktable.c (gtk_table_attach): 
12514         * gtk/gtklist.c (gtk_list_insert_items): 
12515         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
12516         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
12517         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
12518         * gtk/gtkbin.c (gtk_bin_add): 
12519         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
12520         * gtk/gtkfixed.c (gtk_fixed_put): 
12521         * gtk/gtklayout.c (gtk_layout_put):
12522         general fixups to container_add logic. always realize child if
12523         child->parent is realized, only map the child and queue a resize
12524         if child and child->parent are both visible.
12525
12526 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
12527
12528         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
12529         instead of gtk_container_foreach to walk and unrealize children, so
12530         composite children get also unrealized.
12531         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
12532         (gtk_widget_map): assert that the widget is visible (basic constrain).
12533         (gtk_widget_real_map): assert that the widget is realized (basic
12534         constrain).
12535
12536 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
12537
12538         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
12539
12540 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
12541
12542         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
12543         file for iso-8859-2 locales.
12544
12545         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
12546
12547 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
12548
12549         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
12550          (Pointed out by andy@rz.uni-karlsruhe.de and others).
12551          Remove some suspicious and useless lines. 
12552
12553 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
12554
12555         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
12556         width,height = 0, 0 to mean - here to edge of window,
12557         instead of -1, -1, since the former is all we support.
12558
12559 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
12560
12561         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
12562         when removing from quit_functions list.
12563
12564 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
12565
12566         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
12567
12568 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
12569
12570         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
12571          When redrawing characters on non-visible entry, use appropriate
12572          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
12573
12574 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
12575
12576         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
12577         from drag coordinates.
12578         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
12579         use drag_dest_cell.
12580
12581         * gtk/gtktree (drag_dest_cell)
12582         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
12583         (Bug #1129)
12584
12585 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
12586
12587         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
12588         translate_* fields.
12589         (gtk_item_factory_finalize): invoke translate_notify independant from
12590         translate_data.
12591         (gtk_item_factory_set_translate_func): likewise.
12592         (gtk_item_factory_destroy): only remove ifactory pointer from those
12593         widgets that belong to us (stupid me).
12594
12595 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
12596
12597         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
12598         rc_style list when lookup succeeeds.
12599
12600 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
12601
12602         * gtk/gtkctree.c (resync_selection): 
12603         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
12604         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
12605         bug.
12606
12607 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
12608
12609         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
12610         Add some missing GDK_THREADS_ENTER()/LEAVE around
12611         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
12612
12613 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
12614
12615         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
12616         rather than emit_by_name.
12617
12618         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
12619         on the widget across multiple signal emissions.
12620         (gtk_editable_delete_text): same here.
12621         (gtk_editable_class_init): set widget_class->activate_signal after
12622         editable_signals[ACTIVATE] has been created.
12623
12624 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
12625
12626         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
12627         position here prematurely -- we might not have the
12628         right ->min_position and ->max_position yet.
12629
12630 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12631
12632         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
12633         Add error traps so if the other end of the connection
12634         dies, we survive.
12635
12636         * gtk/gtkselection.c (gtk_selection_notify): Clean
12637         up properly when selection property retrieval fails.
12638         
12639         * gtk/gtkselection.c (gtk_selection_request): Correctly
12640         reject SelectionRequest notifies where the handler
12641         returns no data.
12642
12643 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12644
12645         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
12646         when we've previously highlighted.
12647
12648         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
12649         emit two "drag_leave" signals for Motif drops.
12650
12651         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
12652         back the correct status messages when dropping from
12653         Motif onto a proxy window that is rejecting the
12654         drop.
12655
12656 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
12657
12658         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
12659         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
12660         to compare two argument values. added gtk_arg_to_valueloc() to set a
12661         variable from an arg through its location (pointer).
12662
12663         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
12664         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
12665         as gfloat*, uchars are collected as guchar*, ints are collected as
12666         gint*, etc...
12667
12668 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
12669
12670         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
12671         Include <string.h> instead of <strings.h>.
12672
12673         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
12674         (actually, a lot more duplicate includes occur if
12675          you trace through the sequence of #include's)
12676         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
12677         
12678 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12679
12680         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12681         gtk-a-higuti-990322-[0-3]
12682
12683         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12684         that was causing -DX_LOCALE not to work.
12685
12686         * gtk/gtkrc.c (gtk_rc_init):
12687         X_LOCALE will never have LC_MESSAGES defined
12688
12689 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
12690
12691         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
12692         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
12693
12694         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
12695         left/right as well (gtk-michael-980726-0.patch.gz).
12696
12697         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
12698         for pointer values, use gchar instead of char. fixed uline allocation
12699         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
12700         chunks instead of G_ALLOC_ONLY.
12701         (gtk_label_size_request): always alter requisition as passed and leave
12702         widget->requisition alone.
12703         (gtk_label_set_text): allow NULL strings.
12704         (gtk_label_new): likewise.
12705
12706 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
12707
12708         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
12709
12710 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
12711
12712         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
12713         *and* mapped (i.e. drawable).
12714         (gtk_bin_expose): only send exposes to drawable children.
12715
12716         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
12717         (gtk_box_expose): only send exposes to drawable children.
12718
12719         * gtk/gtkhscale.c (gtk_hscale_draw): 
12720         * gtk/gtkvscale.c (gtk_vscale_draw):
12721         hm, this is an ugly one. we first compute the size of our trough area
12722         here (window relative) and then check intersection with the draw_area
12723         which is parent relative because we're a NO_WINDOW widget, so we need
12724         to offset the trough area by allocation.x and allocation.y before the
12725         check. (this must not be done for the background area though, since
12726         that's already computed parent relative).
12727
12728 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
12729
12730         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
12731         unrealize title buttons.
12732
12733 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
12734
12735         * gtk/gtkclist.c (gtk_clist_column_title_passive)
12736         (gtk_clist_column_title_active): 
12737         only connect/disconnect to GtkWidgetClass::event to block mouse events.
12738
12739         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
12740         zero initialize event, removed superfluous gdk_window_get_pointer call
12741
12742         * gtk/gtklist.c (gtk_list_vertical_timeout)
12743         (gtk_list_horizontal_timeout): removed superfluous
12744         gdk_window_get_pointer call
12745
12746 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12747
12748         * plugging problems reported by "Bruce Mitchener, Jr."
12749         <bruce@puremagic.com> due to a purify session.
12750
12751         * gtk/gtkstyle.c:
12752         (gtk_style_ref): 
12753         (gtk_style_unref): assert ref_count to be > 0.
12754
12755         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
12756         the requisition.
12757         (gtk_clist_set_shift): likewise.
12758
12759         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
12760         adjustments.
12761
12762         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
12763         event before sending it and set send_event to TRUE (which needs to
12764         be done for *all* synthesized events).
12765         (gtk_list_vertical_timeout): likewise.
12766
12767         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
12768         leaks.
12769
12770         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
12771         to TRUE when synthesizing events.
12772
12773 [ *** end of merges from 1.2 *** ]      
12774         
12775 1999-11-21  Tor Lillqvist  <tml@iki.fi>
12776
12777         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
12778         (or copied from gdkconfig.h.win32 on Win32, sigh).
12779
12780         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
12781
12782         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
12783
12784         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
12785
12786         * gdk/gdkconfig.h.win32: New file.
12787
12788         * gdk/win32/makefile.cygwin: Build just a static archive here.
12789
12790         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
12791         for the DLL from the static archive built above.
12792
12793         * gdk/gdk.def: Moved here from the win32 subdirectory.
12794
12795         * gdk/win32/*: Adapt for the changed private struct organisation.
12796
12797         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
12798
12799 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
12800
12801         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
12802         for wheel mice (buttons 4 and 5).
12803
12804 1999-11-18  Tor Lillqvist  <tml@iki.fi>
12805
12806         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
12807         drawables use just the pixel field in the foreground and
12808         background GdkColor of the GdkGC.
12809
12810         gdk_gc_set_{fore,back}ground() are called in the GIMP with
12811         GdkColors containing uninitialized (red,green,blue) fields, and
12812         just the pixel field filled in, and furthermore in the
12813         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
12814         It thus turns out that we really don't need to have the full
12815         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
12816         it later to have just the pixel values.
12817
12818 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12819
12820         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
12821
12822 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
12823
12824         * docs/gtkfaq.sgml: threads example from Erik Mouw.
12825         New question on GtkLabel background colors.
12826
12827         * docs/gtk_tut.sgml:
12828           - Correct the example code callback
12829             function definitions.
12830           - Update the gtkdial example code, from Frans van Schaik.
12831           - Update setselection.c to current API.
12832
12833         * examples/Makefile examples/*/*.c: Update to code
12834         listed in tutorial.
12835
12836 1999-11-10  Tor Lillqvist  <tml@iki.fi>
12837
12838         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
12839         subrange table (from the "Developing International Software for
12840         WIndows 95 and Windows NT" book) was missing the Hangul syllable
12841         block... Get the loaded font's charset correctly.
12842
12843         (Note that this, and the other *-win32.c files, still really are
12844         the old ones, the win32 subdirectory is not ready for compilation
12845         yet after the reorg.)
12846
12847 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
12848
12849         * gtk/gtkclist.c: Fix off-by-one bug in parameter
12850         check.
12851
12852 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
12853
12854         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
12855         on results of XQueryDeviceState().
12856
12857 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
12858
12859         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
12860         we need to accesss only ->children. We need an accessor
12861         for the children.
12862
12863         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
12864         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
12865         to get rid of gdkx.h include.
12866         
12867         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
12868         and random references to 'None'.
12869
12870         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
12871         Get rid of unused #include <gdk/gdkx.h>
12872
12873         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
12874         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
12875         gdkconfig.h.
12876
12877 1999-11-08  Tor Lillqvist  <tml@iki.fi>
12878
12879         * gdk/win32/gdkdraw.c
12880         * gdk/win32/gdkfont.c
12881         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
12882         following yesterday's changes. (Unrelated to Owen's reorg.)
12883
12884 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
12885
12886         * gdk/x11/gdkinput-gxi.c: Add missing include,
12887           fix GdkWindowPrivate => GdkDrawablePrivate.
12888
12889         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
12890
12891         * gdk/x11/Makefile.am (xinput_sources): Add missing
12892         backslash to fix building with --with-xinput=none
12893
12894 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
12895
12896         Move all X specific code into the x11/ directory.
12897         Aside from shuffling things around, did the following:
12898
12899        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
12900          gdk_arg_context_* - a simple argument parsing system
12901          in the style of popt.
12902
12903        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
12904          gdk/x11/gdkprivate-x11.h:
12905          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
12906          add ->klass and ->klass_data fields. The klass_data
12907          field points to an auxilliary structure that is
12908          windowing system dependent.
12909
12910        * gdk/gdkfont.c: Make most of the measurement functions
12911          simply wrappers around gdk_text_extents().
12912
12913        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
12914          _gdk_font_strlen() function that hides the weird
12915          behavior in gtk+-1.[02] where a string is interpreted
12916          differently for 8-bit and 16-bit fonts.
12917
12918        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
12919          to store common code for synthesizing double/triple
12920          press events.
12921         
12922        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
12923          Make all the function that modify an existing GC
12924          simply wrappers around gdk_gc_set_values().
12925          
12926        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
12927          for throwing out later.
12928
12929        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
12930          GdkImagePrivate and GdkColormapPrivate to have a
12931          windowing system dependent part (GdkFontPrivateX etc.)
12932          that "derives" from the system-independent part.
12933
12934        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
12935          Got rid of the included-source-files for XInput in
12936          favor of automake conditionals. (Which didn't exist
12937          when XInput support was originally added.)
12938
12939        * gdk/gdkrgb.c: Remove the visual id from the debugging
12940          statements since that is X11 specific; print out
12941          type/depth info instead.
12942          
12943
12944 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
12945
12946         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
12947         loading duplicates of hashed fonts.
12948
12949         * gdk/gdk.c (gdk_keysym_convert_case): rename
12950         gdk_XConvertCase to gdk_keysym_convert_case, allow
12951         results to be NULL in the GTK+ style.
12952
12953         * gdk/gdkcompat.h: Started compatibility header
12954         for renames.
12955
12956 1999-11-07  Tor Lillqvist  <tml@iki.fi>
12957
12958         * gdk/win32/gdkprivate.h: New font private structures, related to
12959         fontsets.
12960
12961         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
12962         gdk_font_list_free(). On X11, will just be wrappers to
12963         XListFonts() and XFreeFontNames(). On Win32, the code previously
12964         in gtkfontsel.c is now here.
12965
12966         New function gdk_font_xlfd_create(). On X11 will get the FONT
12967         property of the font (for GDK_FONT_FONTs), or call
12968         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
12969         builds a XLFD style name from the font information in the LOGFONT
12970         struct(s).
12971
12972         New function gdk_font_xlfd_free(), which correspondingly frees the
12973         string returned by gdk_font_xlfd_create().
12974
12975         Implement fontsets on Win32. Add a function that iterates over a
12976         wide char string and calls a callback function for each substring
12977         of wide chars from the same Unicode subrange (and thus probably
12978         available in the same real font).
12979
12980         Improve the XLFD emulation a bit.
12981
12982         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12983
12984         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12985         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12986         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12987         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12988         ImmGetCompositionStringW() to get the composed Unicode chars.
12989
12990         * gdk/win32/gdkgc.c
12991         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12992         struct changes.
12993
12994         * gdk/win32/gdk.def: Add the new functions.
12995
12996 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12997
12998         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12999         get the Platform SDK to get <dimm.h>.
13000
13001         * gdk/win32/gdkevents.c: More event handling fixes and
13002         simplification. Never generate motion events with is_hint true. We
13003         used to do that on bogus grounds earlier. Windows sends
13004         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13005         moved, ignore these.
13006
13007         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13008
13009         * gdk/win32/gdkglobals.c
13010         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13011         the TrackMouseEvent function, and use it.
13012
13013         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13014         char before calling WideCharToMultiByte in order to get a string
13015         for the window title.
13016
13017         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13018
13019         * gdk/win32/gdk.def: Remove obsolete functions.
13020
13021         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13022         /nodefaultlib and /defaultlib switches.
13023
13024         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13025
13026 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13027
13028         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13029         EuroSign).
13030
13031         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13032         same type as GdkWChar, especially on Win32.
13033
13034         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13035
13036         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13037         before passing to Windows GDI for drawing etc. Convert to the
13038         system default codepage before passing to Windows as window
13039         titles.
13040
13041         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13042         support changing input locale on the fly.
13043
13044         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13045         on-the-fly changes. Convert incoming characters from the current
13046         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13047         on the current input language. Use keysym<->Unicode mapping tables
13048         and functions borrowed from xterm sources.
13049
13050         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13051         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13052         Manager) if available. IMEs and the Active IMM are available under
13053         the disguise of Chinese, Korean and Japanese support for IE and
13054         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13055         support is present in all editions (as long as you install it).
13056
13057         Call DispatchMessage from gdk_events_queue() (and thus
13058         gdk_WindowProc()), instead of duplicating the code in
13059         gdk_WindowProc().
13060
13061         Reworked the grab handling and propagation code, factored out
13062         duplicated code snippets into separate functions. Other cleanups,
13063         too.
13064
13065         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13066         the <dimm.h> header describing the Active IMM.
13067
13068         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13069         just do the same as for "single" fonts.
13070
13071         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13072         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13073         the new keysyms from gdkkeysyms.h.
13074
13075         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13076         fontset, so that gtkentry uses wide characters.
13077
13078         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13079         GTk+'s system directory "gtk+", not "gtk".
13080
13081 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13082
13083         * docs/gtkfaq.sgml: FAQ update
13084
13085 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13086
13087         * gdk/win32/gdkprivate.h: Add more font private data.
13088
13089         * gdk/win32/gdkfont.c
13090         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13091         fonts and strings. Now works much better. You still have to
13092         have a correct font selected, though. No fontset emulation yet.
13093
13094 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13095
13096         * gtk/maketypes.awk: Use G_OS_WIN32.
13097
13098         * gtk/gtk.def: Add some missing entry points. Also some non-public
13099         ones, but PyGTK porter claims to need them.
13100
13101         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13102         built-in type generation.
13103
13104 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13105
13106         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13107         GDK_FONT_FONT fonts (which is all we have for now, we don't
13108         emulate fontsets). The X11 version uses plain XDrawString in that
13109         case, too. The string passed to gdk_draw_text_wc seems to be in
13110         fact (at least, when used by gtkentry and gtktext) either in a
13111         single-byte charset, or a DBCS. Not Unicode.
13112
13113         This fixes the problem in gtkfontsel, where even if you had
13114         selected a font with a non-Latin1 charset (windows-greek, for
13115         instance), the preview still used Latin-1 glyphs.
13116
13117         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13118         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13119         (gdk_font_load): Recognize the demibold etc weights, even if we
13120         don't have the corresponding constants in the headers.
13121         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13122         version. Should save font resources a bit, when we don't have
13123         multiple HFONTs for the same font.
13124
13125         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13126         version.
13127
13128 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13129
13130         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13131         X values
13132
13133 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13134
13135         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13136         layout support (as mentioned on
13137         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13138
13139 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13140
13141         * gtk/fnmatch.c
13142         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13143
13144 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13145
13146         * configure.in (ALL_LINGUAS): Added Galician (gl)
13147
13148 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13149
13150         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13151
13152         * gdk/win32/gdkcompat.c: New file, actually provide an
13153         implementation for the deprecated functions. (Just temporarily.)
13154
13155         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13156
13157         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13158
13159         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13160
13161 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13162
13163         * configure.in: Added "uk" to ALL_LINGUAS.
13164         
13165 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13166
13167         * configure.in: correct checking for BeOS check
13168
13169         * gdk/gdktypes.h
13170         * gtk/fnmatch.c
13171         * gtk/gtkfilesel.c
13172         * gtk/gtkitemfactory.c
13173         * gtk/gtkmain.[ch]
13174         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13175
13176 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13177
13178         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13179         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13180         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13181         by Bulgarian). 
13182
13183 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13184
13185         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13186         Fix a reference to window_private->destroyed.   
13187
13188         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13189         (ugly) setting of an internal GdkWindow member to use
13190         a _slightly_ cleaner macro.
13191
13192         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13193         GdkDrawablePrivate and GdkWindowPrivate.
13194         Add extra macros for accessing GDK_DRAWABLE_ components.
13195
13196         * *.[ch]: Massive adjustments for the above, use the
13197         new macros in a lot of places.
13198
13199 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13200
13201         * gdk/gdktypes.h: Make GdkDrawable the base type,
13202         not GdkWindow.
13203
13204 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13205
13206         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13207
13208 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13209
13210         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13211
13212 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13213
13214         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13215         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13216
13217         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13218
13219         * docs/gtk-config.1: Now autogenerated.
13220         * docs/Changes-1.4.txt: started
13221         
13222 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13223
13224         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13225         to #ifdef also here.
13226
13227         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13228         Owen did to the X11 backend.
13229
13230         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13231         ScrollWindowEx when blitting inside a window, it can't be correct
13232         in the general case.
13233
13234         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13235         WM_GETMINMAXINFO is easier.
13236
13237         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13238         depth equal to the bitspixel value, not the visual's depth.
13239
13240         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13241         to 24 even if the bitspixel value is 32.
13242
13243         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13244         need to check for depth==32 when bpp==32, depth will always be 24.
13245
13246 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13247
13248         * docs/Changes-1.4.txt: Started
13249         
13250         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13251
13252         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13253         
13254         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13255         into C file.
13256         
13257         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13258         header to gdkinputprivate.h.
13259
13260         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13261         unused since before 1.2.
13262
13263 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13264
13265         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13266         expand possible hex escapes in the font family (put there by
13267         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13268         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13269         On Win32, add hex escapes here, too.
13270
13271 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13272
13273         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13274         to #ifdef GDK_WINDOWING_X11.
13275
13276 [ Merges from gtk-1-2 ]
13277
13278 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13279
13280         * configure.in: fixed "GNU Make" check to pass with new make version
13281         3.77.95.
13282
13283 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13284
13285         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
13286         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
13287         AM_PATH_GTK() macros don't get confused by the -pre1.
13288
13289 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13290
13291         * configure.in (REBUILD): Change check for perl5
13292           to check explicitely for v >= 5.002. (5.001
13293           does not work with our scripts.)
13294
13295 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
13296
13297         * configure.in: evaluate $PERL for the perl version check. added
13298         --disable-rebuilds to give the user an option to completely disable
13299         any source autogeneration rules.
13300
13301 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
13302
13303         * configure.in: evaluate $ac_make when checking for GNU Make.
13304
13305 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13306
13307         * docs/Makefile.am: added generation.txt.
13308
13309         * Makefile.am: require automake 1.4, build README from README.in and
13310         INSTALL from INSTALL.in in dist-hook.
13311         
13312         * README.in:
13313         * INSTALL.in: new files to autogenerate README and INSTALL from.
13314
13315         * configure.in: figure whether we have GNU Make
13316
13317         * docs/generation.txt: minor additions/corrections.
13318
13319 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13320
13321         * docs/gtkfaq.sgml: FAQ Update
13322
13323 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13324         
13325         * configure.in: Fix autoconf warnings about cross compilation by
13326         trying to provide sane defaults for AC_TRY_RUN.
13327
13328 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
13329
13330         * ltconfig
13331         * ltmain.sh: upgrade to libtool 1.3.3
13332
13333 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
13334
13335         * INSTALL: Indicate that the --with-glib= configure
13336         time flag is unsupported.
13337
13338 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
13339
13340         * docs/generation.txt: Added a file that gives
13341         documenation about the autogeneration process for
13342         various autogenerated files.
13343         
13344 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13345
13346         * configure.in (LIBS): Look for libgmodule in the
13347         right location.
13348
13349 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
13350
13351         * docs/gtk_tut.sgml: Removed references to
13352         code examples in my directory on gtk.org as
13353         they should all be in the tutorial now.
13354
13355         * docs/gtk_tut.sgml: Added sources for dial-test
13356         and scribble-xinput programs that were previously
13357         missing.
13358
13359 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
13360
13361         * TODO: Added entry about menu keyboard navigation, removed
13362         some finished items.
13363
13364 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
13365
13366         * acinclude.m4: Standardize on func_dgettext
13367         not func_gettext, so that the checks for dgettext
13368         actually are paid attention to.
13369
13370 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
13371
13372         * configure.in (LIBS): Add $INTLLIBS into $LIBS
13373         directly, rather than repeating the checks for
13374         gettext.
13375
13376         * INSTALL: Added information about gettext and
13377         NLS support.
13378
13379         * acinclude.m4 (LIBM): Check for dgettext, not
13380         just gettext. This should hopefully fix things wrt
13381         systems with old versions of GNU gettext installed.
13382
13383 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13384
13385         * configure.in (LIBS): Look for libgmodule in the
13386         right location.
13387
13388 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13389
13390         * autogen.sh: add --enable-maintainer-mode
13391
13392         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
13393
13394 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
13395
13396         * docs/gtk-config.1.in:
13397           docs/Makefile.am:
13398           configure.in: gtk-config is now generated.
13399
13400         * docs/gtk-config.1: Removed, now generated.
13401
13402 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
13403
13404         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
13405         handle CreateNotify itself, still put out a debuging message for
13406         --gdk-debug=events. made the ReparentNotify debugging message more
13407         verbose.
13408         wrap xcoords translation for ConfigureEvents into an error trap,
13409         a destroy event may already be pending, and in that case, the
13410         actuall coordinate values are not at all critical.
13411
13412 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
13413
13414         * gdk/gdkcc.c: Stop leaking the color_hash all over
13415         the place. Simplify and improve the logic.
13416
13417 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13418
13419         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
13420         for prototypes and function implementations consistent (reported
13421         by Tomas Ogren).
13422
13423 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13424
13425         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
13426         send_event set in debugging output.
13427         (gdk_compress_exposures): default initialize the event so we don't
13428         operate on bogus values (namely send_event).
13429
13430 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13431
13432         * gdk/gdkwindow.c: When we receive an unexpected
13433         destroy notify on one of our windows, don't just
13434         warn about it, also mark our windows as destroyed.
13435
13436 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
13437
13438         * gdk/gdkfont.c (gdk_font_hash_insert): Add
13439           name => font and name => fontset hashes. The 
13440           name => fontset hash is a _big_ win since we
13441           weren't previously caching fontsets at all and loading
13442           fontsets is expensive. The name => font hash
13443           is less of a win, but it does save us from doing
13444           repeated XQueryFont calls on the same font.
13445
13446         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
13447           list so we can remove font/fontset from hash.
13448
13449 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13450
13451         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
13452           and slightly confusing test. [ XInternAtom (,,TRUE)
13453           will never return None ].
13454
13455 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
13456
13457         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
13458           gdk/gdkwindow.c (gdk_window_set_hints):
13459
13460         Don't omit setting the properties if flags == 0 -
13461         there may be an existing set of properties there
13462         already. (Very old bug. Would it be better to
13463         delete the property instead?)
13464
13465         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
13466           spelling error in comment.
13467
13468 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
13469
13470         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
13471           to avoid stomping over gdk_error_warnings.
13472
13473         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
13474           as (bits_per_pixel + 7) / 8. This gives the same
13475           result as before for multiples of 8, but actually
13476           a "reasonable" value for 1bit or 4bit displays.
13477
13478 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13479
13480         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
13481         GNU Make.
13482
13483 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13484
13485         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
13486         discarding configure events.
13487
13488 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13489
13490         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
13491         refcount is greater than zero.
13492
13493         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
13494
13495         * gdk/gdkfont.c (gdk_font_unref): Likewise.
13496
13497         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
13498
13499         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
13500
13501 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13502
13503         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
13504         that format 32 => sizeof(item) == 4. It really is
13505         sizeof(long).
13506
13507 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
13508
13509         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
13510         core dump at all on X IO errors, only core dump
13511         if --enable-debug for X errors.
13512
13513 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
13514
13515         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
13516         unknown window:" message. disabled ConfigureNotify discarding code,
13517         because it led to events being processed out of order.
13518
13519 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
13520
13521         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
13522
13523         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
13524         we export this function, supress error warnings and don't reset the
13525         error code in the first half of this function.
13526
13527         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
13528         code (instead of just -1) so gdk_error_trap_pop() reveals something
13529         actually informative about the error that happened.
13530
13531         * gdk/*.c:
13532         don't rely on gdk_error_code being -1 if an error occoured, but just
13533         gdk_error_code != 0.
13534
13535 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
13536
13537         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
13538         pointer *before* invoking the filter function, so we at least don't
13539         crash if a filter is removed that is currently executed. window filters
13540         *really* need to be made truely reentrant at some point.
13541
13542 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
13543
13544         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
13545         PropertyNotify debug messages.
13546
13547 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
13548         
13549         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
13550         
13551         * gdk/gdkim.c: Fix cut-and-paste errors for 
13552         x/y and PreeditAttributes/StatusAttributes.
13553
13554 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13555
13556         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
13557         G_MAXINT to 2^16 to alleviate overflow problems in
13558         various window managers.
13559
13560 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13561
13562         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13563         for fontsets.
13564
13565 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
13566
13567         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
13568         Initialize size_hints.x and size_hints.y because kwm
13569         brokenly pays attention to them.
13570         (Bug #1181 -  Lars Heete <hel@admin.de>)
13571
13572 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
13573
13574         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
13575         return value of gdk_list_visuals(). 
13576         (Bug #1193 - Morten Welinder <terra@diku.dk>)
13577
13578 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
13579
13580         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
13581         XSetIMValues to (void *) when comparing to NULL, to workaround
13582         the problem of some compilers barfing since older X headers don't
13583         have the prototype for it.
13584
13585 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
13586
13587         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
13588         for pseudocolor where colormap->colors was double
13589         allocated.
13590
13591         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
13592         color value in the hash table with the pixel filled
13593         in so when we do later hash table lookups, the color
13594         value is correct.
13595         
13596 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
13597
13598         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
13599         making the call
13600
13601 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
13602
13603         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
13604         pointed out by Morten Welinder <terra@diku.dk>.
13605
13606 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13607
13608         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13609           default filter from the list
13610
13611 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13612
13613         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13614           default filter from the list
13615
13616 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
13617
13618         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
13619
13620         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
13621         g_strdup_printf instead of calcing the length separately
13622
13623 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
13624
13625         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
13626         that we don't do in many other places. (Fixing duplicate 
13627         #include of config.h)
13628
13629         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
13630         Otherwise, #ifndef XINPUT_NONE check in the latter
13631         doesn't work. (Bug #546)
13632
13633 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
13634
13635         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
13636         "None" case insensitive.
13637
13638 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13639
13640         * gdk/gdkselection.c: 
13641         Add error traps so if the other end of the connection
13642         dies, we survive.
13643
13644 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13645
13646         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
13647         dest_xid field into two fields - one for the window
13648         to send in messages, one to indicate the last looked
13649         up window for caching purposes. This is needed, so
13650         that Leave messages get the correct window.
13651
13652 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
13653
13654         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
13655         Fix warning created by people mucking around
13656         with the gsource API.
13657
13658         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
13659         Change mapping between GIOCondition and GdkInputCondition
13660         to match the way the Linux kernel does it. This should
13661         fix problems where closed pipes were no longer signalling
13662         GDK_INPUT_READ on systems with a native poll().
13663
13664 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
13665
13666         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
13667         explicitly for the string "None" - it is in the XPM
13668         spec and some servers treat unknown colors in odd ways
13669         (like asking the user!)
13670
13671 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13672
13673         * gdk/gdkevents.c: made "->" into a "." of previous change so
13674         it compiles
13675
13676 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
13677
13678         * gdk/gdkevents.c (gdk_compress_exposures): Set the
13679         window field of the event structure before calling
13680         user filters.
13681
13682 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13683
13684         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
13685         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
13686
13687 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
13688
13689         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
13690         intermediate text property - prevents major memory
13691         leak when gdk_use_mb.
13692         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
13693
13694 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13695
13696         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13697         gtk-a-higuti-990322-[0-3]
13698
13699         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
13700         sizeof(wchar_t) != sizeof (GdkWChar)
13701
13702         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13703         that was causing -DX_LOCALE not to work.
13704
13705         * gtk/gtkrc.c (gtk_rc_init):
13706         X_LOCALE will never have LC_MESSAGES defined
13707
13708         * gdk/gdk.c (gdk_init_check):
13709         Remove --xim-preedit and --xim-status from argv properly.
13710
13711         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
13712         that the client window is present on the X server
13713         before we pass it to the input method.
13714
13715 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13716
13717         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
13718         if --display is specified on the command line, than
13719         the drag window will not be created on that display.
13720         
13721 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
13722
13723         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
13724         lookups with only_if_exists == TRUE were inserting
13725         bogus values into the atom cache.
13726
13727 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13728
13729         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
13730         then reset it to NULL.
13731
13732         * gdk/gdkcolor.c:
13733         (gdk_colors_free): 
13734         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
13735         key for g_hash_table_remove() in both functions, this prevents us
13736         from accessing possibly uninitialized portions of a GdkColor structure
13737         where we are only interested in its pixel value.
13738
13739 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13740
13741         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13742         font hash table, if we have a GdkFontPrivate entry for this font
13743         already, simply increment its reference count, provided by Olaf Dietsche
13744         <olaf.dietsche+list.gtk@netcologne.de>.
13745
13746 1999-09-21  Tor Lillqvist  <tml@iki.fi>
13747
13748         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
13749         just to be sure.
13750
13751         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
13752         unused variables, leftovers from the X11 version.
13753
13754         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
13755
13756         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
13757         downcase fields on X11.
13758
13759 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13760         
13761         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
13762         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
13763
13764 1999-09-17  Tor Lillqvist  <tml@iki.fi>
13765
13766         * gdk/win32/gdk.def: Add gdk_threads_mutex.
13767
13768         * gtk/makefile.msc: Correct path to libintl.
13769
13770         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
13771         use of gint vs. int, and gint vs. gboolean in headers and
13772         definitions. Use GtkType for the *_get_type functions. Note that
13773         these changes preserve binary compatibility.
13774
13775         * gdk/gdk.c
13776         * gdk/win32/gdk.c
13777         * gdk/gdk.h: Fix inconsistencies: gint vs int.
13778
13779         * gtk/gtkmain.c
13780         * gtk/gtkclist.c
13781         * gtk/gtkmenufactory.c
13782         * gtk/gtknotebook.c
13783         * gtk/gtkwidget.c: Fix inconsistencies, also gint
13784         vs. gboolean.
13785
13786         * gtk/gtkcolorsel.[ch]
13787         * gtk/gtkcombo.[ch]
13788         * gtk/gtkdrawingarea.[ch]
13789         * gtk/gtkgamma.[ch]
13790         * gtk/gtkhandlebox.[ch]
13791         * gtk/gtkhpaned.[ch]
13792         * gtk/gtkhruler.[ch]
13793         * gtk/gtkplug.[ch]
13794         * gtk/gtkpreview.[ch]
13795         * gtk/gtkruler.[ch]
13796         * gtk/gtksocket.[ch]
13797         * gtk/gtkstatusbar.[ch]
13798         * gtk/gtktoolbar.[ch]
13799         * gtk/gtkvbbox.[ch]
13800         * gtk/gtkvpaned.[ch]
13801         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
13802         functions.
13803
13804         * gtk/gtkgamma.h: Fix bug, missing () in call of
13805         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
13806
13807 1999-09-14  Tor Lillqvist  <tml@iki.fi>
13808
13809         * gdk/gdkcolor.c (gdk_colormap_new)
13810         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
13811         colormap->colors was allocated twice.
13812
13813         * gdk/win32/gdk.c: Remove some unused stuff.
13814
13815         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
13816         colormap.
13817
13818         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
13819         * gtk/gtklabel.h (gtk_label_get_type)
13820         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
13821         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
13822         in a couple of places, not guint.
13823
13824 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13825
13826         * configure.in,po/et.po: added Estonian language file
13827
13828 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13829
13830         * configure.in,po/da.po: added Danish file
13831
13832 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
13833
13834         * docs/gtkfaq.sgml: Minor FAQ Update
13835
13836 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
13837
13838         * docs/gtkfaq.sgml: FAQ update
13839
13840 1999-08-27  Tor Lillqvist  <tml@iki.fi>
13841
13842         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
13843         way to get window contents continually refreshed while resizing. I
13844         didn't like the effects myself, so it's not on by default.
13845
13846         * gdk/win32/gdkprivate.h: New flag variable
13847         gdk_event_func_from_window_proc, FALSE by default.
13848
13849         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
13850         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
13851         are passed --gdk-event-func-from-window-proc.
13852
13853         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
13854         and we have am event_func, call it instead of enqueing the event.
13855
13856 1999-08-23  Tor Lillqvist  <tml@iki.fi>
13857
13858         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
13859         Kelley: Set expose_count in GdkEventExposes correctly.
13860
13861         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
13862         MULTIPLE_WINDOW_CLASSES).
13863
13864         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
13865         for bug in NT, apparently NT *does* draw the end pixel, too, in
13866         LineTo with a one-pixel pen, so we don't have to do it ourselves.
13867
13868 1999-08-21  Tor Lillqvist  <tml@iki.fi>
13869
13870         Improvements by Hans Breuer: 
13871
13872         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
13873
13874         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
13875         CS_?REDRAW flags as they cause lots of (late) redraws when "show
13876         window contents while dragging" is turned on. Allocate at least
13877         one unique class for every GdkWindowType. If support for single
13878         window-specific icons is ever needed (eg. Dialog specific), every
13879         such window should get its own class.
13880
13881 1999-08-19  Tor Lillqvist  <tml@iki.fi>
13882
13883         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
13884         error that caused crashes.
13885
13886 1999-08-17  Tor Lillqvist  <tml@iki.fi>
13887
13888         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
13889         window, use ScrollWindowEx, and call UpdateWindow. This prevents
13890         bugs when for instance part of the window was outside the
13891         display. Thanks to Philippe Colantoni for finding and fixing this.
13892
13893 1999-08-16  Tor Lillqvist  <tml@iki.fi>
13894
13895         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
13896         endpoint calculations which were totally wrong. (A little RTFMing
13897         helps a lot ;-)
13898
13899         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
13900         from a separate directory, not from gettext, because of licensing
13901         issues (we want to use the LGPL version).
13902
13903         * README.win32: Mention the intl from glibc vs from gettext issue.
13904
13905 1999-08-13  Tor Lillqvist  <tml@iki.fi>
13906
13907         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
13908         in the key event handling: Now AltGr chars work again. Also,
13909         now Alt-digits are passed up as well as Control-digits.
13910         Pass keypad plus and minus as normal plus and minus.
13911
13912 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13913
13914         * docs/gtkfaq.sgml: FAQ Update
13915
13916 1999-07-25  Tor Lillqvist  <tml@iki.fi>
13917
13918         * README.win32
13919         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
13920         the Wintab SDK.
13921
13922         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
13923         OK, but getting closer. Guard against bogus tilt data from Wacom
13924         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
13925         enable easier building without Wintab.
13926
13927         * gdk/win32/gdkinput.h
13928         * gdk/win32/gdkevents.c 
13929         * gdk/win32/gdkwindow.c: Minor changes related related to above.
13930         
13931         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
13932         code. As we have just one visual on Win32, no sense to have it in a
13933         table, and no need for the hash table.
13934
13935         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
13936         better on white background.
13937
13938 1999-07-21  Tor Lillqvist  <tml@iki.fi>
13939
13940         * README.win32: Update gcc build instructions. Mention gettext is
13941         GPL.
13942
13943         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
13944         supported cursor size with GetSystemMetrics.
13945
13946         * gdk/win32/gdkfont.c
13947         * gtk/gtkfontsel.c: Guard against some font weight and charset
13948         symbols being undefined (in mingw32 headers).
13949
13950         * gdk/win32/makefile.cygwin
13951         * gtk/makefile.cygwin
13952         * gtk/gtkthemes.c: No longer need to have differently named
13953         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
13954
13955 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
13956
13957         * docs/gtkfaq.sgml: Long awaited FAQ update.
13958
13959 1999-07-15  Tor Lillqvist  <tml@iki.fi>
13960
13961         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
13962         it. Obscure bit manipulation needed.
13963
13964         * gdk/win32/gdkevents.c: Logging.
13965         
13966         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
13967         style (file name include compiler name) for theme engines.
13968
13969 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13970
13971         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13972
13973         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13974         events. The key.string wasn't zero-terminated, still we strdup'ed
13975         it in gdk_event_copy(). Synthesize crossing events for button
13976         events before possible propagation.
13977
13978         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13979
13980         * gdk/win32/makefile.cygwin
13981         * gtk/makefile.cygwin: Use new DLL naming style for the
13982         GCC-compiled ones.
13983
13984         * gdk/win32/makefile.msc
13985         * gtk/makefile.msc: Cosmetics mostly.
13986
13987         * gtk/gtk.def: Add missing entry points.
13988
13989         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13990
13991 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13992
13993         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13994         or height is zero. Don't print a warning if Pie or Arc fails, they
13995         always fail (?) for very narrow ellipses.
13996
13997         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13998         the part or the destination window corresponding to source area
13999         outside of the source drawable's boundary.
14000
14001         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14002         anything if less than two points.
14003
14004         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14005         return NULL. Gtk cut-and-paste inside a single program works
14006         better this way. (It always gets the clipboard contents from
14007         Windows, not from its own copy, which is cleared anyway. I can't
14008         say I fully understand what happens... Emulating the X selection
14009         and property stuff is a bit of a mess.)
14010
14011         * gdk/win32/gdkevents.c
14012         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14013
14014         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14015         that never got deleted). Revamp gdk_region_shrink.
14016
14017         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14018         after use.
14019
14020         * gtk/gtk.def: Add some missing entry points.
14021
14022         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14023         component.
14024
14025 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14026
14027         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14028         Control-digits specially.
14029
14030 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14031
14032         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14033
14034 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14035
14036         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14037         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14038         finding this.)
14039
14040 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14041
14042         * gtk+.spec.in: Corrected some typos in files section.
14043         
14044 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14045
14046         * README.win32: Mention using GNU gettext.
14047         * config.h.win32: Enable NLS stuff.
14048         * gtk/makefile.msc: Use GNU gettext.
14049         * gdk/win32/gdkdnd.c: Minor header reorg.
14050         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14051         cosmetics.
14052         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14053         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14054
14055 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14056
14057         * acinclude.m4
14058         * config.guess
14059         * config.status
14060         * ltconfig
14061         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14062
14063 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14064
14065         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14066         SafeAdjustWindowRectEx. Don't override all calls to
14067         AdjustWindowRectEx by it, but use it only in two places: When
14068         creating a new top-level window and when moving a top-level
14069         window.
14070
14071         Use screen coordinate rectangle, not client rectangle, in
14072         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14073         when we try to place a window so that the decoration (mainly,
14074         title bar) isn't visible.
14075
14076         These changes fix the bug that showed up for instance as the
14077         GIMP's saved top-level windows moving right and down (by an amount
14078         equal to the window decoration) for each session. This bug showed
14079         up also in testgtk's "Saved Position".
14080
14081         gdk_window_resize also redone a bit.
14082
14083 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14084
14085         * gtk/testgtkrc: Add (commented out) Windows-style theme
14086         include line.
14087
14088         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14089
14090 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14091
14092         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14093         gdkx.h to a gdk subdirectory, so that applications can include
14094         these with <gdk/*.h> without trouble.
14095
14096         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14097         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14098         have their bitmap destroyed.
14099
14100         * gdk/win32/gdk.def: Add gdk_root_parent.
14101
14102 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14103
14104         * configure.in
14105           gtk-config.in
14106           ltconfig
14107           ltmain.sh     
14108           gtk/Makefile.am: changes to compile nicely (with xlib) 
14109           on BeOS
14110
14111 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14112
14113         * acinclude.m4
14114         * config.guess
14115         * config.sub
14116         * ltconfig
14117         * ltmain.sh: upgrade to libtool 1.3
14118
14119 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14120
14121         * gtk/gtkclist.c:
14122         * gtk/gtkctree.c: merges from gtk-1-2
14123
14124 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14125
14126         Support added for building using a GNU toolchain on Win32,
14127         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14128
14129         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14130         * config.h.win32: Changes for gcc.
14131         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14132         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14133         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14134         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14135         Protect shl stuff unavaiilable with mingw32 headers.
14136         * gdk/win32/gdkevents.c: Fix typo.
14137         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14138         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14139         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14140         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14141         the mingw32 headers.
14142         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14143         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14144         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14145         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14146         Test for NATIVE_WIN32, not _MSC_VER.
14147         * gtk/gtkmain.c: No use warning about developer version on Win32,
14148         there aren't any non-developer versions anyhow.
14149         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14150         * gtk/makefile.msc: Use pthread from another directory. Minor other
14151         changes. 
14152
14153 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14154
14155         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14156           default filter from the list
14157
14158 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14159
14160         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14161          when gtk_widget_grab_default() is called for a widget that
14162          is not within a GtkWindow.
14163
14164 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14165
14166         * docs/gtk_tut.sgml, examples/clist.c: use a
14167           scrolled window in the clist example. Minor
14168           tutorial fixes.
14169
14170 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14171
14172         * docs/gtk_tut.sgml: Style check from David King
14173           <dking@youvegotmail.net>
14174
14175 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14176
14177         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14178         compile with unknown value of GDK_WINDOWING
14179
14180 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14181
14182         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14183         after the rule is fired.
14184         (install-exec-local): Install gdkconfig.h only if the contents are
14185         different from the currently installed gdkconfig.h.
14186
14187 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14188
14189         * gdk/Makefile.am (configexecincludedir): Rename from 
14190         configincludedir so that gdkconfig.h will be installed 
14191         as part of `make install-exec'. 
14192
14193 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14194
14195         * acinclude.m4
14196         * config.guess
14197         * config.sub
14198         * ltconfig
14199         * ltmain.sh: upgrade to libtool 1.2f
14200
14201         * autogen.sh: libtool is not required to autogen gtk+
14202
14203         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14204         needed)
14205
14206 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14207
14208         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14209         declaring gdk variables exported/imported from the DLL. New image
14210         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14211         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14212         GDK_DRAG_PROTO_OLE2.
14213
14214         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14215         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14216         declared only for the Win32 version, but could be in the X11
14217         version as well. (Needed for a Xlib-less gdk_imlib.)
14218         gdk_color_hash should have only one parameter. Declare
14219         gdk_threads_mutex with GDKVAR.
14220         
14221         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14222         just one parameter.
14223
14224         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14225         per pixel, not bits.
14226
14227         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14228         Fetch bpp (which means bits-per-pixel here) from another place on
14229         Win32. Accept also depth==32 (which we might get on Win32) with
14230         bpp==32.
14231
14232         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14233         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14234         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14235         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14236         in the backend-dependent directory, not in the common gdk
14237         directory.
14238
14239         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14240         headers.
14241
14242 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14243
14244         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14245         want to use the Gtk+ devel version (which is true, and yes - even i am
14246         currently working with the 1.2.x branch). so everyone reading this, you
14247         probably want to issue
14248         cvs checkout -r glib-1-2 glib
14249         and
14250         cvs checkout -r gtk-1-2 gtk+
14251         as your next two comands.
14252
14253 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14254
14255         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14256         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14257
14258         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14259         file. strongly deprecated the GTK_HAVE_* macros, we provide
14260         GTK_CHECK_VERSION() for people that need to check for certain
14261         Gtk+ versions.
14262
14263         * gtk/gtkcompat.h: removed this from CVS.
14264         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14265         idea right from the start, it just didn't seem like that back then.
14266
14267 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14268
14269         * merges from gtk-1-2:
14270
14271 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14272
14273         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14274         item factory class has been created.
14275         (gtk_item_factory_parse_rc): likewise.
14276
14277         * gtk/gtkmenu.c:
14278         keep proper references for old_active_menu_item.
14279         (gtk_menu_reparent): unset the usize of the new parent,
14280         so the menu can sanely be size requested and we don't get nasty screen
14281         artefacts upon next reparentation.
14282         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14283         enter notify. only synthesize enter notifies if the pointer really is
14284         inside the event window.
14285         (gtk_menu_popdown): use gtk_menu_shell_deselect().
14286         (gtk_menu_popup): move the background setting stuff into
14287         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
14288
14289         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
14290         gtk_menu_shell_select_item() to select the new item.
14291         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
14292         do the right thing for deselection as well.
14293
14294 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
14295
14296         * gtk/gtkwidget.[hc]:
14297         (gtk_widget_accelerators_locked): return whether a widget's accelerators
14298         are locked.
14299
14300         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
14301         existing accelerators if the widget's accelerators are locked.
14302
14303 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
14304
14305         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
14306
14307         * gtk/gtkmenu.c: truely forward key press and key release events to
14308         the menu widget from the toplevel or tearoff window. we can't simply
14309         connect to that, we need to stop further processing of the events as
14310         well.
14311
14312 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
14313
14314         * gtk/gtkmenu.c:
14315         (gtk_menu_key_press): pass event->keyval, event->state to
14316         gtk_accelerator_valid, instead of event->keyval twice.
14317         refuse to install single letter accelerators for menus that use
14318         single letter shortcuts.
14319
14320         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
14321         gtk_menu_ensure_uline_accel_group().
14322
14323         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
14324         which will always return an uline accel group, made
14325         gtk_menu_get_uline_accel_group() return NULL if the group isn't
14326         yet created.
14327
14328 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
14329
14330         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
14331
14332         * gtk/gtkclist.c (gtk_clist_column_title_passive):
14333         Leave button sensitive, trap  button_press, button_release,
14334         motion_notify, enter_notify and leave_notify events instead.
14335         (gtk_clist_column_title_active): disconnect event handler.
14336         (gtk_clist_drag_data_get): fixed memory leak. Reported by
14337         Guillaume Laurent <glaurent@worldnet.fr>
14338
14339 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
14340
14341         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
14342         width/height mixups.
14343
14344         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
14345         if needed.
14346
14347 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
14348
14349         * gtk/testgtk.c (create_item_factory): unref the item factory after
14350         window's destruction.
14351
14352         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
14353         count on the menu shell around the menu item's activation, since the
14354         signal emission may cause menu shell destruction.
14355
14356         * gtk/gtkitemfactory.c:
14357         the previous code leaked one accel group per menu. we use
14358         gtk_menu_get_uline_accel_group() now to fix that, and with that
14359         also create the underline accelerator group of the menus only if
14360         required (i.e. an underline accelerator has been specified).
14361         (gtk_item_factory_construct):
14362         (gtk_item_factory_create_item): removed code that would create an
14363         extra accel group for the menu (and leak references).
14364         (gtk_item_factory_create_item): adapted the underline accelerator
14365         installation code to properly feature gtk_menu_get_uline_accel_group().
14366
14367         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
14368         menu->accel_group, this may return NULL if the accelerator group
14369         hasn't been set yet.
14370         added gtk_menu_get_uline_accel_group() to retrive the underline
14371         accelerator group of the menu, this will be created on demand
14372         and proper care is taken about its reference count.
14373
14374         * gtk/gtkitemfactory.h:
14375         * gtk/gtkitemfactory.c:
14376         dumped the approach of keeping a widgets by action list on the
14377         factory since the factory<->widget destroy negotiation didn't work
14378         and would be hard to get going at all. instead we keep a list of
14379         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
14380         persistant throughout a program's life time).
14381         also, i removed the static const gchar *key_* variables, and made
14382         them inline strings (they weren't actually used anyways).
14383         (gtk_item_factory_add_item): update ifactory->items.
14384         (gtk_item_factory_destroy): destroy ifactory->items (and remove
14385         the item factory pointer from the remaining ifactory widgets).
14386         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
14387         list to find the widget.
14388         (gtk_item_factory_get_item): new function that works around
14389         gtk_item_factory_get_widget() limitations, this function will only
14390         return menu items, even for <Branch> entries.
14391
14392 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14393
14394         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14395         font hash table, if we have a GdkFontPrivate entry for this font
14396         already, simply increment its reference count, provided by Olaf Dietsche
14397         <olaf.dietsche+list.gtk@netcologne.de>.
14398
14399         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14400         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14401
14402 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
14403
14404         * gtk/gtkcontainer.c:
14405         (gtk_container_add_with_args):
14406         (gtk_container_addv):
14407         (gtk_container_add): before adding a child to a conatiner, make sure
14408         it is (default) constructed, this is neccessary because under certain
14409         circumstances the child will get relized and mapped immediatedly, in
14410         which case it has to be constructed already.
14411
14412 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
14413
14414         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
14415         values > 1 as TRUE also.
14416
14417 1999-03-16  Tor Lillqvist  <tml@iki.fi>
14418
14419         * README.win32: New file.
14420                 
14421         * configure.in: Check for lstat.
14422
14423         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
14424         completeness.
14425
14426         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
14427
14428         * gtk/gtk.def: Removed CRs.
14429
14430         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
14431         ..\gdk\win32).
14432
14433         * gdk/win32/makefile.msc: Correct upwards relative paths.
14434         
14435 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
14436
14437         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
14438           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
14439           it was connecting a void function to expose_event and the int
14440           returning function to the draw signal
14441
14442 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
14443
14444         * configure.in:
14445         Use correct path to libgmodule.la when ref'ing uninstalled copy
14446         of glib.  (Already in stable branch, Bug #417)
14447
14448 1999-03-15  Tor Lillqvist  <tml@iki.fi>
14449
14450         Win32 merge and general portability stuff:
14451                 
14452         * acconfig.h,configure.in: Check for <sys/time.h>.
14453
14454         * gdk/win32: New directory (actually, been there for a while).
14455         
14456         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
14457         NATIVE_WIN32, and use these. Always case fold on Win32. No
14458         backslashed escapes on native Win32.
14459
14460         * gtk/{gtk.def,makefile.msc}: New files.
14461
14462         * gtk/Makefile.am: Add above new files.
14463         
14464         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
14465         instead of <strings.h>.
14466
14467         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
14468         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
14469         <unistd.h> appropriately.
14470
14471         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
14472         Use ABS() (from <glib.h>) instead of abs().
14473         
14474         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
14475         of gtk (and thus glib) headers, so that WIN32 will be
14476         defined. With MS C, include <direct.h> for mkdir prototype.
14477
14478         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
14479         some casts, needed by MS C.
14480
14481         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
14482         implemented).
14483
14484         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
14485         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
14486         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
14487
14488         * gtk/gtkmain.h: Mark variables for export/import on Win32.
14489                 
14490         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
14491         the event is not a hint, or its window is not the slider. Needed
14492         on Win32, at least.
14493
14494         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
14495         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
14496         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
14497         a subdirectory of the Windows directory as gtk system
14498         configuration directory.
14499
14500         * gtk/gtkselection.c: No chunks on Win32.
14501
14502         * gtk/gtksocket.c: Not implemented on Win32.
14503
14504         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
14505
14506         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
14507
14508         * gtk/maketypes.awk: Declare variables with a macro that expands to
14509         necessary export/import magic in the case of Win32.
14510                 
14511         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
14512
14513 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
14514
14515         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
14516         since those were meant only for gdki18n.h.  
14517         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
14518         for widechar tests.
14519         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
14520
14521 1999-03-13  Tor Lillqvist  <tml@iki.fi>
14522
14523         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
14524         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
14525
14526         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
14527         installed) to CFLAGS.
14528
14529         * gdk/Makefile.am: Add rules for gdkconfig.h.
14530
14531         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
14532         APIs.
14533
14534         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
14535         gdkx.h anyway when compiling for X11.
14536         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
14537         general): Merge in Win32 version.
14538         
14539         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
14540         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
14541         expansion (if we don't have HAVE_PWD_H), allow for drive
14542         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
14543         included code from Craig Setera's port to Win32 (the one that uses
14544         X11, and the cygwin dll), even if it probably will be abandoned.
14545
14546         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
14547         the user entered one herself.  This way one can complete *.h and
14548         don't get matches on any .help files, for instance.
14549         
14550 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14551
14552         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14553         font hash table, if we have a GdkFontPrivate entry for this font
14554         already, simply increment its reference count, provided by Olaf Dietsche
14555         <olaf.dietsche+list.gtk@netcologne.de>.
14556
14557         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14558         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14559
14560 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14561
14562         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
14563         the number of calls to gdk_draw_point() (and thus to X) by
14564         clipping the points by hand.
14565
14566         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
14567         the clip parameter.
14568         (gtk_handle_box_paint): Only paint the handle if the expose area
14569         intersects it.
14570
14571 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14572
14573         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
14574
14575 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
14576
14577         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
14578         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
14579
14580 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
14581
14582         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
14583          textmode (O_TEXT) for OS/2 version.
14584
14585 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
14586
14587         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
14588         GtkSpinButton, "input" and "output", to make the output more flexible.
14589         The user has to provide a mapping between adjustment->value and the
14590         output string (and vice versa, if the spin button is editable). 
14591         See testgtk for examples.
14592
14593 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
14594
14595         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
14596         new one.
14597         
14598         * configure.in: set gtk+ version to 1.3.0.