]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
d53125090018e3dc8f3766a6a8c3860bbe34b078
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-04-28  Martin Baulig  <baulig@suse.de>
2
3         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
4         to gtk_image_menu_item_set_icon() and made it work if there's already
5         an image.
6         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
7         (gtk_image_menu_item_new_with_label): New function.
8
9 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
10
11         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
12         highlighting code!!!!  The result is okay so long as you don't try
13         to stress it.  It also highlights a bug in the TextView so it's in
14         an unproportional font right now until it's fixed.
15
16         *demos/gtk-demo/*.c: Clean up code a bit to make it
17         ugly-parser(TM) friendly. (-:
18
19 2001-05-17  Joe Shaw  <joe@ximian.com>
20
21         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
22         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
23         if it is only partially onscreen.
24
25 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
26
27         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
28         not by characters.
29
30         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
31         are not zero or one; that is, when graphemes of multiple characters
32         are involved.
33
34         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
35         FIXME.
36
37 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
38         
39         * gtk/gtkbbox.c:
40         Add properties, based on patch by Lee Mallabone.
41
42         * gtk/gtknotebook.c:
43         * gtk/gtktoolbar.c:
44         Convert from GtkArg to GParam, based on patch by John Margaglione.
45         
46         * gtk/gtkhscale.c:
47         * gtk/gtkvscale.c:
48         * gtk/gtkhscrollbar.c:
49         * gtk/gtkvscrollbar.c:
50         * gtk/gtkrange.c:
51         Move adjustment property to GtkRange.
52
53         * gtk/gtklabel.c:
54         Setup mnemonics on property changes
55
56         * gtk/gtkwidget.c (gtk_widget_get_property):
57         GdkExtensionMode is an enum, not a flag. Set it with
58         g_value_set_enum ().
59
60         * tests/prop-editor.c:
61         Better propery editor.
62
63         * tests/testgtk.c:
64         Add new property test. Pass zero to the property editor to
65         get properties from all derived types.
66         
67 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * autogen.sh (have_automake): Require libtool-1.4,
70         automake-1.4p1.
71
72         * acinclude.m4: Remove libtool macros.
73
74         * gdk-pixbuf/Makefile.am: Add dependencies to loade
75         modules.
76
77         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
78         for libgdk.
79
80         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
81         libgdk.la for libgtk.
82
83         * modules/input/Makefile.am: Make modules have full
84         dependencies.
85
86 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
87
88         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
89         #54699 where paths weren't being checked for correctness.
90
91 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
92
93         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
94         in any order you wan, whether or not the column is added to the
95         tree, or the tree is realized.  Yay!
96
97         * gtk/gtktreeviewcolumn.c
98         (gtk_tree_view_column_setup_sort_column_id_callback): handle
99         sorting columns a lot saner
100
101         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
102         new function to actually set wether or not a column is
103         reorderable.
104
105         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
106         if we have 'em.
107
108         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
109         Fix nasty bug where we were showing the button just before
110         realizing it.  As a result, the parent window was
111         tree_view->window instead of tree_view->priv->header_window.
112
113         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
114         to let you easily reorder a list or tree.
115
116 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
117
118         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
119         from args to properties.
120
121 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
122
123         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
124         from args to properties. (#51957)
125
126         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
127         calls to after ->set_property call.
128
129 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
130
131         * tests/prop-editor.c: Block against redundant changes.
132
133         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
134         properties.
135
136 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
137
138         * gdk/gdkpixmap.h: Remove creative formatting.
139
140 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
141
142         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
143         property API. (#51669)
144
145         * gtk/gtkscale.c: Patch from John Margaglione converting to
146         property API. (#51891)
147
148         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
149         to property API. (#50985)
150
151 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
152
153         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
154         buffering state across expose event, so we still call end_paint().
155
156 2001-05-11  Alexander Larsson  <alexl@redhat.com>
157
158         * gtk/gtkhsv.c (paint_triangle):
159         Expose the ring in the triangle at the correct place when
160         exposing just a part of the triangle.
161
162         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
163         Return FALSE, or window focusing will not work.
164
165 2001-05-11  Havoc Pennington  <hp@pobox.com>
166
167         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
168         #54144
169
170         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
171         bug #54330
172
173 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
174
175         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
176         propagate exposes to NULL child.
177
178         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
179         against not having one of the scrollbars.
180
181         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
182         we don't keep a mnemonic window if we have no mnemonic installed.
183
184 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
185
186         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
187         it has the _important_ side effect of initializing a class.
188
189 2001-05-10  Alexander Larsson  <alexl@redhat.com>
190
191         * gdk/linux-fb/gdkprivate-fb.h:
192         Make sure you can compile out the implementation/wrapper assert
193         macros.
194
195         * gdk/linux-fb/gdkdrawable-fb2.c:
196         Check implementation/wrappers, initialize type for pixmap dummys.
197
198         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
199         Hide the cursor if reading from the screen.
200
201         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
202         Fix sign bug in tiling code.
203
204         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
205         Handle background pixmaps.
206
207 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
208
209         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
210         function to let user control where columns are dragged.
211
212         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
213         Escape is pressed.
214
215 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
216
217         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
218         "columns_changed" signal.
219         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
220         motion code to draw arrows to the side if indicator is outside the
221         widget.
222         (gtk_tree_view_map_expanded_rows): Implement.
223
224 2001-05-07  Alexander Larsson  <alexl@redhat.com>
225
226         * demos/testpixbuf-save.c: 
227         * demos/testpixbuf-drawable.c:
228         Include gdkfb.h on linux-fb.
229
230 2001-05-07  Alexander Larsson  <alexl@redhat.com>
231
232         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
233         New function for getting toplevel window at position.
234         (gdk_drag_find_window): Use get_toplevel_window () instead
235         of gdk_window_get_pointer(). (gdk_drag_status): Use
236         correct context for getting window.
237
238         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
239         g_strdup the atom name.
240
241         * gdk/linux-fb/gdkwindow-fb.c:
242         Costmetic fix.
243
244         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
245         Add code for changing cursor on linux-fb backend (same as
246         win32).
247
248 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
249
250         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
251         present before doing anything with it.  Patch from Håvard Kvålen
252         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
253         report was not for the development branch of GTK+, but it applies
254         anyways).
255
256 2001-05-04  Havoc Pennington  <hp@redhat.com>
257
258         * configure.in: fix some shell typos
259
260         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
261
262         * gtk/gtkimage.c: handle animations
263
264         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
265         border_width * 2, not just border_width
266
267         * gtk/gtkscale.c: add "format_value" signal to allow people
268         to override the way values are drawn.
269         (gtk_scale_get_value_size): fix width/height mistake,
270         and compute size from actual displayed text, not 
271         from made-up text.
272
273         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
274         signal registration
275
276         * tests/testtext.c: Add "Remove all tags" menu item for testing
277
278         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
279
280         * demos/gtk-demo/main.c (main): add hack so we can find modules
281         without installing gtk
282
283         * demos/gtk-demo/textview.c (insert_text): demo font scaling
284
285         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
286         factor)
287         (gtk_cell_renderer_text_set_property): remove some bogus
288         g_object_notify
289
290         * gtk/gtktexttag.c: add "scale" property which is a font scaling
291         factor
292
293         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
294         to layout
295
296         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
297         gtk_text_iter_is_first
298
299 2001-01-06  Hans Breuer  <hans@breuer.org>
300
301         * gdk/gdk.def : updated exports
302
303         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
304         gdk won't compile anymore
305  
306         * gdk/win32/gdkevents-win32.c : initialize ret_val when
307         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
308         Improved gdk_flush () to not only do pending drawing operations
309         but also process all currently pending events. This should make
310         the behaviour more similar to the X11 version.  
311
312         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
313         option needs to be set even if there is no GDK_GC_BACKGROUND.
314         (gdk_win32_hdc_get) : use predraw_set_background () independent
315         of value_mask. This allows to draw dashed lines leaving the original
316         background intact.
317
318         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
319         after processing, because we can't reuse it as the X11 version does.
320
321         * gtk/gtk.def : updated exports
322
323         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
324         would like to get rid of this file again, and use straight
325         makefile.msc again, as the other Gtk+ subdirs do)
326
327         * test/makefile.msc (new file) : build the test apps here
328
329 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
330
331         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
332         strike-through setting
333         (gdk_draw_layout_line_with_colors): Render strike-through
334
335 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
336
337         * Release 1.3.5
338
339         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
340
341         * NEWS: Updated
342
343         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
344         Makefile breakage.
345
346 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
347
348         * demos/gtk-demo/images.c (progressive_timeout): Fix
349         typo in filename.
350
351         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
352         out FIXME warning; just too annoying.
353
354 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
355
356         * gdk/linux-fb/gdkcolor-fb.c:
357         Better error messages.
358
359         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
360         Initialize abs_x and abs_y.
361         
362         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
363         Correct handling of stipple offset.
364
365         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
366         Treat directcolor framebuffers as truecolor.
367         
368 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
369
370         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
371         dependency on Atk for accessibility support.
372
373         * configure.in **/Makefile.am: Major reworking of substituted
374         variables for CFLAGS/LIBS to make a lot more sane and 
375         keep the the compile/link lines a bit shorter.
376
377         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
378
379 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
380
381         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
382         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
383         use _gtk_boolean_handled_accumulator.
384
385 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
386
387         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
388         to fix things so clicking inside selection leaves cursor
389         at point where clicked. (#50324)
390
391         * gtk/gtksettings.c (gtk_settings_class_init): Restore
392         sane value for default double click time.
393
394         * tests/testtext.c (test_init): Really path to input modules.
395
396 2001-05-03  Sven Neumann  <sven@convergence.de>
397
398         * demos/testpixbuf-save.c: include target-specific headers as
399         done in testpixbuf-drawable.c
400
401 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
402
403         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
404         new_text_length appropriately when we run into the 
405         size limit for the entry. (#53445, reported by Jeff Franks)
406
407         * tests/testgtk.c (create_entry): Remove most of the
408         property toggle buttons. Replace with a "Props" button
409         that brings up a property editor.
410
411         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
412         Split the property editor code out for reuse, improve.
413
414 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
415
416         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
417         trap errors around calls to XSetInputFocus since we have
418         no way of knowing reliably whether we are viewable or
419         not. (#53947)
420
421 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
422
423         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
424         fix bug in dropping columns.  Moving columns now basically works
425         modula some fine tuning.
426
427 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
428
429         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
430         autoscroll support.  It mostly works, but could use some fine
431         tuning.
432         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
433         Actually move the column.
434
435 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
436
437         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
438           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
439           New default theme! A slighly improved version of the 2.0 Raleigh
440           theme, with Windows-esque focus/drawing default. 
441           (GtkWidget::interior_focus defaults to TRUE.)
442
443         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
444
445 2001-04-30  Havoc Pennington  <hp@pobox.com>
446
447         * tests/testtext.c (line_numbers_expose): fix to work with
448         gtk_paint_layout change
449
450 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
451
452         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
453           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
454           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
455           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
456
457         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
458           with GtkWidget::interior_focus = TRUE better.
459
460         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
461         ::default_outside_border for more flexibility.
462
463         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
464         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
465         change that had to be made with g_object_get.
466
467 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
468
469         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
470         (gtk_tree_view_move_column_after): Clean up interface. 
471
472 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
473
474         * gtk/gtkpacker.h:
475         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
476          to gtkenum.h.
477
478         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
479         handled in switch).
480
481         * gtk/Makefile.am:
482         (gtk.defs): generate enum portions with  glib-mkenums.
483         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
484         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
485         
486         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
487         addition.
488
489         * docs/Changes-2.0.txt: keep a note on signal handlers now
490         not getting emitted during the emission they were connected within.
491
492 2001-04-28  Havoc Pennington  <hp@pobox.com>
493
494         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
495
496 2001-04-24  Havoc Pennington  <hp@redhat.com>
497
498         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
499         (gtk_text_layout_move_iter_to_next_line): fix these two for
500         invisible text, lots of other stuff still hosed.
501
502         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
503         new function, replaces the get/set palette stuff. This function 
504         is intended for use by libgnomeui which should set the hook to a
505         thing which sets the palette in GConf, and we need the
506         GConf-to-xsettings proxy which will result in the change being
507         propagated back to the GTK app.
508
509         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
510         about unusable signals that it may be because the signal has 
511         parameters.
512
513         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
514         style, otherwise gtkrc.c won't know to create a new GtkStyle for
515         it.
516         (gtk_widget_modify_color_component): call
517         gtk_widget_modify_style() so the rc style will get copied.
518         (gtk_widget_modify_font): ditto
519
520         * gtk/gtkrc.c: make a couple variables static
521
522         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
523         help button by default, since it does nothing
524
525         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
526         around with UI
527
528         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
529         so we can have tooltips
530
531         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
532         can have tooltips
533
534         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
535         GDK_ENABLE_BROKEN, because its memory behavior is completely
536         hosed.
537
538         * gtk/gtknotebook.c: remove key press handler, replace with
539         binding set, add numeric keypad support
540
541         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
542
543         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
544
545         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
546         addition to plain Delete
547
548         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
549         GDK_KP_Enter in addition to GDK_Return
550
551         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
552         activate on entry instead of key press
553         (gtk_font_selection_on_clist_key_press): get
554         rid of this signal handler, not needed with new font sel.
555
556         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
557         no-longer-needed emit_stop_by_name(), just return TRUE
558
559         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
560         cruft, this widget is no longer focusable.
561
562         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
563         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
564         move_slider action signal, add binding set for vscale/hscale, in
565         the process support numeric keypad
566
567         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
568         make GDK_Return and GDK_KP_Enter activate the entry via 
569         binding set, instead of hardcoded.
570
571 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
572
573         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
574         code.  Some documentation added.
575
576 2001-04-27  Havoc Pennington  <hp@redhat.com>
577
578         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
579
580         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
581
582         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
583         line/para separators
584         (gtk_entry_create_layout): set single paragraph mode on the layout
585
586         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
587         spacing between the image and label; instead, inside a button box 
588         the button will get extra space that will go there, but if people 
589         configure button box for 0 chubbiness, then there's no spacing.
590
591         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
592         and min/max size style properties, so people can tune their
593         chubbiness.
594
595         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
596         functions
597
598         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
599         space_style, and button_relief into style properties, remove
600         functions for setting them
601         
602         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
603         it back down
604
605         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
606         types from gtk_widget_style_get
607
608         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
609         with a style property.
610
611         * gdk/x11/gdkevents-x11.c: namespace the settings
612
613         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
614
615         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
616         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
617         be used. Also, translate doc strings for settings. Also, namespace
618         the double-click-time property. Also, remove bell properties crap.
619
620 2001-04-27  Sven Neumann  <sven@gimp.org>
621
622         * Makefile.am: before creating links, check if pkg-config files
623         exist for the default target. Otherwise link to the pkg-config files
624         that got installed with this build.
625
626 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
627
628         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
629         dragging code.  Revealed some (potential) GdkWindow bugs.
630
631         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
632         _gdk_window_init_position to the end of reparent to fix the case
633         of reparenting when new_x != old_x and new_y != old_y.
634
635 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
636
637         * gtk/gtkentry.c (strstr_len): Fix optimization that
638         was correct for the use here, but completely incorrect
639         in general.
640
641 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
642
643         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
644         until patch adding gtk_window_set_size() is recommitted. 
645
646         * **Makefile.am configure.in gdk/x11/gdkim-11.c
647           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
648           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
649           (#10784)
650
651 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
652
653         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
654         window == NULL in a number of cases.
655
656         * tests/testdnd.c: Set module path for gdk-pixbuf.
657
658 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
659
660         * gtk/Makefile.am xembed.h: File containing #defines
661         for XEMBED protocol.
662
663         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
664
665         - Change protocol from old plug/socket specific protocol
666           to XEMBED draft
667         - Various fixes to work with GTK+-2.0
668
669         Still quite a bit of work to do here to handle initiation
670         from the socket side (as specified by XEMBED), to handle
671         the more advanced features of XEMBED, and to figure out
672         a good way to handle same-app embedding with less overhead
673         than using full XEMBED.
674
675 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
676
677         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
678         track of whether the toplevel has the focus; only send
679         focus-in events to the focus widget when the window
680         actually has the focus.
681
682 2001-04-25  Havoc Pennington  <hp@pobox.com>
683
684         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
685         were still in the header
686
687 2001-04-24  Alexander Larsson  <alexl@redhat.com>
688
689         * gtk/gtkclist.[ch]:
690         * gtk/gtkctree.c:
691         When there is a row highlighted for D'n'D it must alse
692         be painted hightlighted on exposes. Otherwise exposes from
693         the icon being dragged will mess up the hightlight.
694
695         * gtk/gtkfontsel.c:
696         Don't recenter selected font when exposing the font family
697         clist. This means you can now actually scroll the font family
698         list.
699
700         * gtk/gtknotebook.c:
701         Fix focus movement on scrolling tabs that are placed on the left
702         and right.
703
704 2001-04-21  Havoc Pennington  <hp@pobox.com>
705
706         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
707         empty/invisible lines.
708
709         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
710         (gtk_text_iter_set_visible_line_index): new functions to set
711         indexes excluding invisible text
712
713         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
714         index
715
716         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
717         (gtk_text_iter_get_visible_line_offset): new functions to 
718         get indexes excluding invisible text
719
720         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
721         bunch of extra padding that served no purpose
722
723         * gtk/gtkdialog.c: Make all the spacings configurable via style
724         properties, for chubbiness configuration in themes
725
726         * tests/testtext.c: fix path to the immodules.
727         
728 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
729
730         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
731         got munched by #endif.
732
733         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
734
735         * gtk/gtktreeview.c: Refactored code to clean up a number of
736         events.
737
738         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
739         values to make consistent with other functions.  Spotted by Jeff
740         Franks <jcf@tpg.com.au>.
741
742         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
743         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
744
745 2001-04-23  Sven Neumann  <sven@gimp.org>
746
747         * gtk/Makefile.am
748         * gtk/gtkplug.c
749         * gtk/gtksocket.c: on request of Owen, reverted my last change 
750         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
751
752 2001-04-23  Sven Neumann  <sven@gimp.org>
753
754         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
755         compile for non-X11 targets again
756
757 2001-04-20  Alexander Larsson  <alexl@redhat.com>
758
759         * gtk/gtkcolorsel.[ch]:
760         API Change. Take GdkColor arguments instead of gdouble *.
761         Leave the old gtk_color_selection_set_color for compatibility,
762         but marked deprecated.
763         Do correct rounding when converting RGB <-> HSV.
764         
765         * gtk/gtkcolorseldialog.c:
766         * tests/testgtk.c:
767         Use new GtkColorSelection API.
768
769         * gtk/gtkhsv.c:
770         Fix problem selecting colors in triangle when Hue is 330.
771         Fix some black dots around the HSB triangle.
772         
773         * gtk/gtkfilesel.c:
774         return FALSE from the focus_in_event handler to fix focus problems.
775
776 2001-04-18  Havoc Pennington  <hp@redhat.com>
777
778         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
779         set, so keybindings are configurable    
780         (gtk_window_activate_default): Change to activate the focus widget
781         instead if there's a focus widget, to be consistent with the
782         behavior that previously existed in key_press_event
783
784 2001-04-18  Havoc Pennington  <hp@redhat.com>
785
786         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
787
788 2001-04-18  Havoc Pennington  <hp@redhat.com>
789
790         Close bug #50615:
791         
792         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
793         the layout
794
795         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
796
797         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
798
799         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
800         
801         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
802         to blue for base, in addition to bg
803         
804 2001-04-18  Havoc Pennington  <hp@redhat.com>
805
806         * tests/testgtk.c (create_image): allow shrinking the image window
807         to test that we clip to allocation.
808
809         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
810         #9845
811
812         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
813
814 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
815
816         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
817         mode on shm segments to 0600. We'll see who complains.
818
819         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
820         _gdk_windowing_window_destroy() AFTER recursing through
821         children.
822
823         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
824         testsocket_child on X.
825
826         * tests/testsocket[_child].c: Fix uses of
827         gtk_window_get_default_accel_group().
828
829         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
830
831         * gdk/gdkimage.c: (gdk_image_get):
832         Deal with the possibility that XGetImage() might return NULL.
833         Allocate the GdkImagePrivate structure only after XGetImage()
834         succeeds in order not to dereference a NULL ximage pointer.  This
835         prevents a core dump when XGetImage() fails - which is unlikely,
836         but can happen due to race conditions accessing the geometries of
837         drawables.  An x error will still be triggered, but the gdk image
838         wrapper at least wont seg fault.
839         
840 2001-04-18  Havoc Pennington  <hp@redhat.com>
841
842         * gtk/gtkimage.c: fix to properly queue resizes when the image is
843         set
844
845         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
846         if the insertion point isn't editable
847
848         * demos/gtk-demo/images.c: Added a GtkImage demo
849
850         * demos/gtk-demo/drawingarea.c: drawing area demo
851         
852         * demos/gtk-demo/menus.c (create_menu): cleanups
853
854 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
855
856         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
857           gdk/x11/gdkevents-x11.c: Introduce an extra child
858         of toplevel windows that serves to hold the focus to
859         avoid events being delivered to embedded windows.
860
861         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
862         some extra variables to clean up code and reduce the
863         number of casts.
864
865         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
866         guint for 1 bit bit fields, not gboolean.
867
868 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
869
870         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
871         not TRUE. (Fixes #52925)
872
873 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
874
875         * Released 1.3.4
876
877         * NEWS: Updated
878
879         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
880         use GTK_TYPE_ENUM.
881
882 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
883
884         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
885
886         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
887         names to compatibility #defines so docs work.
888
889         * gtk/gtkenums.h: Remove GtkMenuFactoryType
890
891         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
892
893         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
894
895         * tests/testgtkrc: No magenta cursors, please.
896
897         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
898
899         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
900         
901 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
902
903         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
904         grabs, since they are no longer necessary.
905
906         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
907         by signal_connect() and call gtk_button_pressed() rather
908         than signal_connect_after().
909
910         * tests/testgtk.c: Restore radio menu items to combos 
911         since they'll look OK with Raleigh, and it is easier
912         than finishing the process of removing them that was
913         started earlier.
914
915 2001-04-16  Hans Breuer  <hans@breuer.org>
916
917         * gdk/gdk.def :
918         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
919
920         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
921         we are interested in the functions return value not the function address
922         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
923
924         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
925
926 2001-04-14  Hans Breuer  <hans@breuer.org>
927
928         * gdk/gdk.def :
929         * gdk/makefile.msc : updated
930
931         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
932         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
933         (the testgtk::text backgound pixmap is drawn again)
934         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
935         Win32 Pango change
936         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
937
938         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
939         Not sure if the returned settings have the right unit, because I couldn't
940         find any docs for the X version ...
941
942         * gtk/gtk.def :
943         * gtk/makefile.msc.in : updated
944
945 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
946
947         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
948         wording problems. (Compared to version from Johannes Stezenbach to
949         check correctness.)
950
951 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
952
953         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
954         this to compile.
955
956 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
957
958         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
959         not pixbufpos.
960
961         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
962
963         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
964         are unsigned insts, therefore use g_value_set_uint.
965         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
966
967 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
968
969         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
970
971         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
972         GTK_TYPE_STRING.
973
974         * gtk/gtktreeview.c: New functions to allow initial column
975         dragging work.
976
977         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
978
979         * tests/testtreefocus.c: give dave some love.
980
981         * tests/testtreesort.c: Modify test to check really long samples.
982
983 2001-04-11  Alexander Larsson  <alexl@redhat.com>
984
985         * gtk-2.0.m4: Pass pkg-config options
986         before the other args so it works even if
987         POSIXLY_CORRECT is set.
988
989 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
990
991         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
992         0, interface 0).
993
994 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
995
996         * gtk/gtkcalendar.c (gtk_calendar_button_press):
997         check for action_func != NULL
998
999 2001-04-04  Sven Neumann  <sven@gimp.org>
1000
1001         * tests/testgtk.c (test_init): corrected path to gtk.immodules
1002
1003 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
1004
1005         * Released Gtk+-1.3.3.
1006
1007 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
1008
1009         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
1010
1011 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
1012
1013         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
1014         files to/from source dir. (if we don't stay in builddir, we
1015         can't reach make-inline-pixbuf.
1016
1017         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
1018         deps.
1019
1020         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
1021         ages 0).
1022
1023 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
1024
1025         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
1026         moved to the GtkTreeSortable interface.
1027
1028         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1029         Make more efficient (fixes #50262).
1030
1031 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
1032
1033         * NEWS: Updated.
1034
1035         * configure.in: Remove support for uninstalled glib.
1036
1037         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
1038         so as not to stop emission.
1039
1040         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
1041         is no longer supported.
1042
1043         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
1044         into tests, change build order to build modules before
1045         gtk/.
1046
1047         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
1048         to here.
1049
1050 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
1051
1052         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
1053         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
1054         GPatternSpec. this is actually unlikely to cause breakage in
1055         third-party apps since except for gle, pretty much ever caller
1056         passes NULL here.
1057
1058         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
1059
1060         * *.c: use g_pattern_*() API.
1061
1062         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
1063
1064         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
1065         directions aren't passed in.
1066
1067         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
1068         functionality to be usable from gtkstyle.c as well, give precedence
1069         for conversion to user-supplied parsers.
1070         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
1071
1072         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
1073         _gtk_settings_parse_convert() for rcporperty value conversion.
1074
1075 2001-04-03  Alexander Larsson  <alexl@redhat.com>
1076
1077         * gdk/linux-fb/gdkevents-fb.c:
1078         Add empty gdk_setting_get().
1079
1080 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
1081
1082         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
1083         variable names.
1084         
1085         * gtk/makeenums.pl: touch this so enum files get remade.
1086
1087 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
1090         work again when not sorted.
1091
1092         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
1093         and "expand_row" signal, closing bug 52578.
1094
1095         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
1096         support.
1097
1098         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
1099         support.
1100
1101 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1102
1103         * gdk/gdkevents.h: Add GdkEventSetting event for notification
1104         of changes to system settings, gdk_setting_get() to retrieve
1105         a single system setting.
1106
1107         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
1108         to the draft XSETTINGS mechanism.
1109
1110         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
1111         XSETTINGS.
1112
1113         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
1114         of GDK settings changes to the GtkSettings object.
1115
1116         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
1117         double-click-timeout property to GDK.
1118
1119         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
1120         Define GDK boxed types here.
1121
1122         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
1123         gdk/gdkenumtypes.[ch] for enum definitions.
1124
1125         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
1126         * gtk/gtk-boxed.defs: Comment out GDK types
1127         * gtk/gtktypeutils.h: Remove GDK types
1128         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
1129
1130 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
1131
1132         * Applied patch from Ron Steinke to add signal accumulators
1133         so that signals with the convention 'TRUE return means
1134         handled' stop emission on a TRUE return.
1135
1136         * gtk/gtkmain.[ch]: Add private accumulator 
1137         _gtk_boolean_handled_accumulator, used throughout GTK+.
1138         
1139         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1140
1141         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1142         
1143         * gtk/gtkwidget.c: Add accumulators for event signals,
1144         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1145         for ::mnemonic-activate.
1146
1147         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1148
1149 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1150
1151         * gtk/gtkwidget.c: Add missing include.
1152
1153 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1154
1155         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1156         marshaller.
1157
1158         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1159         "changed" signal to "range_changed".
1160
1161         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1162         removing a tree from one model would remove all trees from that
1163         model.
1164         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1165         changed signal instead.
1166
1167 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1168
1169         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1170         chaining up to parent impl, since we have a INPUT_ONLY
1171         window.
1172
1173         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1174         foreground color for the cursor.
1175
1176 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1177
1178         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1179         param spec when caching property values, since we unref it
1180         later when we free the style.
1181
1182         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1183         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1184
1185 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1186
1187         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1188         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1189         stupidity.
1190
1191 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1192
1193         [ First pass at adding style properties. Still needs some definite
1194         fine-tuning. ]
1195
1196         * gtk/gtkbutton.c: Add ::default_spacing style property.
1197          
1198         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1199         ::indicator_spacing style properties.
1200
1201         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1202         style properties.
1203
1204         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1205         rather than a normal property.
1206
1207         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1208         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1209
1210         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1211         Honor ::interior_focus.
1212         
1213         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1214         TRUE.
1215
1216         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1217         Add ::slider_width, ::trough_border, ::stepper_size,
1218         ::stepper_spacing style properties.
1219
1220         * gtk/gtkscale.[ch] Add ::slider-length style property.
1221
1222 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1223
1224         * gdk/linux-fb/gdkwindow-fb.c:
1225         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1226         warnings that were spewed on startup.
1227
1228         * gtk/gtkwindow-decorate.c:
1229         gtk_window_reposition -> _gtk_window_reposition
1230
1231 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1232
1233         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1234         Add boxed type for GtkRequistion. Use it for ::size-request.
1235
1236         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1237         Add a new GtkBorder structure useful for geometry properties
1238         for widgets. Add corresponding GTK_TYPE_BORDER.
1239         
1240         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1241         Support automatic parser selection like
1242         gtk_settings_install_property_parser().
1243
1244         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1245         functionality for use by gtk_widget_class_install_style_property.
1246         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1247
1248 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1249
1250         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1251         g_param_spec_unichar(). 
1252
1253 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1254
1255         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1256         _NET window managers.
1257
1258         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1259
1260 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1261
1262         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1263         bad needs to be nuked, not just deprecated.
1264
1265         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1266         gtk_widget_popup().
1267
1268         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1269         
1270         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1271         widget.
1272         
1273         * docs/Changes-2.0.txt: updates.
1274         
1275 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1276
1277         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1278         for (i = 0; i < 100; i ++)
1279           g_print ("I will confirm it compile before committing\n");
1280
1281 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1282
1283         * gtk/gtktreestore.c: Initial work on implementing the
1284         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1285
1286 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1287
1288         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1289         reference counts around emissions where the widget is used afterwards.
1290         added freeze/thaws around multiple properties being notified.
1291         (_gtk_widget_get_aux_info): cleanups.
1292         
1293         * gtk/gtksettings.c (gtk_settings_install_property): provide
1294         default parsing functions for gdkcolor, enums and flags.
1295
1296         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1297         applied by owen.
1298         backed out gtk_window_get_location(), gtk_window_set_location(),
1299         gtk_window_get_size() and gtk_window_set_size(), these
1300         have to be sorted out wrg x/y/width/height/default_with/default_height
1301         properties.
1302         kept a flag in GtkWindowGeometryInfo to handle user
1303         resetting default sizes.
1304         cleaned up ZVT comments.
1305         bunch of assorted bug fixes, notification fixes.
1306         (_gtk_window_reposition): make this a really internal function.
1307         
1308         * gtk/testgtk.c: fixups.
1309         
1310 2001-03-31  Hans Breuer  <hans@breuer.org>
1311
1312         * config.h.win32.in : disable USE_MMX for msvc build cause
1313         the assembler doesn't fit and is out of my scope. Disable
1314         USE_GMODULE for msvc build as wel. The right way to share
1315         binaries on win32 would be to use libtiff.dll etc. To reduce
1316         installation hassles IMO it's better to include all fileformats
1317         builtin to gdk-pixbuf
1318
1319         * gdk-pixbuf/makefile.msc : new file
1320
1321         * gdk/gdk.def : updated
1322
1323         * gdk/win32/gdkevents-win32.c : don't erase the background if
1324         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1325         buttons
1326         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1327
1328         * gdk/win32/gdkwindow-win32.c : added three new functions like
1329         the X version. Only one is implemented, because the other two
1330         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1331         be default behaviour on win32 anyway ...
1332
1333         * gtk/gtk.def : updated
1334
1335         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1336         from where it was built and add an additional rule to automagically
1337         build gtkmarshal.[hc]
1338
1339         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1340         before array access for the current entry isn't finished
1341
1342         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1343         use g_return_val_if_fail
1344
1345         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1346         for the static array, but let the compiler calculate it. It
1347         makes me wonder if gcc isn't capable to catch bugs like this ...
1348
1349 2001-03-31  James Henstridge  <james@daa.com.au>
1350
1351         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1352         constant "-1" in the aux info structure.
1353
1354 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1355
1356         * gtk/gtkbutton.c (gtk_button_get_property):
1357         * gtk/gtklabel.c:
1358         Remove leaks.
1359         
1360         * gtk/gtkcontainer.c:
1361         * gtk/gtkhscale.c:
1362         * gtk/gtkhscrollbar.c:
1363         * gtk/gtklayout.c:
1364         * gtk/gtkmisc.c:
1365         * gtk/gtkprogress.c:
1366         * gtk/gtkprogressbar.c:
1367         * gtk/gtkrange.c:
1368         * gtk/gtktable.c:
1369         * gtk/gtkviewport.c:
1370         * gtk/gtkvscale.c:
1371         * gtk/gtkvscrollbar.c:
1372         * gtk/gtkwidget.c:
1373         Property patches, based on patches from John Margaglione and Lee Mallabone.
1374
1375 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1376
1377         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1378         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1379         inline API function docs.
1380         (gtk_spin_button_new_with_range): New convenience constructor.
1381         (gtk_spin_button_set_increments): New adjustment helper.
1382         (gtk_spin_button_set_range): New adjustment helper.
1383
1384         * gtk/testgtk.c : added test of the new convenince constructor and
1385         value_changed signals.
1386
1387 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1388
1389         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1390         listen to the reorder signal.
1391
1392 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1393
1394         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1395         to get the aux info structure fo the widget.
1396
1397         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1398         above function.
1399
1400         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1401
1402         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1403         to get the size of the window manager frame, basically the same
1404         code that gdk_window_get_root_origin() had
1405         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1406
1407         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1408         gdk_window_resize() if the window is realized and resizeable
1409
1410         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1411         typo so that setting gravity works
1412
1413         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1414         allocation if auto_shrink is on, even if the default size
1415         has not changed.
1416
1417         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1418         g_return_if_fail
1419
1420 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1421
1422         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1423         reordering/sorting work.  Now pretty much works.
1424
1425         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1426         reorder mostly work.  Still need to get the parity correct.
1427
1428         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1429         signal, so I can listen for the sort_column_changed signal so I
1430         can change my "sort_indicator" property.  Cool.
1431
1432 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1433
1434         [ Patch from Havoc Pennington, hp@redhat.com ]
1435
1436         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1437         Add functions gdk_window_begin_resize_drag/begin_move_drag
1438         to start resizing or moving a toplevel window. This
1439         is done either using the _NET_WM_MOVERESIZE protocol,
1440         or, if that isn't present, by emulation.
1441
1442         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1443         to export the above to GTK+-land.
1444
1445         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1446         
1447         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1448         Move this function into gdkwindow, since we need it
1449         when implementing fallback resizing.
1450
1451         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1452         Fix typo when setting gravity.
1453
1454         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1455         Add an optional (but on by default) resize grip for resizing 
1456         the parent window.
1457
1458 01-03-29  Alexander Larsson  <alexl@redhat.com>
1459
1460         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1461         Don't return TRUE from the event handler, that blocks all
1462         event signals on the tooltip widget. Now you can press buttons
1463         in toolbars again.
1464
1465 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1466
1467         * gtk/testtext.c (create_buffer): Add missing NULL on
1468         valist.
1469
1470         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1471         c-n-p problem with INCONSISTENT property.
1472
1473         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1474
1475         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1476         hook.
1477
1478         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1479         signal as a hook for extending the default popup menu
1480
1481         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1482         use radio menu items for the input method menuitems
1483
1484         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1485         inserted unicode from Ctrl-Shift-hex input method
1486
1487         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1488         validatation here, already done at GtkTextBuffer level.
1489
1490         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1491         popup_menu run action signal and Shift+F10 and Menu keybindings.
1492
1493         * gtk/gtkentry.c: implement a default handler for popup_menu
1494
1495         * gtk/gtktextview.c: implement a default handler for popup_menu
1496
1497         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1498         from a key event
1499         
1500         * gtk/gtklabel.c: remove "trailer" cruft
1501
1502 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1503
1504         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1505         handle reordering of trees.  Seems to mostly work w/ the exception
1506         of the parity flag.
1507
1508         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1509         signal.
1510
1511 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1512
1513         * gtk/gtkwidget.h: c++ fixes.
1514
1515 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1516
1517         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1518         memory.
1519
1520 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1521
1522         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1523         Nils Barth fixing event return values. (#51041)
1524
1525         * gtk/gtkwidget.c: Fix some return values for default
1526         functions.
1527
1528         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1529         return values for trough_keys functions.
1530
1531         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1532         value for add_accelerator (shoudl have been a void
1533         return.)
1534
1535         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1536         Fix return type of EVENT.
1537
1538         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1539         signal return a boolean.
1540
1541 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1542
1543         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1544         reordered signal.
1545
1546         * tests/testtreesort.c (main): fix spelling.
1547
1548 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1549
1550         * gtk/gtkliststore.c: More work on implementing sortable
1551         interface.
1552
1553 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1554
1555         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1556         reference the widgets in the resulting list. (#11821)
1557         This makes this consistent with gtk_container_children.
1558
1559         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1560         uses of gtk_window_list_toplevels.
1561
1562 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1563
1564         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1565         a virtual function to set whether the IM context should use 
1566         the preedit string. (#51922)
1567         
1568 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1569
1570         * gdk/gdkpango.h: Remove stale FIXME comment.
1571
1572 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1573
1574         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1575         Fixed bug that returned NULL if a filename was selected.
1576
1577 2001-03-24  Havoc Pennington  <hp@pobox.com>
1578
1579         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1580         to contain the word "theme"
1581
1582 2001-03-24  Havoc Pennington  <hp@pobox.com>
1583
1584         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1585         slower but finer-grained
1586         (gtk_hsv_focus): get initial focus on the ring or triangle 
1587         according to tab direction
1588
1589         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1590
1591 2001-03-23  Havoc Pennington  <hp@pobox.com>
1592
1593         * gtk/gtkhsv.c: make this somewhat key-navigable
1594
1595         * gtk/gtkfontsel.c: mnemonics
1596
1597         * gtk/gtkgamma.c: mnemonics
1598
1599         * gtk/gtkcolorsel.c: add mnemonics to labels
1600
1601 2001-03-22  Havoc Pennington  <hp@pobox.com>
1602
1603         Applied big patch from Seth Lytle to fix event handler return
1604         values, slightly modified.
1605
1606         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1607         handled.
1608         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1609         select_day
1610
1611         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1612         (gtk_clist_button_release): return TRUE if handled
1613
1614         * gtk/gtkcolorsel.c (mouse_release):
1615         (palette_activate): 
1616         (palette_press): 
1617         (palette_new): 
1618         (mouse_press): 
1619         (get_screen_color): 
1620         fixed return type (void to gboolean), return TRUE,
1621         added GTK_SIGNAL_FUNC cast
1622
1623         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1624         (void to gboolean), and return TRUE
1625         (gtk_combo_button_release): changed return value to TRUE after
1626         gtk_grab_add on combo->popwin
1627
1628         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1629         collapse or expand
1630
1631         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1632         button/motion
1633
1634         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1635         press/release and motion that trigger act
1636
1637         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1638
1639         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1640         for GDK_Return
1641         
1642         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1643         (gtk_list_button_release): return TRUE if selection
1644
1645         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1646         press
1647
1648         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1649         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1650
1651         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1652         nothing triggered
1653         (gtk_notebook_button_release): return TRUE if we do anything
1654
1655         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1656         (gtk_spin_button_button_release): return TRUE or chained retval
1657
1658         * gtk/gtktext.c (gtk_text_button_press): 
1659         (gtk_text_button_release): return TRUE
1660         (gtk_text_key_press): remove redundant retval code
1661         
1662         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1663         and sensitive
1664         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1665         TRUE if sensitive
1666
1667         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1668         return TRUE
1669
1670 2001-03-23  Havoc Pennington  <hp@redhat.com>
1671
1672         * gtk/testgtk.c: fix warnings
1673
1674         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1675
1676         * gtk/gtktextview.c: fix warnings
1677
1678         * gtk/gtktext.c (find_cursor_at_line): fix warning
1679
1680         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1681
1682         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1683         of this function
1684
1685         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1686         fix warning
1687
1688         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1689
1690         * gtk/gtkfontsel.c: fix warning
1691
1692         * gtk/gtkcolorsel.c: fix warnings
1693
1694 2001-03-23  Havoc Pennington  <hp@redhat.com>
1695
1696         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1697
1698         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1699
1700         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1701         and deprecated gtk_check_menu_item_set_show_toggle().
1702         
1703         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1704
1705         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1706
1707         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1708
1709 2001-03-23  Havoc Pennington  <hp@redhat.com>
1710
1711         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1712         some docs
1713
1714 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1715
1716         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1717         this.
1718
1719         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1720         set_cell to set_value
1721
1722         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1723         set_cell to set_value
1724
1725 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1726
1727         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1728         fix braino.
1729         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1730         support.
1731
1732         * gtk/gtktreeview.c: Addition of initial sortable support.
1733
1734         * gtk/gtktreestore.c: Addition of initial sortable support.
1735
1736         * gtk/gtkliststore.c: Addition of initial sortable support.
1737
1738         * gtk/gtkmarshal.list: yet another marshaller.
1739
1740         * gtk/gtktreedatallist.[ch]: shared code between the store models
1741         for handling sorting headers.
1742
1743 2001-03-22  Havoc Pennington  <hp@redhat.com>
1744
1745         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1746         (gtk_container_unset_focus_chain): Add ability to override the 
1747         focus chain for a container explicitly
1748
1749 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1750
1751         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1752         added PROP_MNEMONIC_WIDGET.
1753
1754         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1755         (gtk_window_remove_mnemonic): 
1756         (gtk_window_add_mnemonic): fixed assertions.
1757         (gtk_window_activate_mnemonic): constrain modifier checks to those
1758         permitted by gtk_accelerator_get_default_mod_mask().
1759         got rid of gtk_window_get_default_accel_group().
1760
1761         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1762         activatable widgets either by focussing or a warning.
1763         added a signal accumulator to ::activate_mnemonic which stops the
1764         emission once a handler returned TRUE.
1765
1766 2001-03-22  Havoc Pennington  <hp@pobox.com>
1767
1768         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1769         the stock item label
1770
1771         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1772
1773         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1774
1775         * demos/gtk-demo/*.c: Add mnemonics all over the place
1776
1777         * gtk/gtklabel.h: mark parse_uline deprecated
1778
1779 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1780
1781         * gtk/gtkitemfactory.[ch]:
1782         Add support for stock and normal imagemenuitems.
1783         
1784         * gtk/testgtk.c:
1785         Add some tests for mnemonics, stock toolbars, stock
1786         and image menuitems in itemfactory and gdk_window_scroll.
1787
1788 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1789
1790         * gtk/gtkbutton.[ch]:
1791         * gtk/gtkdialog.c:
1792         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1793         removed accel_group argument. Renamed gtk_button_new_accel() to
1794         gtk_button_new_with_mnemonic() and removed accel_group argument.
1795
1796         * gtk/gtkcheckbutton.[ch]:
1797         New function gtk_check_button_new_with_mnemonic().
1798
1799         * gtk/gtkentry.c:
1800         Override activate_mnemonic and just grab focus.
1801
1802         * gtk/gtkitemfactory.c:
1803         Don't add menu uline accel group, instead use mnemonics support.
1804
1805         * gtk/gtklabel.[ch]:
1806         New support for mnemonics.
1807
1808         * gtk/gtkmarshal.list:
1809         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1810
1811         * gtk/gtkmenu.[c]:
1812         * gtkmenushell.c:
1813         Use mnemonics instead of accel groups for uline
1814         support in menu items.
1815         Removed gtk_menu_get_uline_accel_group() and
1816         gtk_menu_ensure_uline_accel_group().
1817
1818         * gtk/gtkmenuitem.c:
1819         Override activate_mnemonic to handle switching between
1820         menu items if there are collisions.
1821         
1822         * gtk/gtknotebook.c:
1823         Connect to activate_mnemonic on the tab_label, so that
1824         activating it switches to that notebook page.
1825
1826         * gtk/gtkwidget.[ch]:
1827         Add activate_mnemonic signal. New function
1828         gtk_widget_activate_mnemonic() to emit it.
1829         Default implementation does activate/grab_focus.
1830
1831         * gtk/gtkwindow.[ch]:
1832         Add support for mnemonics in windows.
1833         New functions:
1834         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1835         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1836
1837         * gtk/testgtk.c:
1838         Update to function name changes.
1839         
1840 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1841
1842         * gtk/gtkimagemenuitem.[c]:
1843         Add gtk_image_menu_item_new_from_stock()
1844
1845 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1846
1847         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1848         Fix buglet in meeting.
1849
1850 2001-03-19  Havoc Pennington  <hp@redhat.com>
1851
1852         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1853         add a bunch of accessor functions. This is because we have
1854         reasonable expectations of extending what fields it contains in
1855         the future.
1856
1857         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1858         changes
1859
1860         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1861         GtkIconSource   
1862
1863 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1864
1865         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1866         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1867
1868         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1869           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1870           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1871           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1872         Change float to double everywhere with the exception of 0<->1.0 alignment
1873         and GtkCurve.
1874
1875 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1876
1877         * gdk/win32/gdkdrawable-win32.c
1878         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1879         output.
1880
1881         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1882         gdkwin32.h.
1883
1884 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1885
1886         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1887         print_event_state, print_event): Use preprocessor macro to make
1888         code more compact. Print also GDK_WINDOW_STATE events.
1889         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1890         
1891         * gtk/gtk.def
1892         * gtk/makefile.mingw.in: Update.
1893
1894         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1895         to catch also Cygwin.
1896
1897 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1898
1899         * gtk/gtkspinbutton.[hc]: added rc-style argument
1900         GtkSpinButton::shadow_type.
1901         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1902         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1903         rc-style settings.
1904
1905         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1906
1907         * gtk/gtkwidget.c: quark cleanups.
1908
1909         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1910         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1911         to create_rc_style() (we don't do cloning in standard OO sense).
1912         added per rc style properties.
1913         
1914         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1915         property values and for caching those. some cleanups.
1916         
1917         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1918         
1919         * gtk/gtksettings.[hc]: new file for global rc-file properties
1920         (at least currently, should get extended to support X properties
1921         and other communication mechanisms).
1922         
1923         * gtk/gtkwidget.[hc]: added style property support:
1924         (gtk_widget_class_install_style_property_parser): install style
1925         property pspec with parser function for rc-file values other
1926         than LONG, DOUBLE or STRING.
1927         (gtk_widget_class_install_style_property): same as above without
1928         parser (parsers are going to be needed quite infrequently).
1929         (gtk_widget_style_get_property): retrive style property value.
1930         (gtk_widget_style_get_valist): same as above with varargs support,
1931         has NOCOPY semantics.
1932         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1933
1934 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1935
1936         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1937         "row_activated" signal.
1938
1939         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1940         stupidity.  Lets actually pass in the row with this signal...
1941
1942 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1943
1944         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1945
1946         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1947
1948         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1949         everything into the ::destroy function, and freed a lot more.
1950
1951 2001-03-16  Havoc Pennington  <hp@redhat.com>
1952
1953         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1954         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1955         are now allowed.
1956
1957 2001-03-16  Havoc Pennington  <hp@redhat.com>
1958
1959         * Applied patch from Nils Barth (bug # 51041) to 
1960         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1961         in various places.
1962
1963 2001-03-15  Havoc Pennington  <hp@redhat.com>
1964         
1965         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1966         for properties to set on the tag.
1967
1968         * gtk/testtext.c: fixups to reflect create_tag change
1969         
1970         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1971         background/foreground stipple are objects, not boxed.
1972
1973         * demos/gtk-demo/textview.c: intellihancing
1974
1975 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1976
1977         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1978         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1979
1980 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1981
1982         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1983         Fix sign error with queued region translations.
1984
1985 2001-03-15  HideToshi Tajima  <tajima@happy>
1986
1987         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1988         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1989         * gtk/gtkentry.c (update_im_cursor_location): 
1990         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1991         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1992         set_cursor_pos to set_cursor_location in GtkInputContext class
1993
1994 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1995
1996         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1997         the location of the cell relative to its area.
1998         * gtk/gtkcell*: modified for above change
1999         * gtk/gtktreeview.c: modified for above change.
2000
2001 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
2002
2003         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
2004          (gtk_tree_view_finalize): actually unref the model.  Thanks to
2005         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
2006
2007 2001-03-14  Havoc Pennington  <hp@redhat.com>
2008
2009         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
2010         
2011         * gtk/gtk.h: remove gtkdata.h
2012
2013         * gtk/Makefile.am: remove gtkdata
2014         
2015         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
2016         not "disconnect" on the adjustments.
2017         
2018         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
2019         GtkData
2020
2021         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
2022         not GtkData
2023
2024         * configure.in: handle case where X render exists, but Pango lacks
2025         Xft support.
2026
2027 2001-03-15 Alexander Larsson  <alexl@redhat.com>
2028
2029         * gtk/gtktoolbar.[ch]:
2030         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
2031         to add stock items to toolbars.
2032
2033         * gtk/Makefile.am:
2034         Remove ../gdk/gdkim.h from gdk_headers.
2035
2036 2001-03-15  Sven Neumann  <sven@gimp.org>
2037
2038         * gdk/gdkim.h: removed
2039         
2040         * gdk/gdkprivate.h
2041         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
2042
2043 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
2044
2045         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
2046         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
2047         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
2048         set_cursor_pos() virtual method
2049
2050         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
2051         (gtk_im_context_xim_set_cursor_pos): add implementation for
2052         set_cursor_pos() method
2053
2054         * gtk/gtkentry.c (recompute_idle_func): set current cursor
2055         position to input methods
2056
2057 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
2058
2059         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
2060         code a lot.
2061
2062         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
2063         g_mem_chunk.
2064         (_gtk_tree_data_list_alloc): use g_mem_chunk.
2065         (_gtk_tree_data_list_node_to_value): Fix to switch on
2066         G_TYPE_FUNDAMENTAL.
2067         (_gtk_tree_data_list_value_to_node): Fix to switch on
2068         G_TYPE_FUNDAMENTAL.
2069         (_gtk_tree_data_list_node_copy): Fix to switch on
2070         G_TYPE_FUNDAMENTAL.
2071
2072 2001-03-12  Havoc Pennington  <hp@redhat.com>
2073
2074         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
2075         to convert to new property API. Also, change default_width and
2076         default_height get_property to return 0 as the flag value for
2077         "unset"; -1 is not a valid value for these fields.
2078
2079 2001-03-12  Havoc Pennington  <hp@redhat.com>
2080
2081         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
2082         enum with registration for icon sizes, instead of strings.
2083
2084         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
2085         gtkwidget.c: Fix to reflect GtkIconSize
2086         
2087 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2088
2089         Make GtkFB compile and link.
2090         
2091         * gdk/linux-fb/gdkdrawable-fb2.c:
2092         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2093         
2094         * gdk/linux-fb/gdkwindow-fb.c:
2095         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2096         Added gdk_window_shape_combine_region.
2097         Added assorted placeholders for unimplemented new GdkWindow API calls.
2098
2099 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2100
2101         * gtk/gtkfilesel.c:
2102         Add more test when converting filenames from/to utf-8.
2103         Don't allow entering text in the filename entry which isn't allowed in
2104         a filename. Just beep instead.
2105
2106 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2107
2108         * gtk/gtkclist.c:
2109         Scroll using gdk_window_scroll(). Don't wait for exposes.
2110         Move the column headers in an order that makes them flash less.
2111
2112 2001-03-10  Hans Breuer  <hans@breuer.org>
2113
2114         * gdk/gdk.def : updated
2115
2116         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
2117         to offseting the clip_mask at the right place
2118
2119         * gdk/win32/gdkwindow-win32.c : don't create background brushes
2120         for all the gdkClasses, especially not for the input_only case.
2121         Otherwise flickering wont be avoidable, because we don't get
2122         WM_ERASEBKGND message for these windows.
2123
2124         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
2125         and fixed massive redraw problems apparently triggered by Alexanders 
2126         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
2127         but it seems to work quite well :-)
2128
2129         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
2130         prototype
2131
2132 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
2133
2134         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2135         (gtk_list_store_set_cell): Fix a stupid typo.
2136
2137 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2138
2139         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2140         select_all not work if you're in SINGLE mode (it doesn't make that
2141         much sense, anyway.)
2142
2143         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2144         handle types more sanely.
2145         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2146         (_gtk_tree_data_list_node_copy): handle types more sanely.
2147
2148         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2149         GValue better. Converts the type as well.
2150
2151         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2152         GValue better. Converts the type as well.
2153
2154 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2155
2156         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2157         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2158         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2159         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2160
2161         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2162         gdk_im/gdk_ic.
2163
2164 2001-03-09  Hans Breuer  <hans@breuer.org>
2165
2166         * gdk/gdk.def : updated
2167
2168         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2169         for their palette
2170
2171         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2172         removing
2173
2174         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2175         removing and implemented Havoc's GdkWindow state functions; 
2176         stick/unstick only as no-op, cause I don't know how to emulate 
2177         on win32 ...
2178
2179         * gtk/gtk.def : updated
2180
2181         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2182
2183         * gtk/gtktypeutils.c : #include <string.h>
2184
2185         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2186
2187 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2188
2189         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2190         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2191         not a boxed.
2192
2193 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2194
2195         * docs/Changes-2.0.txt:
2196         Document expose event->region change and that gtk_widget_event
2197         doesn't allow passing expose events.
2198
2199         * gdk/gdkevents.h:
2200         Add region to expose event.
2201         
2202         * gdk/gdkevents.c:
2203         Handle event->region in gdk_event_copy() and gdk_event_free().
2204
2205         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2206         Generate expose_event->region when creating expose events.
2207
2208         * gdk/x11/gdkevents-x11.c:
2209         Generate expose events with regions when translating X events.
2210
2211         * gtk/gtkcontainer.[ch]:
2212         Default expose handler that propagates expose events to NO_WINDOW
2213         children. New function gtk_container_propagate_expose()
2214
2215         * gtk/gtkwidget.[ch]:
2216         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2217         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2218         expose events. New function gtk_widget_send_expose() to send expose
2219         events. New function gtk_widget_region_intersect() to calculate
2220         window/region intersections.
2221         
2222         * gtk/gtkmain.c (gtk_main_do_event):
2223         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2224         Use gtk_widget_send_expose() to send expose events.
2225         
2226         * gtk/gtkbin.c:
2227         * gtk/gtkbox.c:
2228         * gtk/gtkfixed.c:
2229         * gtk/gtkimagemenuitem.c:
2230         * gtk/gtklist.c:
2231         * gtk/gtkpacker.c:
2232         * gtk/gtktable.c:
2233         * gtk/gtktree.c:
2234         Remove expose handler, using the default container implementation
2235         instead.
2236         
2237         * gtk/gtkbutton.c:
2238         * gtk/gtkcheckbutton.c:
2239         * gtk/gtkeventbox.c:
2240         * gtk/gtkfixed.c:
2241         * gtk/gtkhandlebox.c:
2242         * gtk/gtklayout.c:
2243         * gtk/gtklistitem.c:
2244         * gtk/gtkmenu.c:
2245         * gtk/gtkmenubar.c:
2246         * gtk/gtkmenuitem.c:
2247         * gtk/gtknotebook.c:
2248         * gtk/gtkoptionmenu.c:
2249         * gtk/gtkpaned.c:
2250         * gtk/gtkscrolledwindow.c:
2251         * gtk/gtktogglebutton.c:
2252         * gtk/gtktoolbar.c:
2253         * gtk/gtktreeitem.c:
2254         * gtk/gtkviewport.c:
2255         Chain expose handler to parent class handler. Use
2256         gtk_container_propagate_expose() to propagate exposes.
2257
2258         * gtk/gtkclist.c (check_exposures):
2259         * gtk/gtktext.c (process_exposes):
2260         Use gtk_widget_send_expose instead of gtk_widget_event.
2261
2262 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2263
2264         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2265
2266 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2267
2268         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2269         unref the nodes.   Fixes bug #50058.
2270
2271         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2272         "::ref_iter" to "::ref_node".
2273         (gtk_tree_model_unref_node): change "::unref_iter" to
2274         "::unref_node". Fixes bug #50064.
2275
2276 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2277
2278         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2279         support for invisible cells.
2280          (gtk_tree_view_bin_expose): ditto
2281
2282 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2283
2284         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2285         on gobjects.
2286
2287         * tests/testtreefocus.c (main): New test file.
2288
2289         * tests/testtreeview.c: update to latest glib changes.
2290
2291         * tests/testtreecolumns.c: update to latest glib changes.
2292
2293 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2294
2295         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2296
2297 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2298
2299         * *.c: added accumulator data argument to g_signal_newc()
2300         functions.
2301
2302         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2303         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2304         * gtk/treestoretest.c (make_window):
2305         s/g_signal_connect/g_signal_connectc/.
2306
2307         * gtk/gtktextbuffer.c: completed signal arg fixups,
2308         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2309
2310 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2311
2312         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2313         G_CONST_RETURN.
2314
2315         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2316         ::hierarchy-changed signal when a widget changes
2317         from anchored to unanchored or vice versa.
2318         (anchored means 
2319          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2320         Use a private flag to keep track of this efficiently.
2321
2322 2001-03-07  Havoc Pennington  <hp@redhat.com>
2323
2324         * gtk/testgtk.c (create_spins): uglify so that size request gets
2325         tested.
2326
2327         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2328         request on values for upper/lower, completes #6152
2329
2330 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2331
2332         * Makefile.am: Remove gtk-config-2.0 again.
2333         (Grrrr, pkg-config. And stops make loops.)
2334
2335 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2336
2337         * gtk/gtksignal.[hc]: removed old emission hook API.
2338         
2339         * docs/Changes-2.0.txt: fixed sections.
2340         
2341         * gtk/gtktextbuffer.c: signal arg fixups.
2342
2343 2001-03-07  Havoc Pennington  <hp@redhat.com>
2344
2345         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2346
2347         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2348         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2349         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2350         validation and the redraw which is higher priority than the
2351         validation.
2352
2353 2001-03-07  Havoc Pennington  <hp@redhat.com>
2354
2355         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2356         (gtk_entry_set_property): remove trailer
2357
2358         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2359         (gtk_entry_get_width_chars): new functions, to set size request to 
2360         a given number of characters
2361
2362         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2363
2364         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2365         (gtk_dialog_get_has_separator): new function
2366         (run_delete_handler): fix to not emit "response" signal
2367         because we already did in the delete event handler installed
2368         at dialog creation time.
2369         
2370         * gtk/gtkdialog.h: add a has_separator property,
2371         add GTK_DIALOG_NO_SEPARATOR flag
2372
2373 2001-03-07  Havoc Pennington  <hp@redhat.com>
2374
2375         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2376         off decorations for a window.
2377
2378         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2379         changes
2380
2381         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2382         to get location of PangoLayout inside the label, closes #51198
2383
2384         * gtk/testgtk.c (create_bbox): fix up button box usage
2385
2386         * gtk/testcalendar.c (create_calendar): fix up button box usage
2387
2388         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2389
2390         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2391
2392         * gtk/gtkhbbox.h: deprecations
2393
2394         * gtk/gtkvbbox.h: deprecations
2395
2396         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2397         emulate deprecated gtk_button_box_get_spacing
2398
2399         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2400         the "set global default" functions
2401         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2402         GtkBox base class
2403
2404         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2405
2406         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2407         render the icon, return the missing image icon.
2408
2409         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2410         image icon if the load fails.   
2411
2412         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2413         when no image is found; should be the Netscape "missing image"
2414         icon eventually but for now is a random image
2415
2416         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2417         role for the session manager
2418
2419         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2420
2421         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2422         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2423
2424         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2425
2426 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2427
2428         * gtk/*.c: marshaller fixes.
2429         
2430         * gtk/gtkmarshal.list: extreme cleanup.
2431
2432         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2433         param spec for now.
2434
2435         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2436         where appliable.
2437
2438         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2439         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2440         which are not reference counted:
2441         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2442         PangoFontDescription, GtkTreeIter and GtkTreePath.
2443
2444 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2445
2446         * gtk/gtktreeselection.h: 
2447         * gtk/gtktreemodel.c:
2448         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2449         file should be included directly, and gobject/gmarshal.h
2450         as well as gtk/gtkmarshal.h even can't be included directly.
2451
2452         * Makefile.am: grr, install gtk-config-2.0.
2453
2454         * gtk/testgtk.c:
2455         * gtk/simple.c:
2456         * gtk/gtkmenu.c:
2457         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2458         passing "*signal*::*" args to gtk_widget_set().
2459         
2460         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2461         
2462         * gtk/*.c: removed trailer arg from property setters and getters.
2463         macro fixups.
2464
2465 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2466
2467         * gtk/gtklabel.c (set_markup): Removed warning
2468
2469 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2470
2471         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2472         field to allow you to hide cell renderers.
2473
2474         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2475
2476         * gtk/gtktreeview.c: Add support for invisible cells.
2477
2478 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2479
2480         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2481         Add "clicked" signal back to columns.
2482
2483         * ChangeLog: remove conflict markers.
2484
2485 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2486
2487         * gtk/gtkbutton.c: Add animation of activation by, on 
2488         activate, pressing the button, and adding a timeout that 
2489         releases the button after 250ms or on key release and
2490         emits ::clicked. (#51501)
2491
2492         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2493         action area, we connect to ::clicked instead of ::activate
2494         so the dialog stays up through the animation.
2495
2496 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2497
2498         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2499         check the ignore_enter flag for the menu shell that
2500         the item is actually a child of, not for attached
2501         submenus. (#51536)
2502
2503 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2504
2505         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2506         special key-press grab handling for widgets within
2507         GtkWindows. Otherwise, fall through to normal case.
2508
2509         This prevents key events being sent twice to GtkInvisible
2510         widgets, which can cause all sorts of mischief.
2511
2512 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2513
2514         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2515         widget is in effect, give the grab widget a first
2516         crack at KEY_PRESS/RELEASE events. (#424)
2517
2518 2001-03-06  James Henstridge  <james@daa.com.au>
2519
2520         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2521         offset for the window_state_event to point at window_state_event
2522         rather than no_expose_event.
2523
2524 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2525
2526         * gtk/gtkimmodule.h: fix busted /* comment */
2527
2528 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2529
2530         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2531         object properties.
2532
2533 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2534
2535         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2536         add object properties.
2537
2538         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2539         to add object properties.
2540
2541         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2542         object properties.
2543
2544         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2545         add object properties.
2546
2547         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2548         object properties.
2549
2550 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2551
2552         * gtk/gtktreemodel.c: renamed "child_toggled" to
2553         "has_child_toggled".
2554
2555         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2556         handle new signal name.
2557
2558         * gtk/gtktreestore.c: Updated to handle new signal name.
2559         * gtk/gtklisttore.c: Updated to handle new signal name.
2560         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2561
2562 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2563
2564         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2565         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2566
2567 2001-03-05  Michael Natterer  <mitch@gimp.org>
2568
2569         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2570         pixbuf-engine coincidentially also failed to make one of it's
2571         parent_class pointers static, causing overwriting of GtkLabel's
2572         parent_class pointer in pixbuf_style_class_init().
2573         (Will commit the fix to the pixbuf-engine too).
2574
2575 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2576
2577         * gdk/gdkwindow.h:
2578         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2579         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2580         gdk_window_set_icon_list for net wmspec functionality.
2581
2582         * gdk/x11/gdkwindow-x11.c:
2583         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2584         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2585         gdk_window_set_icon_list.
2586         Added gdk_wmspec_change_state helper function and used it in the code.
2587         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2588
2589         * gtk/gtkdialog.c (gtk_dialog_init):
2590         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2591
2592         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2593         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2594
2595         * gtk/gtkwindow.c:
2596         new function gtk_window_set_type_hint.
2597         On realize, set type hint and modal hint.
2598
2599         * gtk/gtkwindow.h:
2600         Added type_hint field and gtk_window_set_type_hint.
2601
2602 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2603
2604         * gtk/gtklabel.[ch]:
2605         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2606         New function gtk_label_get_accel_keyval () to get the underline accelerator
2607         of the label. Setting the label pattern overrides other attributes.
2608
2609 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2610
2611         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2612         Added missing initializers to gtk_rc_style_init().
2613
2614 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2615
2616         * gtk/gtktextview.c: fixed bug #51097 about setting 
2617         gtk_text_view_set_border_window_size() if the widget is 
2618         already realized.
2619
2620 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2621
2622         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2623
2624         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2625         comment. Won't do to have duplicated doc comments between
2626         the platform subdirs.
2627
2628 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2629
2630         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2631           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2632
2633         Detectable auto-repeat - make a repeating key generate
2634         press/press/press/release instead of press/release pairs.
2635
2636         If we have Xkb and XkbSetDectableAutoRepeat supports
2637         that, we do it that way. Otherwise, when we get
2638         a release event, we check ahead with XPending to see
2639         if the next key is a KeyPress with the same keycode
2640         and timestamp. (Not 100% reliable, but pretty close.)
2641           
2642 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2643         
2644         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2645         special key-press grab handling for widgets within
2646         GtkWindows. Otherwise, fall through to normal case.
2647  
2648         This prevents key events being sent twice to GtkInvisible
2649         widgets, which can cause all sorts of mischief.
2650  
2651 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2652  
2653         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2654         widget is in effect, give the grab widget a first
2655         crack at KEY_PRESS/RELEASE events. (#424)
2656  
2657 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2658
2659         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2660         to extend the selection. (Roughly based on patch
2661         from Jay Cox, #50939)
2662
2663         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2664         to properly handle previous GDK_BUTTON_PRESS. 
2665         (Patch from Jay Cox, #50938)
2666
2667         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2668         '\0' back along with the deleted text. (#51148)
2669
2670 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2671
2672         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2673         the group when extracting it from the X keyboard event.
2674
2675         * modules/input/Makefile.am modules/input/imipa.c: 
2676         Simple module for entering IPA. (Do we need a 
2677         gtk-stupid-input-tricks CVS module?)
2678
2679 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2680
2681         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2682         const.
2683
2684         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2685
2686         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2687         is no focus widget for the dialog currently, grab the focus as well
2688         as the default.
2689
2690         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2691         the action area's children to iterate through, not the
2692         dialog's children.
2693
2694 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2695
2696         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2697         Add plug-socket tests. (Won't work worth a darn until I commit
2698         the rest of the plug-socket changes, but no reason these
2699         can't go into CVS now.)
2700
2701 2001-03-02  Havoc Pennington  <hp@redhat.com>
2702
2703         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2704         _gdk_region_get_xrectangles()
2705
2706         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2707
2708         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2709
2710         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2711         function, contributed by Ron Steinke    
2712
2713         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2714         gdk_net_wm_supports
2715
2716         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2717         New function, contributed by Ron Steinke
2718
2719         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2720         used to line up the text in the entry when using the entry for
2721         editable sheet cell hacks
2722
2723         * gtk/testgtk.c (create_entry): test the activate_default setting
2724         on GtkEntry
2725
2726         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2727         cause the entry to activate the default button for a dialog when 
2728         activated
2729         (gtk_entry_get_activates_default): new function
2730
2731 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2732
2733         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2734         Hwang to move call to sync_selection() up a few lines
2735         to before the row list is modified, to fix crash when
2736         removing rows in the undo_selection list.
2737
2738         (Test case provided by Daniel Elstner:
2739
2740         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2741
2742 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2743
2744         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2745         of tree->root_tree in parent_set rather than _map(), 
2746         fixing #50892 in a bit better manner.
2747
2748 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2749
2750         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2751
2752 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2753
2754         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2755         gtk_default_draw_shadow.
2756
2757 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2758
2759         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2760         warning, make warnings more verbose, treat a error
2761         in shmat as permanent, and don't try again.
2762         (#51163, Ed Randall.)
2763
2764 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2765
2766         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2767         delay for the first click before starting to scroll.
2768         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2769
2770         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2771         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2772
2773 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2774
2775         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2776         cleanup to remove some references to unused
2777         ->xoffset, ->yoffset.
2778
2779 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2780
2781         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2782         mask. (#51039, fix from Martin Maierhofer)
2783
2784 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2785
2786         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2787         for unshifted + and shifted = for non-us keyboards.
2788         Make <Control>+ and <Control>- work as well as 
2789         <Control>KP_Plus, <Control>KP_Minus for recursive
2790         open/close.  (#2682, René Seindal)
2791
2792 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2793
2794         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2795         the active menu item before deactivating the menu,
2796         so gtk_menu_popdown doesn't change the history. (#50964)
2797         
2798 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2799
2800         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2801         draw lines with text_gc rather than black_gc.
2802         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2803
2804 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2805
2806         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2807         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2808         less interrelated then it was, but it still requires the
2809         GtkTreeView to map it.
2810
2811         * test/testtreecolumn.c: Now I can add a column to one view,
2812         remove it, add it to the another view, remove it, then re-add it
2813         to the first.  Nifty.
2814
2815 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2816
2817         * docs/tutorial/gtk-tut.sgml: Minor corrections
2818
2819 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2820
2821         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2822         GtkRowReference.
2823
2824 2001-02-28  Havoc Pennington  <hp@redhat.com>
2825
2826         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2827         draw_default
2828         (gtk_widget_draw_focus): remove this function; we could instead
2829         make it just gtk_widget_draw(), but in most cases I think the
2830         result would be broken user code, so think it's better to have
2831         that code not compile and get fixed
2832         (gtk_widget_draw_default): ditto
2833
2834         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2835         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2836         
2837         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2838         widgets lose/get the default, instead of calling draw_default
2839         
2840         * docs/Changes-2.0.txt: note about all this
2841
2842         Then fixed every widget in GTK, I won't list all the filenames.
2843
2844 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2845
2846         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2847         _gtk_tree_row_reference_deleted.
2848         (inserted_callback): Proxy out to
2849         _gtk_tree_row_reference_inserted.
2850         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2851         get around signal emission ordering problem.
2852
2853         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2854         fix to work with SINGLE 
2855         (_gtk_tree_selection_internal_select_node): Major sanitization on
2856         selections.  SINGLE now seems to work.
2857
2858         * tests/Makefile.am: add testtreecolumn.c:
2859
2860         * tests/testtreecolumn.c: New test.  Mostly points out selection
2861         bugs currently, but will test columns later.
2862
2863         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2864         selection bug.  I hate touching this code -- it's scary.
2865
2866 2001-02-26  Havoc Pennington  <hp@redhat.com>
2867
2868         * gtk/testgtk.c: test the window state stuff
2869
2870         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2871         window come to the user's attention as if it were just created
2872         (gtk_window_iconify): new function
2873         (gtk_window_deiconify): new function
2874         (gtk_window_stick): new function
2875         (gtk_window_unstick): new function
2876         (gtk_window_maximize): new function
2877         (gtk_window_unmaximize): new function
2878
2879         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2880
2881         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2882
2883         * gdk/x11/gdkevents-x11.c: create window state events when
2884         appropriate
2885         (gdk_wmspec_supported): new function
2886
2887         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2888         iconification before showing the window
2889         (gdk_window_deiconify): new function
2890         (gdk_window_stick): new function
2891         (gdk_window_unstick): new function
2892         (gdk_window_maximize): new function
2893         (gdk_window_unmaximize): new function
2894
2895         * gdk/gdkwindow.c: store the window state in the window; 
2896         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2897         window->mapped.
2898         (gdk_window_get_state): return the current window state
2899
2900         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2901         (gdk_event_get_state): handle GDK_WINDOW_STATE
2902         (gdk_synthesize_window_state): function to create the window state
2903         events
2904
2905         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2906         event, for changes to "window state" such as maximized, sticky, 
2907         etc.
2908         
2909         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2910         focuses a window
2911
2912         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2913         finds out if we support a given WM spec hint
2914
2915 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2916
2917         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2918
2919 2001-02-25  Hans Breuer  <hans@breuer.org>
2920
2921         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2922         cause we want to loose those prototypes only in the latter case
2923
2924         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2925         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2926         impl member variable instead
2927
2928         * gtk/gtk.def : updated
2929
2930         * gtk/gtklist.c : 
2931         * gtk/gtkmenus.c : include <string.h> for memset ()
2932
2933         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2934         for everthing built here, but for gtk-x.x.dll only. This solves
2935         problem of indifferent gtk type definitions
2936
2937 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2938
2939         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2940
2941 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2942
2943         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2944         column that is exposed.
2945
2946         (_gtk_tree_view_update_size): Changed name from set_size, and
2947         changed function to do more work, and not force people calling it
2948         to figure out the size.  Simplifies a lot of code elsewhere.
2949
2950 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2951
2952         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2953         return solid masks for xpms that have no transparent color.
2954         This makes the ..._create_from_xpm... API backwards
2955         compatible.
2956
2957 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2958
2959         * README.win32: Update. Mention the gtk-1-3-win32-production
2960         branch.
2961
2962         * gdk/win32/bdfcursor.c: New file. A program that generates
2963         xcursors.h. Thanks to Stefan Ondrejicka.
2964
2965         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2966         compact format.
2967
2968         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2969
2970         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2971         function, uses xcursors.h.
2972         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2973         cursor from inline data instead of using LoadCursor() to generate
2974         it from a resource.
2975
2976         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2977         event, must check the Windows message for mouse button state, as
2978         the GDK event state might not have been built if it is
2979         undelivered. Remove one goto.
2980
2981         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2982         SetCursor() if the current cursor as returned by GetCursor() is
2983         the window's previous cursor. The ChildWindowFromPoint() test
2984         apparently didn't work correctly.
2985
2986         * gdk/win32/rc/*.cur: Remove.
2987
2988         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2989
2990         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2991
2992         * gtk/makefile.{mingw,msc}.in: Updates.
2993
2994 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2995
2996         * gtk/gtktreemodel.h: add functions for signal emission.
2997
2998         * gtk/gtktreestore.c: move to use above functions instead of
2999         g_signal_emit.
3000
3001         * gtk/gtkliststore.c: ditto
3002
3003 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
3004
3005         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
3006         GObject instead of GtkObject.
3007
3008         * gtk/gtkliststore.c: ditto.
3009
3010         * gtk/gtktreemodelsort.c: ditto.
3011
3012         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
3013         GtkTreeModelIface, instead of in each model.
3014
3015 2001-02-21  Havoc Pennington  <hp@redhat.com>
3016
3017         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
3018         unbreak this function
3019
3020         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
3021         properties
3022
3023         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
3024         properties
3025
3026         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
3027         properties
3028
3029         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
3030         mean unset the max length
3031
3032 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
3033
3034         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
3035         Changed name to be set_cell_data_func to make it clear what
3036         the functino does.  Close bug #51069.
3037
3038 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
3039
3040         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
3041         have memory actually freed.  Keeps box running longer.
3042
3043 2001-02-21  Alexander Larsson  <alexl@redhat.com>
3044         
3045         * gtk/gtkseparatormenuitem.[ch]:
3046         Added new menu separator item. The drawing and size handling
3047         is still done in GtkMenuItem, but the API is a bit more sane.
3048         
3049         * gtk/Makefile.am:
3050         Add gtkseparatormenuitem.[ch].
3051
3052         * gtk/gtk.h:
3053         Add gtkseparatormenuitem.h.
3054         
3055         * gtk/gtkentry.c:
3056         * gtk/gtkmenufactory.c:
3057         * gtk/gtktextview.c:
3058         Use the new API for menu separators.
3059         
3060         * demos/gtk-demo/menus.c (create_menu):
3061         Add some GtkSeparatorMenuItem demo code.
3062
3063 2001-02-20  Havoc Pennington  <hp@redhat.com>
3064
3065         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
3066         Lee Mallabone
3067
3068         * gtk/gtkarrow.c: Convert to new property API, patch from 
3069         Lee Mallabone
3070
3071 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
3072
3073         * tests/testtreeview.c (toggled_callback): fix to reflect change
3074         in GtkTreeModelStore.
3075
3076 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
3077
3078         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
3079         function to create an icon set from a pixbuf.
3080
3081 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3082
3083         * gtk/gtkcellrenderertext.[ch]:
3084         Add a "markup" property.
3085
3086         * gtk/treestoretest.c:
3087         Use the markup property, remove some leftover stuff from
3088         GtkTreeModelMapping.
3089
3090 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3091
3092         * gtk/gtklabel.c (gtk_label_set_selectable):
3093         Queue a redraw if the selectable setting was changed.
3094
3095 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3096
3097         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3098         Actually copy the whole gc, not just the public parts.
3099         
3100         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3101         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
3102         labels.
3103
3104 2001-02-19  Havoc Pennington  <hp@pobox.com>
3105
3106         * gdk/gdkwindow.c: docs
3107
3108         * gdk/gdkrgb.c: docs
3109
3110         * gdk/gdkregion-generic.c: docs
3111
3112         * gdk/gdkgc.c (gdk_gc_set_values): docs
3113
3114         * gdk/gdkdraw.c: docs
3115
3116         * gdk/gdkdrawable.h: deprecate drawable get/set data
3117
3118 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
3119
3120         * demos/gtk-demo/dialog.c: Add simple new demo.
3121
3122 2001-02-19  Havoc Pennington  <hp@redhat.com>
3123
3124         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
3125         insert_child_anchor signal, bug #50245
3126
3127         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
3128         from create_child_anchor, so the anchor is passed in
3129
3130         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
3131         (_gtk_widget_segment_new): have the child anchor object passed in, 
3132         instead of creating it.
3133
3134         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3135         to gtk_text_buffer_get_modified
3136
3137 2001-02-19  Havoc Pennington  <hp@redhat.com>
3138
3139         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3140         changed GLib without fixing GTK
3141
3142         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3143         functions to have an underscore in front. Most of them should 
3144         probably just go away, but for starters don't export them.
3145         Bug #50482
3146
3147 2001-02-19  Havoc Pennington  <hp@redhat.com>
3148
3149         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3150         excluded by default
3151
3152         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3153         clean up the old code a bit
3154
3155         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3156         inconsistent state
3157
3158         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3159         draw inconsistent state
3160
3161         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3162         (create_menu): add inconsistent test
3163
3164         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3165         new function
3166         (gtk_check_menu_item_get_inconsistent): new function
3167         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3168         state (using etched in for now)
3169
3170         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3171         draw inconsistent state
3172
3173         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3174         function, used when the user has selected a range of stuff in
3175         different states
3176         (gtk_toggle_button_get_inconsistent): accessor for that
3177         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3178         don't know what else to do)
3179
3180 2001-02-19  Hans Breuer <hans@breuer.org>
3181
3182         * gtk/gtk.def : updated exported symbols
3183
3184         * gtk/makefile.msc.in : updated
3185
3186         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3187         a colormap, when invoked from testgtk::entry. I'm not sure where
3188         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3189         avoids immediate crashing ...
3190
3191         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3192         any objections ?
3193
3194         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3195         0 parameter. At least msvc doesn't like macros with var args. 
3196         I simply removed the extra 0, was it a feature or a typo ?
3197
3198         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3199         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3200         because the value assignment to the internal struct wasn't working.
3201         I'm not absolutely sure. The problem could have been resolved by
3202         changing the "func" declartion in the struct, but was the pointer
3203         to the function pointer intended ?
3204
3205         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3206
3207         * gdk/gdk.def : updated exported symbols
3208
3209         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3210         only use SetDIBitsToDevice if there is a palette at the drawable
3211         and the image is GDK_VISUAL_PSEUDO_COLOR
3212
3213         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3214
3215         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3216
3217         * gdk/*/makefile.msc : updated
3218
3219 2001-02-19  Havoc Pennington  <hp@redhat.com>
3220
3221         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3222         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3223
3224         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3225         (gdk_key_repeat_restore): nuke
3226
3227         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3228         (gdk_init_check): no atexit func
3229
3230         * gdk/gdkrgb.h: mark some stuff deprecated
3231
3232         * gdk/gdkcolor.h: mark some stuff deprecated
3233         
3234         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3235
3236         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3237
3238 2001-02-16  Havoc Pennington  <hp@redhat.com>
3239
3240         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3241         scroll steps.
3242
3243         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3244         steps, and add Ctrl-arrow shortcuts for paging visually as with
3245         HScale, since Page Up and Page Down move logically.
3246
3247         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3248         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3249         
3250         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3251         steps
3252         (gtk_range_scroll): handle the visual steps
3253
3254         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3255         scroll steps
3256
3257         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3258         steps, not the logical ones.
3259
3260         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3261         (scroll_vertical): handle up/down steps
3262
3263 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3264
3265         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3266         Copy data and free data with free().
3267
3268         * gdk-pixbuf/gdk-pixbuf.c:
3269         * gdk-pixbuf/io-jpeg.c:
3270         * gdk-pixbuf/io-png.c:
3271         Use g_try_malloc/g_free instead malloc/free.
3272         
3273         * gdk-pixbuf/test-gdk-pixbuf.c:
3274         Must... initialize... gobject...
3275         
3276         * gdk-pixbuf/pixops/timescale.c:
3277         * gtk/gtkcalendar.c:
3278         Use g_malloc instead of malloc.
3279         
3280 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3281
3282         * gtk/testgtkrc:
3283         Comment out property assignments, these don't work yet.
3284
3285 2001-02-17  Havoc Pennington  <hp@pobox.com>
3286
3287         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3288         bit.
3289
3290 2001-02-17  Havoc Pennington  <hp@pobox.com>
3291
3292         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3293         shadowed variables that had broken size request in some cases,
3294         leading to bogus tooltips (#50996)
3295
3296 2001-02-06  Jon K Hellan  <hellan@acm.org>
3297
3298         Implement fast browsing of tooltips, bug #50619
3299         
3300         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3301         and last_popdown
3302         
3303         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3304         use_sticky_delay and last_popdown.
3305         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3306         time of popdown.
3307         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3308         is NULL.
3309         (gtk_tooltips_recently_shown): New static function.  Return true
3310         if < sticky_delay has elapsed since last popdown.
3311         (gtk_tooltips_event_handler): Display window after sticky_delay
3312         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3313         since last popdown.
3314         
3315 2001-02-17  Havoc Pennington  <hp@pobox.com>
3316
3317         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3318         instead of (). #6394
3319
3320         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3321         G_CONST_RETURN, make it return by reference, #50473
3322         
3323 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3324
3325         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3326         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3327         setup fields contain garbage (e.g. subwindow, breaking
3328         gdk_drawable_ref() upon event copy).
3329         (gtk_menu_stop_navigating_submenu_cb): same here.
3330
3331         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3332         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3333         * gtk/gtkclist.c (vertical_timeout): 
3334         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3335         default-zero-intialization for unions to memset(,0,), as unions are
3336         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3337         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3338
3339         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3340         g_closure_sink() warning.
3341
3342         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3343         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3344         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3345         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3346         
3347 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3348
3349         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3350         gtk_*_store_get, and moved to GtkTreeModel.
3351
3352         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3353
3354         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3355
3356         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3357
3358         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3359         set the func.
3360
3361         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3362         freeze/thaw notify between setting all the properties for a cell.
3363
3364         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3365
3366 2001-02-15  Havoc Pennington  <hp@redhat.com>
3367
3368         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3369         the X coordinates so they're with respect to the line, rather than 
3370         with respect to the layout.
3371
3372         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3373         Mallabone
3374
3375         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3376         and inverted test
3377
3378         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3379         #50806
3380
3381         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3382
3383         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3384         gtk_text_iter_is_end
3385
3386         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3387         rename gtk_text_buffer_get_end_iter
3388
3389         * gtk/testgtk.c (create_labels): Add test for selectable
3390
3391         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3392         the selection stuff. This code is kind of broken since it doesn't 
3393         use the theme engine.
3394
3395         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3396         fix infinite loop and y offset problem
3397         (gdk_draw_layout_line_with_colors): fix foreground color handling
3398
3399         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3400         that makes the label selectable.
3401         
3402         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3403         layout when the style is set, since fonts etc. could have changed.      
3404
3405 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3406
3407         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3408
3409         * gtk/gtktreemodelsimple.[ch]: removed.
3410
3411 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3412
3413         * gtk/gtktreemodelmapping.[ch]:
3414         New files. Implement GtkTreeModelMapping.
3415         
3416         * gtk/Makefile.am:
3417         Add gtktreemodelmapping.[ch].
3418         
3419         * gtk/gtk.h:
3420         Add gtktreemodelmapping.h
3421
3422         * gtk/treestoretest.c:
3423         Test the GtkTreeModelMapping
3424
3425 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3426
3427         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3428         have a demo, we might as well pass in real values.  Thanks to
3429         clahey for pointing this out.
3430
3431 2001-02-14  Havoc Pennington  <hp@pobox.com>
3432
3433         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3434         "static" to a private function
3435         (gtk_image_menu_item_class_init): remove destroy handler,
3436         add "image" object property
3437
3438 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3439
3440         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3441         Add a shortcut if the window and the current clip_region doesn't
3442         overlap. This is needed when there are a lot of windows in a
3443         window. The layout test in testgtk is a good test.
3444
3445         * gdk/linux-fb/gdkwindow-fb.c:
3446         Whitespace fix.
3447
3448 2001-02-13  Sven Neumann  <sven@convergence.de>
3449
3450         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3451
3452 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3453
3454         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3455         Don't reference last_cursor if it is null. Fixes crash when rotating
3456         the screen before having moved the mouse.
3457
3458         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3459
3460         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3461
3462         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3463         when using 90 or 270 degrees rotation.
3464
3465 2001-02-12  Havoc Pennington  <hp@pobox.com>
3466
3467         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3468         it always set the foreground, even if we were only using
3469         a stipple.
3470         (gdk_draw_layout_line_with_colors): new function, allow
3471         override colors
3472         (gdk_draw_layout_with_colors): new function, allow override
3473         colors
3474         (gdk_pango_layout_line_get_clip_region): function to get the clip
3475         region for a logical text range
3476         (gdk_pango_layout_get_clip_region): get the clip region for a
3477         logical text range
3478
3479         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3480         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3481         the right number of arguments.
3482
3483         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3484         enhance the function to check that node data corresponds to a 
3485         view still belonging to the tree.
3486
3487         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3488         GtkTreePath
3489         (gtk_tree_view_inserted): ditto
3490         (gtk_tree_view_child_toggled): ditto
3491
3492         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3493         simplify this code.
3494
3495         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3496         a PangoAttrList
3497
3498         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3499
3500         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3501
3502         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3503         size in the size request 
3504         (gtk_menu_bar_size_allocate): consider toggle size here
3505
3506         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3507         that displays a widget in the toggle slot
3508
3509         * gtk/testgtk.c: test GtkImageMenuItem
3510
3511         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3512         
3513         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3514         request and allocation
3515
3516         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3517
3518         * gtk/gtkcheckmenuitem.c
3519         (gtk_check_menu_item_toggle_size_request): ditto
3520         
3521 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3522
3523         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3524         reference.
3525
3526         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3527         and refuse to initialize GTK+ if they fail.
3528
3529 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3530
3531         * configure.in: Add check for gtk-doc version.
3532
3533 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3534
3535         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3536         where the xpad/ypad was only being used on one side!
3537
3538 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3539
3540         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3541         function, copied from X11 version.
3542
3543         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3544         DestroyCursor failures. The reason for the problem (despite the
3545         inconsistent messages from GetLastError()) was that
3546         DestroyCursor() cannot be called while a cursor is set in a
3547         window. Set the new cursor first and then destroy the old one.
3548         Thanks to jpe@archaeopteryx.com.
3549
3550         * gdk/win32/gdkcc-win32.c: Remove.
3551
3552         * gdk/win32/Makefile.am: Remove from here, too.
3553         
3554         * gdk/gdk.def
3555         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3556
3557         * gtk/gtk.def
3558         * gtk/makefile.mingw.in: Updates.
3559
3560 2001-02-08  Havoc Pennington  <hp@redhat.com>
3561
3562         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3563         add a widget to a bin that already has a child.
3564
3565         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3566
3567         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3568         
3569         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3570
3571         * gdk/gdk.h: remove gdkcc.h
3572
3573         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3574
3575         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3576         GdkPixbuf, since the previous implementation was GdkColorContext
3577         dependent.
3578
3579         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3580         
3581 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3582
3583         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3584         a sane value!
3585
3586 2001-02-08  Havoc Pennington  <hp@redhat.com>
3587
3588         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3589         lighten them.
3590
3591 2001-02-08  Havoc Pennington  <hp@redhat.com>
3592
3593         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3594         validation idle
3595
3596         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3597         cell renderer
3598
3599         * demos/pixbuf-demo.c (timeout): remove deprecated
3600         gtk_widget_draw
3601
3602         * demos/testpixbuf-save.c (main): remove deprecated
3603         gtk_drawing_area_size
3604
3605         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3606         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3607         at the start of the allocation.
3608         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3609         unsetup or NULL model.
3610
3611         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3612         even/odd/sorted cells in the tree view.
3613
3614         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3615         bugfixes
3616
3617         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3618         backgrounds with draw_flat_box using different detail for even/odd
3619         rows.
3620
3621         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3622         row, so we can draw the alternating colors thing
3623
3624         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3625         property from a synonym property, notify for the synonym.
3626         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3627         (gtk_text_tag_get_property): Always return the font, even if
3628         all its fields aren't set
3629
3630         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3631         store the attr list; it leaves us with no way to change attributes
3632         in _render according to the render flags, and no way to implement
3633         get_property. Instead store all the specific text attributes. 
3634         Separate whether an attribute is enabled from its value. Sync all
3635         properties with GtkTextTag, make them all consistent, etc.
3636
3637         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3638         renderers can highlight the sort row/column     
3639
3640         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3641         accessor functions to get values; this has the side effect of
3642         showing up which accessor functions were missing. Added those.
3643
3644         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3645         set_alignment, to be consistent with GtkLabel, GtkMisc
3646
3647         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3648         arrow.
3649
3650         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3651
3652         * gtk/gtktreesortable.h: updates in here
3653
3654 2001-02-07  Sven Neumann  <sven@convergence.de>
3655
3656         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3657         pango dimensions after painting the background. We used to draw
3658         gigantic flat boxes here.
3659
3660 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3661
3662         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3663         error introduced with earlier commit) (pointed out by
3664         Ollie Lho)
3665
3666 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3667
3668         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3669         which are no longer necessary.
3670
3671 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3672
3673         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3674
3675 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3676
3677         * gdk/gdk.def
3678         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3679         Provide dummy implementations.
3680
3681 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3682
3683         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3684
3685         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3686         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3687         deprecated this function.
3688
3689         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3690         argument.
3691
3692 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3693
3694         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3695
3696 2001-02-03  Havoc Pennington  <hp@pobox.com>
3697
3698         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3699         Mikael Hermansson with patch from Mikael (if there was a toggle
3700         start one after the first character in the range, this function
3701         was broken). Bug #50380
3702
3703 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3704
3705         * configure.in: Remove confusing comment about X11.
3706
3707 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3708
3709         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3710         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3711         
3712 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3713
3714         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3715         it breaks things on BSD. If you want to compile GTK+ with
3716         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3717         when configuring, since GTK+ simply can't be "pure ANSI" 
3718         in the header files it uses. (#8170, Greg Hudson)
3719
3720 2001-02-02  Havoc Pennington  <hp@redhat.com>
3721
3722         * gtk/gtkwindow.c: docs
3723
3724         * gtk/gtkwidget.c: docs
3725         (gtk_widget_set_colormap): add a reference to the colormap
3726         (gtk_widget_get_default_colormap): add a reference to the colormap
3727
3728         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3729
3730         * gtk/gtktextiter.c: docs
3731
3732         * gtk/gtkmain.c (gtk_propagate_event): docs
3733
3734         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3735         (gtk_paned_set_position): docs
3736
3737         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3738         sort interface, no implementation yet.
3739
3740         * demos/testpixbuf.c (new_testrgb_window): replace
3741         gtk_drawing_area_size() with gtk_widget_set_usize()
3742
3743         * demos/testpixbuf-drawable.c (main): ditto
3744         
3745         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3746
3747         * gtk/gtktextbuffer.c: docs
3748
3749         * gtk/gtkstock.c: docs
3750
3751         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3752
3753         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3754
3755         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3756         
3757         * gtk/gtkimage.c: add some docs in here
3758         (gtk_image_size_request): change name of
3759         gtk_widget_render_stock_icon
3760         (gtk_image_get_icon_set): don't dup returned string
3761         (gtk_image_get_icon_set): don't dup returned string
3762
3763         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3764         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3765         and gtkiconfactory.h functions
3766
3767         * gtk/gtkiconfactory.c: add some docs in here
3768
3769         * gtk/gtkmain.c (gtk_get_default_language): document
3770         (gtk_get_current_event): document
3771         (gtk_get_current_event_state): document
3772         (gtk_get_event_widget): document
3773
3774         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3775
3776         * gtk/gtkcontainer.c: Add some documentation
3777         (gtk_container_add): give a more explanatory warning on adding an
3778         already-parented widget, this is kind of a FAQ and also a common
3779         typo that's easier to debug with a nice warning 
3780
3781         * gtk/gtkcellrenderertoggle.c
3782         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3783         adding this, it's useless
3784         (gtk_cell_renderer_toggle_set_active): remove
3785         (gtk_cell_renderer_toggle_get_radio): add
3786
3787         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3788         the NULL cell renderer, that doesn't make any sense to me. 
3789
3790         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3791         demo code should never use deprecated features.
3792
3793         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3794         code should never use deprecated features.
3795
3796         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3797         gtk_widget_queue_clear_area deprecated
3798
3799         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3800         deprecated
3801
3802         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3803
3804         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3805         a GdkImage deprecated, replaced by new consistently-named
3806         functions       
3807
3808         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3809
3810         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3811
3812         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3813         deprecated
3814
3815         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3816         so it won't appear in docs and confuse people.
3817
3818         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3819
3820         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3821         macros deprecated. (can't mark the type itself deprecated, since
3822         GtkProgressBar is not deprecated and we need the type decl to use
3823         GtkProgressBar)
3824
3825         * gtk/gtkpixmap.h: Mark deprecated
3826
3827         * gtk/gtkoldeditable.h: Mark deprecated
3828
3829         * gtk/gtklist.h: Mark deprecated
3830
3831         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3832         for anything anymore.
3833
3834         * gtk/gtkctree.h: Mark deprecated
3835
3836         * gtk/gtkclist.h: Mark deprecated
3837
3838         * gtk/gtkpreview.h: Mark deprecated
3839
3840         * gtk/gtkpacker.h: Mark deprecated
3841
3842         * gtk/gtktipsquery.h: Mark deprecated
3843
3844         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3845
3846         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3847
3848         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3849
3850         * gtk/gtkruler.h: Add comment that it will move out of GTK
3851
3852         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3853
3854         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3855
3856 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3857
3858         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3859         gdk_colormap_sync private since it was never exported
3860         in a header file.
3861
3862         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3863         colormap->colors[] for StaticGray, StaticColor colormaps.
3864
3865         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3866         was being used as if it was image->bits_per_pixel.
3867
3868         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3869         for the image in the GdkImage structure since it isn't
3870         reconstructable, and we need it to handle packed types
3871
3872         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3873         the assumption that on Win32 image->bits_per_pixel == image->depth,
3874         always.
3875
3876         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3877
3878         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3879         warning message if no converter can be found. 
3880
3881 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3882
3883         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3884         chars to isupper() / tolower(). (#567)
3885
3886         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3887         to clear up 64-bit warnings. (#567)
3888
3889 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3890
3891         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3892         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3893
3894         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3895         since some people set $(libdir) separately. (#1290, David Kaelbling)
3896
3897 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3898
3899         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3900         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3901         MAXPATHLEN, but the code here depends on a fixed value.)
3902         (#4524)
3903
3904 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3905
3906         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3907         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3908
3909 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3910
3911         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3912         viewable there is no way that moving the node will cause the 
3913         focus row to become not viewable, so omit check on the visibility
3914         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3915
3916 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3917
3918         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3919         selection before inserting new text.
3920
3921 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3922
3923         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3924         Make the sensitivity of the reparented child track that of
3925         the original parent menu item. (#34218, David Hodson)
3926
3927         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3928         the case where the current item is destroyed properly.
3929
3930         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3931         some edge cases with child-less menuitems.
3932         
3933 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3934
3935         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3936         key pop down window. (#12074, Jon K Hellan)
3937
3938 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3939
3940         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3941         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3942         The solution here isn't perfect - you get an extraneous
3943         emission of "toggle", which could conceivably confuse an app,
3944         but better than the current situation. LXR search seems to
3945         indicate that no apps in GNOME CVS connect to "toggle".
3946
3947 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3948
3949         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3950         gtk_public_h_sources to directly here to avoid warning when
3951         building srcdir != builddir. (#9656)
3952
3953 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3954
3955         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3956         handlers in gtkrange.c return the proper values (TRUE == handled)
3957         (#10316).
3958
3959         This is just the tip of the iceberg, but gtkrange.c is the
3960         most common place where the propagation is problematical,
3961         and also a place where it is almost certainly safe to change
3962         this in the stable branch.
3963
3964         (You don't want right click popups on a range control or anything...)
3965
3966 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3967
3968         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3969         area on focus out, even if a background pixmap isn't set.
3970         (#13941)
3971         
3972 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3973
3974         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3975         to deal with setting the shape properly when scrolling arrows are
3976         turned on, but not visible because there is sufficient space.
3977         (#13432)
3978
3979 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3980
3981         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3982         items with submenus, destroy the item along with the submenu.
3983         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3984         properly.
3985
3986         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3987         later.
3988
3989 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3990
3991         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3992         the focus widget sometimes wasn't drawn with the default if there
3993         was no default widget.
3994
3995         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3996         unreference pixmaps. 
3997
3998         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3999         for some extra safety.
4000
4001 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
4002
4003         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
4004         the text of a cell to the old pointer value better, by
4005         copying the new text before freeing the old text. Some code
4006         cleanup. (#8079, Karl Nelson)
4007
4008 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
4009
4010         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
4011         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
4012
4013 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
4014
4015         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
4016         item from a menu, check to see if it matches 
4017         menu->old_active_menu_item, and if so, unref and clear
4018         old_active_menu_item (Patch from Pavel Cisler)
4019
4020         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
4021         menu_shell->active_menu_item, if it is the child being
4022         removed. (Patch based on that of Gene Ragan, #50337)
4023
4024 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
4025
4026         * gdk/linux-fb/gdkselection-fb.c: 
4027         * gdk/linux-fb/gdkcolor-fb.c: 
4028         * gdk/linux-fb/gdkdrawable-fb2.c: 
4029         * gdk/linux-fb/gdkfont-fb.c: 
4030         * gdk/linux-fb/gdkim-fb.c: 
4031         * gdk/linux-fb/gdkinput.c: 
4032         * gdk/linux-fb/gdkkeyboard-fb.c: 
4033         * gdk/linux-fb/gdkmain-fb.c: 
4034         * gdk/linux-fb/gdkrender-fb.c: 
4035         A bunch of whitespace cleanup.
4036         
4037 2001-01-30  Havoc Pennington  <hp@pobox.com>
4038
4039         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
4040         #ifdef GTK_ENABLE_BROKEN.
4041
4042         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
4043         GTK_ENABLE_BROKEN just before including the broken headers.
4044         
4045         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
4046         deprecated types registered.
4047
4048         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
4049         we have to test the broken stuff.
4050
4051         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
4052         
4053 2001-01-30  Havoc Pennington  <hp@redhat.com>
4054
4055         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
4056         here where prev pointer was set to the wrong thing
4057
4058         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
4059         (gtk_tree_path_is_descendant): new function
4060
4061         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
4062         cached length
4063         (gtk_list_store_get_iter): don't modify iter if we can't get the
4064         path.
4065
4066         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
4067         
4068         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
4069         GtkTreeDragDest
4070
4071         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
4072         was causing segfault
4073
4074         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
4075         pointer to NULL
4076
4077         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
4078
4079         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
4080         on returning FALSE
4081         (gtk_list_store_iter_children): ditto
4082         (gtk_list_store_iter_nth_child): ditto
4083         (gtk_list_store_iter_nth_child): ditto
4084         (gtk_list_store_iter_parent): ditto
4085
4086         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
4087         on iter->user_data != NULL instead of silently accepting it.
4088         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
4089         we are returning TRUE.
4090         (gtk_tree_store_iter_children): ditto
4091         (gtk_tree_store_iter_nth_child): ditto
4092         (gtk_tree_store_iter_parent): ditto
4093         (gtk_tree_store_insert): remove handling of parent->user_data ==
4094         NULL, replace with parent == NULL       
4095
4096         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
4097         and a comment explaining things
4098
4099         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
4100         interface support to GtkTreeStore.
4101
4102         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
4103         FALSE if no prev, fix
4104
4105         * gtk/gtktreeview.c (set_source_row): use a row reference
4106         (set_dest_row): use a row reference
4107
4108 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
4109
4110         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
4111         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
4112         (gtk_tree_selection_select_iter): The same as above.
4113
4114 2001-01-26  Havoc Pennington  <hp@redhat.com>
4115
4116         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
4117         which holds a handle to a specific row (particular set of values
4118         in the model, i.e. pointer-identity row).
4119
4120         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
4121         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
4122         Still need to use it for the src/dest row saved on the drag context.
4123
4124 2001-01-26  Havoc Pennington  <hp@redhat.com>
4125
4126         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
4127
4128         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
4129         not offset by TREE_VIEW_HEADER_HEIGHT
4130         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
4131         TREE_VIEW_HEADER_HEIGHT
4132
4133         * configure.in (included_loaders): for me, --with-included-loaders
4134         generates the error "the specified loader yes does not exist",
4135         i.e. the arg defaults to "yes", so change test for value ""
4136         to test for value "yes", and include all loaders in that case.
4137
4138         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4139
4140         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4141         handle TREE_VIEW_VERTICAL_SEPARATOR
4142         (gtk_tree_view_bin_expose): fix to consider the row offset as
4143         pointing halfway into vertical separator.       
4144         (gtk_tree_view_draw_node_focus_rect): ditto
4145
4146         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4147         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4148         (TRUE) to be called.
4149
4150         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4151         debug mode where the invalid region is colored in on invalidate,
4152         so you can see the flicker and know whether your redraw code is 
4153         doing a good job.
4154
4155         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4156         tree window coordinates (clip rect is in tree window coords)
4157
4158         * gtk/Makefile.am: add gtktreednd.[hc]
4159
4160         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4161
4162         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4163         drag-and-drop data operations on a model (so we can set up tree
4164         drag-and-drop automatically)
4165
4166         * gtk/testgtk.c: Add a window to change sensitivity in the
4167         GtkLabel test; add a way to change the entry frame in GtkEntry
4168         test
4169
4170         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4171         (gtk_entry_get_has_frame): new functions to remove the frame
4172         around an entry
4173         (gtk_entry_size_request): shrink requisition if no frame
4174         (gtk_entry_draw_focus): don't draw frame if no frame
4175
4176         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4177         checks inside a cell renderer
4178         (gtk_default_draw_option): ditto for options
4179
4180         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4181         children from the alignment, not the button
4182         (gtk_tree_view_column_init): ref/sink the column, to emulate
4183         GObject refcounting.
4184
4185         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4186         
4187         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4188         Use theme functions to draw the toggles 
4189
4190         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4191
4192         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4193         GdkPangoAttrEmbossed to use in rendering insensitive text
4194
4195         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4196
4197         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4198         using new GDK features
4199         
4200 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4201
4202         * gtk/gtkimage.c:
4203         Splitted gtk_image_clear into gtk_image_clear() and
4204         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4205         to avoid leaks.
4206
4207         * gtk/gtklabel.c (set_markup):
4208         Don't leak text.
4209
4210         * gtk/gtktextlayout.c:
4211         Always free display->shaped_objects.
4212
4213         * gtk/testgtk.c (create_clist):
4214         Don't leak custom style.
4215
4216 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4217
4218         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4219         Don't leak image. Simplify using gdk_colormap_query_color().
4220         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4221
4222         * linux-fb/gdkcolor-fb.c:
4223         Implemented gdk_colormap_query_color.
4224
4225 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4226
4227         * linux-fb/gdkcursor-fb.c:
4228         Don't leak built-in cursors.
4229
4230         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4231         Don't leak tmp_points.
4232
4233         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4234         Don't modify desc. Don't leak font if the PangoFont
4235         isn't found.
4236         
4237         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4238         Free dash_list.
4239
4240         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4241         Don't leak string.
4242         
4243 2001-01-20  Havoc Pennington  <hp@pobox.com>
4244
4245         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4246         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4247         me, matches Pango
4248
4249 2001-01-22  Havoc Pennington  <hp@redhat.com>
4250
4251         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4252
4253         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4254
4255         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4256         Remove, move back to gdk-pixbuf
4257
4258         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4259         to all the word functions
4260
4261         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4262         before doing anything on NULL layout or if we don't have the focus
4263
4264         * gtk/testtext.c (fill_example_buffer): "justification"
4265
4266         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4267         to be called "justification" not "justify"
4268
4269         * demos/gtk-demo/textview.c (create_tags): "justification"
4270         
4271         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4272
4273 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4274
4275         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4276         Don't leak visible_region. Use visible_region instead of region.
4277         
4278         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4279         Don't do extra gdk_drawable_ref(). This is not X.
4280         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4281         gdk_fb_focused_window is ref:ed.
4282         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4283         windows.
4284
4285 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4286
4287         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4288         Don't leak the PangoFontDescriptor.
4289
4290 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4291
4292         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4293         when not realized.
4294         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4295         (gtk_tree_view_realize): add scroll_to support
4296         (gtk_tree_view_finalize): add a finalize method.  Populate.
4297         (gtk_tree_view_insert_column): ref and sink the column.
4298         (gtk_tree_view_append_column): ref and sink the column.
4299         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4300         individual nodes.  Should make the code much more efficient, if
4301         actually used.
4302
4303 2001-01-19  Havoc Pennington  <hp@redhat.com>
4304
4305         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4306         byte_offset variable was being used to mean both "offset into
4307         layout" and "offset into buffer line" which was no longer true
4308         with addition of preedit string; fix
4309
4310 2001-01-19  Havoc Pennington  <hp@redhat.com>
4311
4312         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4313
4314         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4315         function
4316
4317         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4318         implement
4319
4320         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4321         scroll_to_cell, matches TextView scroll functions better
4322         (gtk_tree_view_tree_to_widget_coords): new function
4323         (gtk_tree_view_widget_to_tree_coords): new function
4324         (gtk_tree_view_get_visible_rect): new function
4325         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4326         (gtk_tree_view_draw_node_focus_rect): new function moved from
4327         draw_focus, also, use width of bin_window as width of the focus
4328         rect
4329         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4330         already-expanded rows
4331         (gtk_tree_view_get_cell_rect): new function
4332         (gtk_tree_view_get_path_at_pos): return the click position
4333         relative to the passed-in cell
4334         (gtk_tree_view_set_expander_column): new function
4335
4336         * configure.in: remove gtk-config-2.0 chmod
4337
4338         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4339         and properly handle drags with targets we don't understand
4340         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4341         scrolling anyway
4342         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4343         mark invisible
4344
4345         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4346         function
4347         (gtk_drag_dest_get_target_list): new function
4348         (gtk_drag_dest_set_target_list): new function
4349         
4350         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4351
4352         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4353         related to drag-and-drop
4354
4355 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4356
4357         * gdk/linux-fb/gdkprivate-fb.h:
4358         Define EMULATE_GDKFONT.
4359         Add extra pango_font stuff to GfkFontPrivate.
4360         
4361         * gdk/linux-fb/gdkdrawable-fb2.c:
4362         * gdk/linux-fb/gdkfont-fb.c:
4363         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4364         emulation using PangoFont.
4365
4366 2001-01-17  Havoc Pennington  <hp@pobox.com>
4367
4368         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4369         all the non-deprecated set_foo functions. Added missing object
4370         properties, and added g_object_notify() to setters. 
4371         Wrote docs.
4372         
4373 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4374
4375         * gtk/gtkmain.c
4376         * gtk/gtkrc.c: (Win32) Use the new
4377         g_win32_get_package_installation_(sub)directory() functions.
4378
4379         * config.h.win32.in: New file.
4380         
4381         * config.h.win32: Removed.
4382
4383         * configure.in: Output config.h.win32.
4384
4385         * Makefile.am: Add it to EXTRA_DIST.
4386
4387         * gtk/gtk.def: Update.
4388
4389 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4390
4391         * gtk/gtklabel.c (gtk_label_size_request): Set the
4392         attributes onto the PangoLayout even if they are newly
4393         created from label->pattern.
4394
4395 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4396
4397         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4398
4399         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4400         structures in functions. Fixes bug where gtk_dataset_*
4401         was accidentally still being used in one place, causing
4402         every dest side event to be treated independently.
4403
4404         * gtk/gtkdnd.c: Remove last vestages of handling
4405         ::draw (fixes warning)
4406         
4407         * gtk/gtkentry.[ch]: Add drag and drop support.
4408
4409         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4410         new function gtk_check_drag_threshhold() for checking
4411         to check if (dx,dy) has exceeded the threshhold for starting
4412         a drag and use it everywhere.
4413
4414 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4415
4416         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4417         add -I{includedir}/gtk-2.0.
4418
4419         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4420         gdk/gdk-pixbuf.h: Doc fixups.
4421         
4422         * gtk/gtkobject.h: Remove trailing , from enum
4423
4424 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4425
4426         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4427         Doh! Mixed up x and y.
4428
4429         * gdk/linux-fb/gdkglobals-fb.c:
4430         Removed gdk_fb_pointer_grab_window_events,
4431         added _gdk_fb_pointer_grab_owner_events and
4432         _gdk_fb_keyboard_grab_owner_events.
4433
4434         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4435         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4436         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4437         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4438         Send crossing events after ungrab finished.
4439         (gdk_keyboard_grab): Set ..._owner_events
4440         (type_masks): Move out of function.
4441         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4442         gdk_fb_keyboard_event_window): New functions, return the
4443         window an event should be targeted at. Handles grabs and
4444         event propagation. Can return NULL.
4445         (gdk_event_make): Remove event_mask checking. Now always
4446         returns an event.
4447                 
4448         * gdk/linux-fb/gdkkeyboard-fb.c:
4449         * gdk/linux-fb/gdkproperty-fb.c:
4450         * gdk/linux-fb/gdkselection-fb.c:
4451         Use new event_window/gdk_event_make() behaviour.
4452         
4453         * gdk/linux-fb/gdkmouse-fb.c:
4454         Use new event_window/gdk_event_make() behaviour.
4455         Only send motion events if in the same window.
4456         If grabbed, use cursor from window if sibling of grabbed
4457         window, and cursor from grabbed window otherwise.
4458
4459         * gdk/linux-fb/gdkprivate-fb.h:
4460         Update gdk_fb_window_send_crossing_events, gdk_event_make
4461         and grab varaible declarations. Add gdk_fb_*_event_window().
4462
4463         * gdk/linux-fb/gdkwindow-fb.c:
4464         Use new event_window/gdk_event_make() behaviour.
4465         Keep correct track of focus window.
4466         (gdk_window_set_events): Set all specific button motion masks
4467         if GDK_BUTTON_MOTION_MASK set.
4468
4469         * gtk/gtkdnd.c (gtk_drag_update):
4470         Free info->last_event if gdk_drag_motion returned FALSE.
4471
4472 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4473
4474         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4475         Eliminate redraws when input-only windows are shown or
4476         hidden. Thanks to jpe@archaeopteryx.com.
4477
4478 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4479
4480         * docs/faq/gtk-faq.sgml: FAQ update:
4481           - Update to bugzilla
4482           - Add GTK+ and security/SUID/SGID
4483           - Add DnD question
4484
4485 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4486
4487         * gdk/linux-fb/gdkdnd-fb.c:
4488         Some cleanups.
4489         
4490 2001-01-15  Havoc Pennington  <hp@pobox.com>
4491
4492         * tests/testtreeview.c: add test stuff for CellRendererToggle
4493
4494         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4495         accessor
4496
4497         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4498         only toggle on button press (would do release like GtkButton, but
4499         we'd need implicit grab code for treeview cells)
4500
4501 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4502
4503         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4504
4505         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4506         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4507
4508         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4509         to g_{locale,filename}_{to,from}_utf8 to match current API.
4510
4511         * gtk/makefile.msc.in (gtk_OBJECTS)
4512         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4513
4514         * gtk/gtk.def: Update.
4515
4516 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4517
4518         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4519         implementaion that more closely mimics the events that an X server
4520         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4521         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4522         with nested preview widgets, for instance, more responsive when
4523         you move the mouse quickly into them.
4524         (find_window_for_pointer_event): Make it actually compile.
4525         (gdk_event_translate): Set send_event to the value of
4526         InSendMessage (). This doesn't really mean the same as X11's
4527         send_event flag, but is close enough, says jpe@archaeopteryx.com
4528
4529 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4530
4531         * gdk/linux-fb/gdkdnd-fb.c:
4532         Implemented drag and drop.
4533         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4534         when it tries to free and then copy the same event (info->last_event).
4535         I am not sure about why this happens, but will continue looking.
4536
4537 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4538
4539         * gdk/linux-fb/gdkwindow-fb.c:
4540         Use gdk_window_invalidate_rect instead of
4541         gdk_window_invalidate_rect_clear to minimise flashing.
4542         When hiding windows you need to clear the root window though.
4543
4544 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4545
4546         * gdk/linux-fb/gdkdrawable-fb2.c:
4547         For optization, add an full_shapes argument to gdk_fb_clip_region.
4548         If this is false, only the cliprects of the shapes are used.
4549
4550         * gdk/linux-fb/gdkprivate-fb.h:
4551         Export gdk_fb_window_peek_shape.
4552         Add full_shapes to gdk_fb_clip_region.
4553
4554         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4555         When moving a window, don't clear everything under the it, just the
4556         root window. Makes stuff faster and flash less.
4557         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4558         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4559         offset of the shape.
4560         
4561
4562 2001-01-12  Havoc Pennington  <hp@redhat.com>
4563
4564         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4565         current invalid region, fixes redraw bug while scrolling the 
4566         text widget
4567
4568         * gtk/gtktextview.c, gtk/gtktextview.h:
4569         Rearrange the scrolling/validation/etc. code in a major way, 
4570         so it seems to make sense to me. Probably isn't genuinely that
4571         much better, but...
4572
4573         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4574         notifies
4575
4576         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4577
4578 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4579
4580         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4581         Hide mouse pointer while rotation. Show it afterwards.
4582
4583 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4584
4585         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4586         windows in consideration when generating clip region.
4587
4588         * gdk/linux-fb/gdkfb.h:
4589         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4590
4591         * gdk/linux-fb/gdkprivate-fb.h:
4592         Add shape to GdkWindowFBDatat.
4593         exported gdk_fb_window_get_abs_shape().
4594         removed gdk_fb_draw_lines declaration.
4595
4596         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4597         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4598         send focus changes when there is a grabbed window.
4599         (gdk_window_get_pointer): Handle shaped windows.
4600         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4601         (gdk_fb_window_peek_shape): Returns the shape for a window,
4602         handles GDK_FB_USE_CHILD_SHAPE.
4603         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4604         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4605         (gdk_window_shape_combine_mask): Implement.
4606
4607         * gtk/gtkwindow-decorate.c:
4608         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4609         setting the shape of a window makes the window transparent.
4610
4611 2001-01-11  Havoc Pennington  <hp@redhat.com>
4612
4613         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4614
4615 2001-01-10  Havoc Pennington  <hp@redhat.com>
4616
4617         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4618         add this function, bug 40251
4619
4620         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4621         of type macro   
4622
4623 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4624
4625         * acconfig.h:
4626         Added ENABLE_SHADOW_FB
4627
4628         * configure.in:
4629         Added --disable-shadowfb
4630
4631         * gdk/linux-fb/gdkcursor-fb.c:
4632         Update shadowfb when updating cursor
4633
4634         * gdk/linux-fb/gdkdrawable-fb2.c:
4635         Added wrappers for shadowfb that calls  the normal drawable
4636         methods, but calls gdk_shadow_fb_update(bounding box) when
4637         GdkWindows are drawed to.
4638         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4639         which also returns the bounding box.
4640
4641         * gdk/linux-fb/gdkfb.h:
4642         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4643
4644         * gdk/linux-fb/gdkgeometry-fb.c:
4645         Update shadowfb when scrolling window.
4646
4647         * gdk/linux-fb/gdkglobals-fb.c:
4648         Add _gdk_fb_screen_angle.
4649         
4650         * gdk/linux-fb/gdkkeyboard-fb.c:
4651         Test code for screen rotation. Shift-F2 in the xlate driver
4652         rotates the screen.
4653
4654         * gdk/linux-fb/gdkmain-fb.c:
4655         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4656
4657         * gdk/linux-fb/gdkmouse-fb.c:
4658         Use fb_width/height instead of modeinfo.xres/yres.
4659
4660         * gdk/linux-fb/gdkprivate-fb.h:
4661         Added fb_men, fb_width, fb_height & fb_stride. When using
4662         shadow fb these can differ from the framebuffer stuff.
4663         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4664         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4665         _gdk_fb_screen_angle. Removed CM, RP.
4666
4667         * gdk/linux-fb/gdkrender-fb.c:
4668         Added code for shadowfb handling and screen rotation using
4669         shadowfb.
4670
4671         * gdk/linux-fb/gdkwindow-fb.c:
4672         Use fb_mem, fb_stride, fb_width, fb_height.
4673         Added recompute_rowstride to reset the rowstride of all windows.
4674         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4675         window abs positions and window rowstrides. Usefull when the
4676         rotation has changed.
4677
4678 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4679
4680         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4681
4682 2001-01-10  Havoc Pennington  <hp@redhat.com>
4683
4684         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4685         where sibling == iter
4686         (gtk_tree_store_insert_after): handle sibling == iter
4687         (gtk_tree_store_prepend): remove stamp checks
4688         (gtk_tree_store_insert_before): ditto
4689         (gtk_tree_store_append): ditto
4690         (gtk_tree_store_get_path): ditto
4691         (gtk_tree_store_get_value): ditto
4692         (gtk_tree_store_iter_has_child): ditto
4693         (gtk_tree_store_iter_n_children): ditto
4694         (gtk_tree_store_iter_nth_child): ditto
4695         (gtk_tree_store_insert_after): ditto
4696         (gtk_tree_store_is_ancestor): ditto
4697         (gtk_tree_store_iter_depth): ditto
4698         (gtk_tree_store_insert_before): assert that sibling's parent is
4699         the same as the passed-in parent
4700         (gtk_tree_store_insert_after): assert that sibling's parent is
4701         the same as the passed-in parent
4702
4703         
4704         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4705         function to get the first iterator in a model
4706         
4707         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4708         conventionally the "root" in this sense is just NULL afaict.
4709
4710         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4711         where sibling == iter
4712         (gtk_list_store_insert_after): handle case where sibling == iter
4713
4714         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4715         automated tests for ListStore, TreeStore
4716
4717         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4718         (gtk_list_store_insert): update tail pointer, and fix it to work
4719         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4720         (gtk_list_store_append): use tail to be faster
4721         (gtk_list_store_prepend): fix it, update tail pointer
4722         (gtk_list_store_insert_after): fix it, update tail pointer
4723
4724         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4725         the list
4726
4727 2001-01-09  Havoc Pennington  <hp@redhat.com>
4728
4729         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4730         is NULL due to a pending resize
4731
4732         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4733         column width to values less than 1
4734
4735         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4736         width to be between min/max width, and still set the width 
4737         even if autosize is turned on, so the tree view can use this 
4738         function in order to autosize.
4739         (gtk_tree_view_column_init): set initial width to 1 not 0
4740
4741         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4742         setter function to modify column width, so we get notification
4743         (gtk_tree_view_insert_iter_height): ditto
4744         (gtk_tree_view_calc_size): ditto
4745         (gtk_tree_view_check_dirty): ditto
4746
4747         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4748         properties to change all the interesting attributes of the tree
4749         view column.
4750         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4751         (gtk_tree_view_column_get_clickable): add
4752         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4753         attributes; assume a cell renderer with equivalent object
4754         properties has been swapped in. Do g_object_notify().
4755         (gtk_tree_view_column_set_visible): g_object_notify
4756         (gtk_tree_view_column_get_sizing): rename from get_col_type
4757         (gtk_tree_view_column_set_sizing): g_object_notify
4758         (gtk_tree_view_column_set_width): add g_object_notify
4759         (gtk_tree_view_column_set_min_width): ditto
4760         (gtk_tree_view_column_set_max_width): ditto
4761         (gtk_tree_view_column_set_title): ditto
4762         (gtk_tree_view_column_set_clickable): ditto
4763         (gtk_tree_view_column_set_widget): ditto
4764         (gtk_tree_view_column_set_justification): ditto
4765
4766 2001-01-09  Havoc Pennington  <hp@redhat.com>
4767
4768         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4769         there are no rows in the model
4770
4771         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4772         NULL, then return the start of the list
4773
4774         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4775         if we can't get any rows from an empty model 
4776
4777         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4778         extraneous * after function pointer typedef usage
4779
4780         * Makefile.am: don't specify full path to cp and rm
4781
4782         * gtk/gtkcellrenderertextpixbuf.c
4783         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4784         NULL before dereferencing, fixes a segfault that happened from
4785         time to time
4786
4787         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4788         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4789         and reindent the function
4790         (gtk_cell_renderer_pixbuf_get_size): indentation
4791
4792         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4793         we quit it
4794         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4795         (gtk_dialog_set_default_response): New function, to set default
4796         button
4797         (gtk_dialog_set_response_sensitive): New function, to set 
4798         sensitivity of buttons
4799
4800         * gtk/gtkcellrendererpixbuf.c
4801         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4802         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4803
4804         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4805         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4806         also boxed types.
4807         (_gtk_tree_data_list_value_to_node): ditto
4808
4809         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4810         --gtk-debug=tree
4811
4812         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4813
4814         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4815
4816 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4817
4818         * gdk/win32/gdkevents-win32.c: Implement better mouse
4819         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4820         (find_window_for_pointer_event): New function.
4821         (gdk_event_translate): Use it when handling mouse events.
4822
4823 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4824
4825         * configure.in:
4826         Added --with-included-loaders option
4827
4828         * gdk-pixbuf/Makefile.am:
4829         * gdk-pixbuf/gdk-pixbuf-io.c:
4830         Add support for including selected gdk-pixbuf loaders only.
4831
4832         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4833         gtk_window_set_has_frame):
4834         Added inline documentation.
4835
4836         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4837         * docs/reference/gdk/tmpl/windows.sgml:
4838         Added inline documentation.
4839
4840 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4841
4842         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4843         realizing buttons that have already been realized.
4844
4845 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4846
4847         * tests/testtreeview.c (main): Show menu items before adding to
4848         option menu.
4849
4850         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4851         around if we kill them.
4852
4853         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4854         Return if we pass in a NULL model.
4855
4856 2001-01-08  Havoc Pennington  <hp@redhat.com>
4857
4858         * tests/testtreeview.c: hack on this some
4859
4860         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4861         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4862         list
4863         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4864
4865         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4866         functions
4867
4868 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4869
4870         * gtk/gtkwindow-decorate.[hc]:
4871         * gtk/Makefile.am:
4872         New files. Contains an implementation of a minimal WM for
4873         linux-fb.
4874
4875         * gtk/gtkwindow.h:
4876         Add the possibility for GtkWindows to specify a frame. This
4877         is used for the window decoration code, but could concievably
4878         be used for X programs too (xmms style windows).
4879         GtkWindow->frame is the toplevel window if the window is framed.
4880         The signal frame_event gets all events that are targeted to
4881         GtkWindow->frame.
4882         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4883         
4884         * gtk/gtkwindow.c:
4885         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4886         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4887
4888 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4889
4890         * docs/README.linux-fb:
4891         Correct filename ~/.pangoft2_aliases
4892
4893         * gdk/gdkwindow.h:
4894         Added new function gdk_window_get_decorations.
4895
4896         * gdk/linux-fb/gdkfb.h:
4897         Removed _gdk_window_get_decorations declaration.
4898         Renamed _gdk_window_set_child_handler to
4899         gdk_fb_window_set_child_handler.
4900
4901         * gdk/linux-fb/gdkwindow-fb.c:
4902         Renamed _gdk_window_set_child_handler to
4903         gdk_fb_window_set_child_handler.
4904
4905         * gdk/x11/gdkwindow-x11.c:
4906         New function gdk_window_get_mwm_hints().
4907         Implemented gdk_window_get_decorations.
4908
4909         * docs/reference/gdk/tmpl/windows.sgml:
4910         * docs/reference/gdk/gdk-sections.txt:
4911         Added gdk_window_get_decorations docs.
4912         
4913 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4914
4915         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4916         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4917         gdk_fb_window_send_crossing_events):
4918         Possibly send focus events when the mouse moves from one
4919         window to another.
4920
4921 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4922
4923         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4924         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4925         to match current API.
4926
4927         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4928         environment variable is set, don't call g_error when on a
4929         palettized (PseudoColor) display. Some people want to use GTK+ 
4930         in 256-colour mode even though works only partially.
4931
4932         * gdk/gdk.def
4933         * gtk/gtk.def
4934         * gtk/makefile.mingw.in: Update.
4935
4936 2001-01-05  Havoc Pennington  <hp@redhat.com>
4937
4938         * tests/testtreeview.c: hack on this a bit
4939
4940         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4941         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4942
4943         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4944         was spelled incorrectly
4945         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4946
4947         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4948         from gtk_tree_view_set_headers_active   
4949
4950         * gtk/gtktexttag.c:
4951         (gtk_text_tag_get_property): handle PROP_DIRECTION
4952         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4953         properties, bug 40235
4954
4955         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4956         forward_to_line_end
4957
4958 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4959
4960         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4961         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4962         for unicode,locale,filename conversion functions.
4963
4964 2001-01-05  Havoc Pennington  <hp@redhat.com>
4965
4966         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4967         broken if called on the first position in the buffer.
4968
4969         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4970         forward_to_delimiters to be called only if we aren't already at
4971         the delimiters.
4972
4973 2001-01-05  Havoc Pennington  <hp@redhat.com>
4974
4975         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4976
4977 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4978
4979         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4980         colormap in here. Sync from X port.
4981         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4982         Sync from X port.
4983         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4984         This happens now and then, and i don't think it is a bug.
4985         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4986         != endpoint.
4987         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4988         GDK_LINE_SOLID.
4989
4990         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4991         some of the fields filled in at least.
4992
4993         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4994         miLineArcD is no more, remove it from the function definition.
4995
4996 2001-01-04  Havoc Pennington  <hp@redhat.com>
4997
4998         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4999         this
5000
5001         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
5002         user_data instead of tree_node
5003
5004         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
5005         TREE_VIEW_COLUMN_SIZE
5006
5007         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
5008         "size" field to "width" finishes bug 40061
5009
5010         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
5011         for bitfields, bug 40268
5012
5013 2001-01-04  Havoc Pennington  <hp@redhat.com>
5014
5015         Rename some stuff:
5016         
5017         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
5018
5019         s/GtkModelSimple/GtkTreeModelSimple/g;
5020         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
5021         s/gtk_model_simple/gtk_tree_model_simple/g;
5022         s/gtkmodelsimple/gtktreemodelsimple/g;
5023
5024         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
5025
5026         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
5027         s/column_set_col_type/column_set_sizing/g;
5028
5029         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
5030         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
5031
5032         s/GtkCellRendererType/GtkCellRendererState/g;
5033         
5034         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
5035         (gtk_cell_renderer_toggle_class_init): change "state" property to
5036         "active", to match GtkToggleButton
5037         (gtk_cell_renderer_toggle_get_active): new function, bug
5038         40269
5039         (gtk_cell_renderer_toggle_set_active): new function
5040         (gtk_cell_renderer_toggle_set_property): route changes to toggle
5041         state through gtk_cell_renderer_set_active
5042
5043 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
5044
5045         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
5046         temporarily until they work again.  Brought up to date with
5047         changes in the model.
5048         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
5049         model.
5050
5051 2001-01-04  Havoc Pennington  <hp@redhat.com>
5052
5053         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
5054         equal to the line length, then position iterator before paragraph 
5055         separators. Fixes crash reported by Mikael Hermansson when
5056         pressing left arrow from the start of a line.   
5057
5058         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
5059         about byte indexes off the end
5060         (iter_set_from_char_offset): add g_error about char offsets
5061         off the end
5062
5063 2001-01-03  Havoc Pennington  <hp@redhat.com>
5064
5065         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
5066
5067         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
5068         of private functions; remove inclusion of private headers.
5069
5070         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
5071         function, so we don't need private functions in gtktextdisplay.c
5072
5073         * gtk/gtktextiterprivate.h: underscore-ification
5074
5075         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
5076         to instead say "only useful to implement widgets"
5077
5078         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
5079         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
5080         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
5081
5082         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
5083         This function was completely broken
5084
5085         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
5086
5087         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
5088
5089         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
5090
5091         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
5092
5093         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
5094
5095         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
5096
5097         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
5098         gtk_paint_layout
5099
5100         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
5101         gtk_paint_layout
5102
5103         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
5104         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
5105         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
5106         which were not implemented.     
5107
5108         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
5109         insert_pixbuf signal. Rename delete_text to delete_range since it
5110         also deletes pixbufs and child anchors. This almost closes bug
5111         40245 (still need to deal with child anchors)
5112
5113         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
5114         insert_pixbuf, change signal names as appropriate, change types of
5115         signals taking marks/tags to have the specific type, not just
5116         G_TYPE_OBJECT
5117         
5118         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
5119         closes bug 40051
5120
5121         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
5122         unnecessary remove_contents() call
5123         (gtk_option_menu_class_init): add a "changed" signal, closes
5124         bug 40039
5125         (gtk_option_menu_update_contents): emit "changed" if the 
5126         active menu item changes
5127
5128         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
5129         cast to GtkObject, reported by Jonas Borgstrom
5130         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
5131         we can't do stuff with side effects in finalize. Instead, spew a
5132         warning if the loader isn't closed.
5133
5134         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5135         colormap in here, non-X ports probably need to sync to this change
5136
5137         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5138         assertion that colormap != NULL, you can set the colormap to NULL
5139         if you like.
5140         
5141         * Makefile.am: remove gtk-config-2.0
5142
5143         * configure.in: Use pkg-config to locate GLib. Remove
5144         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5145         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5146         Use pkg-config to locate Pango. Output correct Pango libs to
5147         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5148
5149         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5150         files
5151         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5152         X11 pc files
5153
5154         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5155         unref from here
5156
5157 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5158
5159         * configure.in:
5160         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5161
5162 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5163
5164         * gtk/gtktextlayout.c
5165         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5166         variable when moving back onto a single line.
5167
5168 2001-01-01  Havoc Pennington  <hp@redhat.com>
5169
5170         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5171
5172         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5173
5174         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5175         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5176
5177 2001-01-01  Havoc Pennington  <hp@redhat.com>
5178
5179         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5180
5181         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5182         GtkTextAttributes
5183
5184         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5185         #40246
5186         (gtk_text_attributes_copy_values): rename from 
5187         gtk_text_attributes_copy
5188         (gtk_text_attributes_copy): a more standard GTK copy function, 
5189         which returns a new object
5190
5191 2001-01-01  Havoc Pennington  <hp@redhat.com>
5192
5193         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5194         
5195         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5196         don't fill in tree_view->priv->selection, kind of an unexpected
5197         side effect
5198
5199         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5200         gtkintl.h
5201         
5202         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5203         gtkintl.h
5204         (gtk_cell_renderer_get_property): remove calls to g_value_init
5205
5206         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5207         gtkintl.h
5208
5209         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5210         and include gtkintl.h
5211         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5212         property names
5213
5214         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5215         GtkTreeSelection
5216         (_gtk_tree_selection_new_from_with_view): rename, return
5217         GtkTreeSelection
5218         (_gtk_tree_selection_set_tree_view): rename with uscore
5219         (gtk_tree_selection_get_selected): fill in the "model" out param
5220         first, so it gets filled in even if we return at the top of the 
5221         function
5222         (gtk_tree_selection_real_select_all): add a comment and an else{}
5223         to clarify this a bit
5224         (gtk_tree_selection_real_unselect_all): add the same else{}
5225
5226         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5227         set_tree_view to have underscore prefixes, move them to the
5228         private header, fix return type of new_with_tree_view
5229         (struct _GtkTreeSelection): mark struct
5230         fields private  
5231
5232         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5233         GtkTreeModelFlags, not a guint
5234         (gtk_tree_path_prev): return gboolean not gint
5235         (gtk_tree_path_up): return gboolean not gint
5236
5237         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5238         return GtkTreeModelFlags, not a guint
5239
5240         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5241         that child model is non-null before unrefing it
5242         (g_value_int_compare_func): make this a qsort compare func, not 
5243         a boolean predicate
5244
5245         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5246         (add -umn to the end), and mark it unimplemented
5247         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5248         I don't see what it's for - doesn't the model always sort itself?
5249         (gtk_tree_model_sort_set_compare): this had the wrong signature
5250
5251         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5252         Fix the docs to say that it destructively replaces existing
5253         attributes (previously said that it added attributes).
5254         (gtk_tree_view_column_set_visible): canonicalize bool before
5255         equality testing. Also, check for realization before
5256         hiding/showing the tree_column->window; if this window could exist
5257         before realization, then it's busted and needs fixing, we can't 
5258         create GDK resources pre-realization. Also, remove
5259         superfluous queue_resize(), since set_size() does that for us.
5260         (gtk_tree_view_column_set_col_type): check realization before 
5261         using tree_column->window
5262
5263         * gtk/gtktreedatalist.c: fix filename in copyright notice
5264
5265 2000-12-31  Havoc Pennington  <hp@pobox.com>
5266
5267         * gtk/gtktextview.c: Rearrange all the
5268         scroll-while-dragging-or-selecting code to be different, not
5269         necessarily better. ;-)
5270         (gtk_text_view_scroll_to_mark): Change this
5271         function to take within_margin as a fraction instead of a pixel
5272         value, and to take alignment arguments (indicating where to align 
5273         the mark inside the visible area)
5274         
5275         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5276         to GtkObject
5277
5278         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5279         behavior so that offsets past the end of the line are not 
5280         allowed, and an offset equal to the line length moves the iterator
5281         to the next line
5282         (gtk_text_iter_set_line_index): make parallel change
5283         (gtk_text_iter_get_bytes_in_line): add this function
5284         
5285         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5286         of byte indexes off the end of the line; byte index at the end of
5287         the line now returns FALSE and doesn't fill in the requested
5288         values, byte index past the end of the line is an error.  Also,
5289         don't allow -1 offset anymore, since its meaning is unclear.
5290
5291         This change exposes some bug in visual cursor motion, where we
5292         end up with a huge invalid byte index; needs fixing. Symptom of 
5293         bug is a crash when you hit up arrow.
5294         
5295         (_gtk_text_line_char_locate): match the change to byte_locate
5296
5297         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5298         from start of line properly. fixes bug reported by Mikael
5299         Hermansson where backspace would delete all text before the
5300         cursor.
5301
5302 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5303
5304         * gdk/win32/gdkwindow-win32.c
5305         (gdk_window_impl_win32_get_visible_region): New function, as in
5306         the X11 backend.
5307         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5308         instead of duplicating the same code here.
5309
5310         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5311         GDK_COLORMAP macro.
5312
5313         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5314         destroy function.
5315         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5316         access that.
5317
5318         * gtk/gtk.def: Update.
5319
5320         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5321
5322 2000-12-30  Havoc Pennington  <hp@pobox.com>
5323
5324         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5325         colormap on input only windows, to avoid special cases all over
5326         the code for these windows.
5327
5328 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5329
5330         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5331         we are on a palettized display ("PseudoColor" in X11), as the code
5332         for that doesn't work anyway, and never has.
5333
5334 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5335
5336         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5337         Don't use isprint() for chars > 255.
5338
5339 2000-12-21  Havoc Pennington  <hp@redhat.com>
5340
5341         * tests/testtreeview.c: more work
5342
5343 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5344
5345         * docs/README.linux-fb:
5346         Update the docs to the new pangoft2 way.
5347
5348 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5349
5350         * configure.in:
5351         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5352         pango version.
5353         Remove modules/linux-fb/Makefile.
5354
5355         * gdk/linux-fb/gdkdrawable-fb2.c:
5356         Render glyphs using freetype.
5357
5358         * gdk/linux-fb/gdkfb.h:
5359         Add new fb-specific functions needed for managing windows.
5360
5361         * gdk/linux-fb/gdkmain-fb.c:
5362         Remove gdk_font_init/fini() calls.
5363
5364         * gdk/linux-fb/gdkpango-fb.c:
5365         Remove old implementation. Use pangoft2 instead.
5366
5367         * gdk/linux-fb/gdkprivate-fb.h:
5368         Remove PangoFBFont and related stuff.
5369
5370         * gdk/linux-fb/gdkwindow-fb.c:
5371         Implement drawable->get_visible_region.
5372         Implement support for _gdk_window_set_child_handler () and
5373         _gdk_window_get_decorations().
5374
5375         * modules/Makefile.am:
5376         Remove linux-fb subdir.
5377
5378         * modules/linux-fb/*:
5379         Removed all.
5380         
5381 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5382
5383         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5384         calls, as they are no longer needed.
5385
5386         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5387         
5388         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5389         figure out how to emit a signal on an interface.
5390
5391 2000-12-20  Havoc Pennington  <hp@redhat.com>
5392
5393         * tests: new directory to contain tests, gtk/test* should move
5394         here sometime (with appropriate on-cvs-server hackery)
5395
5396         * tests/testtreeview.c, tests/Makefile.am: a test
5397         
5398         * configure.in (AC_OUTPUT): add tests/Makefile
5399
5400         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5401         and "invisible_set" which were missing
5402
5403         * gtk/gtkrbtree.h: some cheesy indentation fix
5404         
5405 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5406
5407         * gtk/gtkinvisible.c (gtk_invisible_realize):
5408         Attach the style to the window so that the style it is not
5409         leaked when unrealizing the window.
5410
5411 2000-12-18  Havoc Pennington  <hp@redhat.com>
5412
5413         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5414         begin/end user action where appropriate
5415         (gtk_text_view_commit_handler): add begin/end user action
5416
5417         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5418         bracket interactive operations with begin/end user action pair.
5419         
5420         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5421         "interactive" arg from insert_text and delete_text signals.
5422         Add begin_user_action, end_user_action signals
5423         (gtk_text_buffer_begin_user_action): 
5424         (gtk_text_buffer_end_user_action): New functions to delimit 
5425         a user-visible action
5426
5427         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5428         signals.
5429         
5430 2000-12-18  Havoc Pennington  <hp@redhat.com>
5431
5432         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5433         was pretty non-working.
5434
5435         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5436         by passing the length to g_utf8_validate().
5437
5438 2000-12-16  Havoc Pennington  <hp@pobox.com>
5439
5440         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5441         Port to GObject, can go back in gdk-pixbuf after setting up 
5442         a gdk-pixbuf-marshal.h header over there.
5443
5444         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5445         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5446         args
5447         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5448         set
5449         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5450         here, do it when we create the buttons later
5451         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5452         (gtk_tree_view_map): paranoia checks that column->button is shown 
5453         and unmapped
5454         (gtk_tree_view_size_request): only request visible children.
5455         Move header size calculation in here, for cleanliness, and 
5456         to maintain invariants for child widgets if we eventually 
5457         let users set different children inside the buttons
5458         (gtk_tree_view_map_buttons): factor out code to map buttons,
5459         since it was being called several times
5460         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5461         windows instead of just moving them; their height may change 
5462         if we allow random widgets in there, or the theme changes.
5463         (gtk_tree_view_size_allocate): move button size allocation 
5464         above emitting the scroll signals, to ensure a sane state when we
5465         hit user code
5466         (gtk_tree_view_button_release): remove queue_resize after
5467         tree_view_set_size(), set_size() will handle any resize queuing
5468         that's needed
5469         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5470         draw_focus goo
5471         (gtk_tree_view_focus): use gtk_get_current_event() and
5472         gdk_event_get_state()
5473         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5474         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5475         semicolon
5476         (gtk_tree_view_create_button): show the button here
5477         (gtk_tree_view_button_clicked): actually emit the clicked signal
5478         on the column
5479         (_gtk_tree_view_set_size): return right away if the size is
5480         unchanged, as a cheesy optimization
5481         (gtk_tree_view_setup_model): rename set_model_realized to 
5482         setup_model to match the flag that indicates whether we've 
5483         called it
5484         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5485         exist, because set_scroll_adjustment does that and it shouldn't
5486         matter what order you call these in
5487         (gtk_tree_view_get_vadjustment): ditto
5488         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5489         for paranoia
5490         (gtk_tree_view_set_headers_visible): call
5491         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5492         (gtk_tree_view_append_column): clarify whether the return value
5493         is the count of columns before or after, and do the increment 
5494         separately from the return statement so you can tell from the code.
5495         (gtk_tree_view_remove_column): ditto
5496         (gtk_tree_view_insert_column): ditto
5497         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5498         outside the existing range, the docs say that outside-range
5499         columns are allowed, so we handle them as documented. (Presumably
5500         this allows a nice loop with column != NULL as test.)
5501         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5502         mean (left/right/center etc.).
5503         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5504         (gtk_tree_view_expand_row): add docs
5505         (gtk_tree_view_collapse_row): add docs
5506
5507         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5508         function to emit the clicked signal on a column
5509         
5510         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5511         state of an event
5512         (gdk_event_get_time): don't treat GDK_SCROLL 
5513         as a button event, remove default case from switch so gcc 
5514         will whine if we don't explicitly handle all event types
5515
5516         * gtk/gtktreeselection.h: added some FIXME 
5517         
5518         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5519         "columns" to "n_columns" and "column" to "columns" for clarity
5520
5521 2000-12-16  Havoc Pennington  <hp@pobox.com>
5522         
5523         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5524         stuff. This should make e.g. the delete key work again in the
5525         text widget...
5526         (gtk_text_iter_forward_cursor_positions): handle negative count
5527         (gtk_text_iter_backward_cursor_positions): handle negative count
5528         (gtk_text_iter_forward_word_ends): handle negative count
5529         (gtk_text_iter_backward_word_starts): handle negative count
5530
5531         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5532         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5533         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5534         GObject. No doubt will cause breakage.
5535
5536         * demos/gtk-demo/textview.c: remove hacks around
5537         non-GObject-ification of the text objects
5538
5539         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5540         the text tag
5541         
5542 2000-12-14  Havoc Pennington  <hp@pobox.com>
5543
5544         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5545         that we have Xrender
5546
5547 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5548
5549         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5550         Add two virtualized functions gdk_drawable_get_clip_region - to
5551         get the clip region when drawing.
5552         
5553         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5554         use invalidate_region.
5555
5556         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5557         region.
5558
5559         * acconfig.h configure.in: Check for Xft. For now, assume
5560         that if Xft is found, Pango was compiled with Xft support
5561         as well.
5562
5563         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5564         gdk_colormap_query_color().
5565         
5566         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5567         with Xft if appropriate.
5568
5569         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5570         a pangoxft context if we have XFT and the environment
5571         variable GD_USE_XFT is set.
5572         
5573         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5574         and also possibly an XftDraw structure.
5575
5576         * gtk/gtkfontsel.c: Handle the case where the font from the
5577         style doesn't match any of the fonts a bit better.
5578         
5579         * gtk/testgtk.c: Add tabs between directional segments for
5580         hebrew/arabic test. (Not really necessary, just a little
5581         prettier.)
5582
5583 2000-12-14  Havoc Pennington  <hp@redhat.com>
5584
5585         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5586         reading a file
5587
5588 2000-12-14  Havoc Pennington  <hp@redhat.com>
5589
5590         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5591         unused call to get_last_line()
5592
5593         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5594         here until boxed is working (and maybe after that - we should
5595         really not gratuitously break old code)
5596
5597         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5598         specific types for font_desc and tabs args, move them to
5599         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5600         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5601
5602         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5603         use GTK_TYPE_POINTER for signal signatures as a hack-around
5604
5605         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5606         PangoTabArray
5607
5608         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5609         make static
5610         (line_display_index_to_iter): make static
5611
5612         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5613         to marshal a string not a boxed
5614
5615         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5616
5617         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5618         since the UTF-8 isn't validated yet
5619
5620         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5621         lines to end in '\n'
5622         
5623         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5624         forward_to_delimiters, and grapheme boundaries
5625         (gtk_text_view_delete_from_cursor): properly handle non-newline
5626         delimiters, and grapheme boundaries
5627
5628         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5629         to gtk_text_iter_forward_to_delimiters, and make it work properly
5630         if empty lines end with a character other than '\n'
5631
5632         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5633         position
5634
5635 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5636
5637         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5638
5639         * gtk/gtk.def
5640         * gdk/gdk.def: Update.
5641
5642         * gdk/win32/gdkmain-win32.c
5643         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5644         gdkmain-win32.c here.
5645
5646         * gdk/win32/makefile.mingw.in (all): No need to make
5647         gdk-win32res.o here, the makefile one step up will call us to make
5648         it.
5649
5650         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5651         gdkkeys-win32.
5652
5653         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5654
5655         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5656         call to g_source_add().
5657
5658         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5659         leak. Thanks to Andreas Kemnade.
5660
5661 2000-12-13  Havoc Pennington  <hp@pobox.com>
5662
5663         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5664
5665         * gtk/gtktext*.[hc]: update accordingly
5666         
5667 2000-12-13  Havoc Pennington  <hp@pobox.com>
5668
5669         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5670         header file
5671
5672         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5673
5674 2000-12-13  Alex Larsson  <alexl@redhat.com>
5675
5676         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5677         Add support for ps2 intellimouse.
5678
5679         * gdkkeyboard-fb.c:
5680         Move shift-F1 repaint handling to xlate handler only.
5681         
5682         * docs/README.linux-fb:
5683         Add imps2 to docs.
5684         Document the new refresh keys.
5685         
5686 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5687
5688         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5689
5690         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5691         ::position and ::padding.
5692
5693         * gtk/gtkcontainer.c: make ::border_width an INT property.
5694
5695         * gtk/gtkpacker.c: make ::position an INT property.
5696
5697         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5698         guard against NULL h/v scrollbars, since this is used at construction
5699         time.
5700
5701         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5702         internal gtk_clist_constructor().
5703
5704         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5705         gtk_ctree_constructor().
5706
5707         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5708         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5709
5710         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5711         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5712
5713         * gtk/gtkwidget.[hc]:
5714         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5715         and gtk_widget_get().
5716         (gtk_widget_new): use g_object_new_valist().
5717         (gtk_widget_set): use g_object_set_valist().
5718
5719         * gtk/gtkobject.[hc]:
5720         removed gtk_object_arg_get_info(), gtk_object_getv(),
5721         gtk_object_query_args(), gtk_object_newv(),
5722         gtk_object_class_add_signals(),
5723         gtk_object_class_user_signal_new(),
5724         gtk_object_class_user_signal_newv(),
5725         gtk_object_arg_set(), gtk_object_arg_get(),
5726         gtk_object_args_collect(),
5727         gtk_object_default_construct(),
5728         gtk_object_constructed(),
5729         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5730         removed nsignals, signals and n_args members from GtkObjectClass.
5731         (gtk_object_new): use g_object_new_valist().
5732         (gtk_object_set): use g_object_set_valist().
5733         (gtk_object_get): use g_object_get_valist().
5734         
5735         * gtk/gtkcompat.h: define gtk_object_default_construct().
5736         
5737         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5738         g_object_new().
5739
5740         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5741         fucntions, cleaned up method assignments (make sure your structures
5742         are setup properly before calling out). removed all GTK_CONSTRUCTED
5743         hacks ;)
5744
5745 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5746
5747         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5748         off-by-one error in checks. (Dave Lambert)
5749
5750 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5751
5752         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5753         Don't free gdk_fb_keyboard twice.
5754
5755 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5756
5757         * gtk/testgtk.c:
5758         (create_tooltips): 
5759         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5760         use GObject swapped_signal:: properties instead.
5761
5762         * gtk/gtkcellrenderertoggle.c: 
5763         * gtk/gtkcellrenderertextpixbuf.c: 
5764         * gtk/gtkcellrenderertext.c: 
5765         * gtk/gtkcellrendererpixbuf.c: 
5766         * gtk/gtkcellrenderer.c:
5767         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5768         missing warnings for invalid property ids, install properties
5769         with g_object_class_install_property() now.
5770         
5771         * gtk/gtksignal.c:
5772         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5773         
5774 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5775         
5776         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5777         to determine if a window is the focus widget within
5778         its toplevel.
5779
5780         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5781         to be boolean.
5782
5783         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5784         of the case where the container CAN_FOCUS to here instead
5785         of having it in each individual move-the-focus place.
5786
5787         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5788         focusing to be geometric in a much more obvious sense. Arrowing
5789         around is still non-intuitive because it isn't perfect and
5790         because entries, etc, grab the arrow keys, but it at least
5791         usually will do what you expect now.
5792         
5793         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5794         file.
5795
5796         * gtk/gtknotebook.c: Change tabs to be a single item in
5797         the focus chain. Make movement of focus on tabs with arrow
5798         keys wrap around.
5799         
5800         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5801         CHECK_FIND_CHILD macro to give informative error messages
5802         instead of silent returns.
5803
5804         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5805         flag since we handle GdkReturn on the tabs.
5806
5807         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5808         windows rather than sending expose events directly.
5809
5810         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5811         definition for GtkNotebookPage into .c file, since it is private.
5812
5813         * gtk/testgtk.c (create_notebook): Add option for 
5814         testing borderless notebook.
5815
5816         * gtk/testgtk.c (page_switch): Removed egregious poking
5817         around in GTK+ internals.
5818
5819         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5820
5821         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5822         properly through gtk_clist_focus. Make the title headers a
5823         single item in the tab-focus chain, and make left-right wrap
5824         around.
5825
5826         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5827         focus method so that wrapping around works properly.
5828
5829         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5830         that is handled for the widget now. 
5831
5832 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5833
5834         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5835         widgets as TOPLEVEL.
5836
5837         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5838         TOPLEVEL widgets are containers.
5839
5840         * gtk/gtkinvisible.h: Remove useless include.
5841
5842 2000-12-11  Havoc Pennington  <hp@redhat.com>
5843
5844         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5845         Handle chopping off \r\n and 0x2029 in addition to \n before
5846         passing to PangoLayout
5847
5848         * gtk/gtkimcontextsimple.c
5849         (gtk_im_context_simple_get_preedit_string): 
5850         return an empty string if no match is pending
5851
5852         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5853         assertion that the returned preedit string was sane
5854
5855         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5856         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5857         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5858
5859 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5860
5861         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5862         Fix up finalizer to chain to its parent.
5863
5864 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5865
5866         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5867         Clearified the difference between the keyboard types. Wrote a note
5868         about the magic sysrq key to get out of raw mode.
5869
5870 2000-12-09  James Henstridge  <james@daa.com.au>
5871
5872         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5873         member to hold masks for detecting the start of a protocol packet.
5874         (mouse_devs): add packet start masks for ps2 and ms device types.
5875         Left the mask for fidmour blank, as I have no idea what it should
5876         be.
5877         (handle_mouse_io): skip bytes until we get to the start of a
5878         packet.  My Logitech mouse seems to be passing an extra NULL pad
5879         byte, and GPM does a similar thing here.
5880         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5881         this is the ms mouse driver.
5882         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5883         completely broken except for button1.  It was checking the wrong
5884         bit in the packet for the status of the right mouse button, and
5885         wrongly assuming right == button2 rather than 3.  I fixed that and
5886         also added support for middle button (button2).
5887
5888 2000-12-08  Havoc Pennington  <hp@redhat.com>
5889
5890         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5891         that cause a segfault on text insertion
5892
5893         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5894         warning
5895
5896         * gtk/gtktextiter.c (test_log_attrs): use
5897         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5898
5899         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5900         Get log attrs for a line, using a cache stored on the buffer
5901         
5902         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5903         reported by Jeff Franks
5904
5905 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5906
5907         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5908         /dev/ttyS0 -> /dev/mouse
5909
5910 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5911
5912         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5913         Added dummy gdk_fontset_load.
5914
5915 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5916
5917         * docs/README.linux-fb:
5918         * docs/Makefile.am:
5919         Initial GtkFB docs.
5920         
5921         * gdk/linux-fb/Makefile.am:
5922         Define GDK_DATA_PREFIX.
5923
5924         * gdk/linux-fb/gdkmain-fb.c:
5925         Fix typo.
5926         Change default display to /dev/fb0.
5927
5928         * gdk/linux-fb/gdkpango-fb.c:
5929         Add $(prefix)/share/fonts/ to font path.
5930         
5931 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5932
5933         * gdk/linux-fb/gdkkeyboard-fb.c:
5934         New file containing the abstracted keyboard driver. Most code
5935         taken from gdkinput-ps2.c
5936
5937         * gdk/linux-fb/gdkinput-ps2.c:
5938         Removed file.
5939         
5940         * gdk/linux-fb/Makefile.am:
5941         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5942
5943         * gdk/linux-fb/gdkcolor-fb.c:
5944         display->fb was renamed to display->fb_fd.
5945
5946         * gdk/linux-fb/gdkcursor-fb.c:
5947         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5948
5949         * gdk/linux-fb/gdkinput.c:
5950         Moved gdk_input_init here from gdkinput-ps2.c
5951
5952         * gdk/linux-fb/gdkmain-fb.c:
5953         display->fb was renamed to display->fb_fd.
5954         Now the tty and the console is opened here instead
5955         of in the keyboard driver. Also check GDK_VT to see what
5956         tty to open.
5957         Move gdk_beep () here from gdkinput-ps2.c
5958         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5959
5960         * gdk/linux-fb/gdkmouse-fb.c:
5961         Add header.
5962         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5963         Return correct keyboard modifiers.
5964         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5965
5966         * gdk/linux-fb/gdkprivate-fb.h:
5967         Add tty and vt info to display.
5968         Add orignal modeinfo storage to display
5969         Update global functions
5970
5971         * gdk/linux-fb/gdkwindow-fb.c:
5972         Added gdk_fb_window_find_focus().
5973         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5974
5975 2000-12-07  Havoc Pennington  <hp@pobox.com>
5976
5977         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5978         function, noticed by Alex
5979
5980 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5981
5982         * configure.in: Detect freetype properly
5983
5984         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5985         above.
5986
5987 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5988
5989         * gdk/linux-fb/Makefile.am:
5990         Add gdkmouse-fb.c
5991         
5992         * gdk/linux-fb/gdkmouse-fb.c:
5993         New file. Abstracted the mouse drivers a bit.
5994
5995         * gdk/linux-fb/gdkcursor-fb.c:
5996         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5997
5998         * gdk/linux-fb/gdkinput-ps2.c:
5999         Removed old mouse handling code. Moved cursor handling code
6000         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
6001         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
6002         gdk_mouse_get_info.
6003
6004         * gdk/linux-fb/gdkmain-fb.c:
6005         Pass NULL pointers for x,y in gdk_mouse_get_info call.
6006
6007         * gdk/linux-fb/gdkprivate-fb.h:
6008         Removed public gdk_fb_find_common_ancestor, added and renamed
6009         functions for the new mouse handling code.
6010
6011         * gdk/linux-fb/gdkwindow-fb.c:
6012         Moved gdk_fb_window_send_crossing_events here. added global
6013         variable gdk_fb_window_containing_pointer. made
6014         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
6015         renamed to gdk_mouse_get_info.
6016
6017 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6018
6019         * gdk/linux-fb/gdkevents-fb.c:
6020         Update to match latest gmain/gsource changes.
6021
6022         * gdk/linux-fb/gdkinput-ps2.c:
6023         Bogus gdk_keymap_get_entries_for_keycode implementation so that
6024         it links. Will be implemented later.
6025
6026 2000-12-03  Havoc Pennington  <hp@pobox.com>
6027
6028         * gdk/Makefile.am: add gdkkeys.[hc]
6029
6030         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
6031         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
6032
6033         * acconfig.h, configure.in: add checks and command line options
6034         for XKB
6035
6036         * gdk/x11/gdkkeys-x11.c: Implement the above functions
6037         
6038         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
6039         and group in the key event
6040
6041         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
6042         field with the low-level hardware key code, and a group
6043         field with the keyboard group
6044
6045         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
6046         and declare a couple globals used for keymap handling
6047         
6048         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
6049         hold down Shift-Control and type a hex number to get a Unicode 
6050         character corresponding to the hex number
6051         (gtk_im_context_simple_get_preedit_string): Fix cursor position
6052         (return bytes not chars)
6053
6054 2000-12-05  Elliot Lee  <sopwith@redhat.com>
6055
6056         * gdk/gdkcolor.h: Make GdkColor specify element sizes
6057         to avoid waste on 64-bit platforms.
6058
6059 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
6060
6061         * INSTALL: Fix link to PNG home, remove reference
6062         to fribidi.
6063
6064         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
6065         
6066         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
6067         tested.)
6068
6069         * gtk/gtkcheckmenuitem.c: Permanently turn on
6070         always_show_toggle.
6071
6072         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
6073         be NULL. (Vladimir Klebanov, #26545)
6074
6075         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
6076         some signed/unsigned comparison problems. (#6510,
6077         David Kaelbling)
6078
6079         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
6080         return type to boolean (Oskar Liljeblad, #18648)
6081
6082 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6083
6084         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
6085         Remove bogus colormap setting.
6086
6087 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6088
6089         * gdk/linux-fb/gdkcolor-fb.c:
6090         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
6091
6092         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
6093         Must set colormap.
6094         
6095 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
6096
6097         * docs/tutorial/gtk-tut.sgml: DND updates
6098
6099 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
6100
6101         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6102         Remove old debug g_warning().
6103         (gdk_fb_draw_drawable): The src argument can be either a wrapper
6104         or an implementation, just pass the implementation to draw_drawable_2.
6105         
6106         * gdk/linux-fb/gdkprivate-fb.h:
6107         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
6108
6109         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6110         clear and invalidate area when window is destroyed.
6111         (send_map_events): Remove old commented out code.
6112
6113 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6114
6115         * gdk/linux-fb/gdkpango-fb.c:
6116         Use italic instead of oblique in font aliases.
6117         
6118         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
6119         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
6120         other unsupported functions.
6121
6122 2000-12-04  Havoc Pennington  <hp@redhat.com>
6123
6124         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
6125
6126         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
6127
6128         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
6129
6130         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
6131         hack to avoid infinite loops (synthetic expose event) - 
6132         Owen has more appropriate fixes in a branch he'll check in later.
6133
6134         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6135         separator, CR, and CRLF as line ends
6136
6137         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6138         into lines using pango_find_paragraph_boundary(); other bits of
6139         the widget are still going to be broken if the boundary isn't '\n'
6140         though
6141
6142 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6143
6144         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6145         multiply.
6146
6147         * gdk/linux-fb/gdkpango-fb.c:
6148         Copied some 26.6 scaling macros from pango to clean up the rounding.
6149         (pango_fb_font_get_glyph_info): Correct sign on x value.
6150
6151         * gdk/linux-fb/gdkprivate-fb.h:
6152         Removed unreferenced external functions.
6153
6154         * modules/linux-fb/Makefile.am: Use ` instead of '.
6155
6156         * modules/linux-fb/basic.c:
6157         Remove dead code. In particular the dummy lang engine which broke all
6158         pango layouts in GtkFB. Don't include tables-big.i anymore.
6159
6160         * modules/linux-fb/tables-big.i:
6161         Upgrade to latest version from pango. Left for reference, basic_ranges
6162         moved to basic.c.
6163         
6164 2000-12-04  Havoc Pennington  <hp@redhat.com>
6165
6166         Fix bugs Alex found:
6167         
6168         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6169         to "draw"
6170
6171         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6172
6173         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6174
6175         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6176         implementation in here, apparently the expose() implementation was
6177         dead code.
6178
6179 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6180
6181         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6182         Return positive descent.
6183
6184 2000-12-02  Havoc Pennington  <hp@pobox.com>
6185
6186         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6187         method and signal
6188         
6189         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6190         calls gdk_window_process_updates() to push the exposes through
6191         (gtk_widget_class_init): No more draw signal, no
6192         gtk_widget_real_draw()  
6193         
6194         * gtk/gtkbin.c (gtk_bin_draw): remove
6195
6196         * gtk/gtkbox.c (gtk_box_draw): remove
6197
6198         * gtk/gtkbutton.c (gtk_button_draw): remove
6199
6200         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6201
6202         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6203
6204         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6205
6206         * gtk/gtkclist.c (gtk_clist_draw): remove
6207
6208         * gtk/gtkentry.c (gtk_entry_draw): remove
6209
6210         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6211
6212         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6213
6214         * gtk/gtkframe.c (gtk_frame_draw): remove
6215
6216         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6217
6218         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6219
6220         * gtk/gtklayout.c (gtk_layout_draw): remove
6221
6222         * gtk/gtklist.c (gtk_list_draw): remove
6223
6224         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6225
6226         * gtk/gtkmenu.c (gtk_menu_draw): remove
6227
6228         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6229
6230         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6231
6232         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6233
6234         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6235
6236         * gtk/gtkpacker.c (gtk_packer_draw): remove
6237
6238         * gtk/gtkrange.c (gtk_range_draw): remove
6239
6240         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6241
6242         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6243
6244         * gtk/gtktable.c (gtk_table_draw): remove
6245
6246         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6247
6248         * gtk/gtktext.c (gtk_text_draw): remove
6249
6250         * gtk/gtktextview.c (gtk_text_view_draw): remove
6251
6252         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6253
6254         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6255
6256         * gtk/gtktree.c (gtk_tree_draw): remove
6257
6258         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6259
6260         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6261
6262         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6263
6264         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6265
6266         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6267
6268         * gtk/gtkwindow.c (gtk_window_draw): remove
6269
6270 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6271
6272         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6273         a GtkToggleButton is both insensitive and active, it was being
6274         drawn by the GtkButton draw handler which doesn't check the
6275         state. Now it's calling gtk_toggle_button_paint instead.
6276         
6277 2000-12-01  Havoc Pennington  <hp@redhat.com>
6278
6279         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6280         dangling pointers to the appearance attributes from the 
6281         line display
6282
6283         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6284         width/height to mean "full width/height of drawable"
6285
6286         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6287         click to select word/line
6288         
6289         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6290         when getting log attrs. Get a slice, so that pixmaps and stuff
6291         are properly handled.
6292
6293         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6294         paste into the selection (replaces selection now, previously
6295         crashed or added to selection). Reveals longstanding btree bug -
6296         select multiple lines, middle-click on the selection, boom. This
6297         isn't related to my changes though.
6298
6299         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6300         PangoLogAttrs changes
6301         (gtk_entry_move_backward_word): ditto
6302
6303         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6304         functions return bool whether the iter moved onto a
6305         dereferenceable position.
6306  
6307         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6308         functions for motion in terms of display lines.
6309
6310         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6311         get the buffer a mark is inside
6312         
6313 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6314
6315         * gdk/linux-fb/Makefile.am:
6316         * modules/linux-fb/Makefile.am:
6317         Freetype 2 final uses freetype-config
6318
6319         * gdk/linux-fb/gdkpango-fb.c:
6320         Upgrade to use Freetype 2 final.
6321         More flexible support for font aliases, this also fixes a bug with
6322         GtkFontSelector, as the aliases must be visible in the font/family list,
6323         or GtkFontSelector reads uninitialized memory.
6324
6325 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6326
6327         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6328         XGetIMValues to properly terminate variable argument list, and do
6329         NULL return check for ic_values and xim_styles.
6330
6331         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6332         Restore preedit state after XmbResetIC().
6333         
6334         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6335         XvaCreateNestedList() should take XvaNestedList, but not
6336         XvaNestedList*.
6337
6338         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6339         preedit_draw_callback, preedit_caret_callback): Match
6340         "preedit-changed" signal name to "preedit_changed" to be
6341         consistent to the spec.
6342
6343         * gtk/gtkimcontextsimple.c (check_table):
6344         Match "preedit-changed" to "preedit_changed" to be consistent
6345         to the spec.
6346
6347 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6348
6349         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6350         gc->clip_region == NULL>
6351
6352 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6353
6354         Changes by Hans Breuer:
6355         
6356         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6357         Dont't use negative width and height as max_hints. This fixes
6358         Owen's recent testgtk changes for win32.
6359
6360         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6361         gdk_win32_hdc_release): These are exported and may be called with
6362         other drawable types than our GdkDrawableImplWin32 (?).
6363
6364         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6365         so always #define USE_BACKING_STORE.
6366
6367         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6368         of printf for debugging output.
6369
6370         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6371         
6372         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6373
6374         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6375         declaration.
6376
6377         * gtk/gtktexttypes.h: Ditto.
6378
6379         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6380         (GDK_VoidSymbol) also if in case of arg check failure.
6381
6382         * gtk/gtkimcontextsimple.c
6383         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6384         position to the pointer, but to the variable it points to.
6385
6386         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6387
6388         * gtk/gtk.def: Updates.
6389
6390 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6391
6392         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6393         GTK_TYPE_TREE_MODEL.
6394
6395 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6396
6397         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6398         Set the size of the font from the description.
6399         (gdk_text_width): Gross hack that calculates the width
6400         of text by text_length * size/2. This is necessary because
6401         GtkLabel does some ugly gtk_string_width call to calculate
6402         an good size.
6403         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6404
6405 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6406
6407         * docs/tutorial/gtk-tut.sgml: DND updates
6408
6409 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6410
6411         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6412         If you pass width or height == 0 to gdk_window_clear_area they
6413         should be calculated from the window size.
6414
6415 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6416
6417         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6418         a grab, but no grab-cursor, use the cursor from the grabbed
6419         window. (gdk_fb_window_send_crossing_events): Send normal
6420         enter/leave notifications if grab and owner_events == TRUE.
6421
6422 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6423
6424         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6425         Do implicit button grabs, even if the window doesn't
6426         want the event.
6427         (gdk_fb_window_send_crossing_events): If there is a
6428         grab, only the grabbed window gets normal enter/leave
6429         notifications. On ungrab go from grabbed window to current.
6430         Don't send any notification to b when propagating from c -> b.
6431         If setting a grab on window, don't set prev_window.
6432         (handle_mouse_input): Send enter/leave events to the window the
6433         mouse is over, not the grabbed one.
6434         
6435 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6436
6437         * gdk/gdkregion-generic.c: Zap warning.
6438         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6439         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6440
6441 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6442
6443         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6444         The cursor should be hidden if it is part of either the
6445         source or destination region. Not only if it is in both.
6446         (gdk_window_set_transient_for): Silence warnings.
6447
6448 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6449
6450         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6451         The default mode in X is Pie Arcs, therefore that is
6452         what Gtk+ uses.
6453
6454 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6455
6456         * gdk/linux-fb/gdkinput-ps2.c:
6457         Implement correct EnterNotify/LeaveNotify:
6458         (gdk_fb_window_send_crossing_events): New function that sends
6459         all GdkCrossingEvents from the last mouse-window to the specified
6460         destination.
6461         (gdk_fb_window_visibility_crossing): Removed function.
6462         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6463         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6464         instead of gdk_window_get_pointer() for better readability.
6465
6466         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6467         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6468
6469         * gdk/linux-fb/gdkprivate-fb.h:
6470         removed gdk_fb_window_visibility_crossing, added
6471         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6472
6473         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6474         New function that finds the least common ancestor of two windows.
6475         (gdk_window_show, gdk_window_hide):
6476         Use gdk_fb_window_send_crossing_events.
6477         (gdk_fb_window_move_resize): Send configure events to toplevel
6478         windows. Use gdk_fb_window_send_crossing_events.
6479
6480 2000-11-27  Havoc Pennington  <hp@redhat.com>
6481
6482         * gtk/gtkprivate.h (enum): Remove a trailing comma
6483
6484 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6485
6486         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6487         the "changed" callback of the adjustment.  We need to redraw the
6488         spin button's arrows when the adjustment's range changes.
6489         (adjustment_changed_cb): Draw the arrows.
6490         (gtk_spin_button_value_changed): Draw the arrows.
6491
6492 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6493
6494         * gdk/linux-fb/gdkselection-fb.c:
6495         Initial selection implementation.
6496
6497         * gtk/gtkselection.c:
6498         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6499         requestor in gtk_selection_request.
6500         
6501         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6502         Added gdk_selection_property atom.
6503
6504         * gdk/linux-fb/gdkprivate-fb.h:
6505         Export _gdk_selection_window_destroyed.
6506         Removed mask_off_x/y from GdkCursorPrivateFB.
6507         Removed hbearing, added top, left to PangoFBGlyphInfo.
6508
6509         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6510         Call _gdk_selection_window_destroyed
6511         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6512         the root window has been created.
6513         (static_dx_hack, static_dy_hack, compare_draw_rects,
6514         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6515         in region. They are already sorted. Instead just traverse them in
6516         reverse if draw_direction < 0.
6517         
6518         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6519         Double-clicks must be sent after the normal button_press.
6520         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6521         
6522         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6523         Pass _gdk_fb_screen_gc instead of NULL.
6524
6525         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6526         Initialize gdk_selection_property.
6527         (gdk_event_make): Remove unused code.
6528
6529         * gdk/linux-fb/gdkcursor-fb.c:
6530         Make the pixmap for the cursor the same size as the mask. Also remove
6531         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6532         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6533         Now the whole cursor is visible.
6534
6535         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6536         Fix bug where xdest+height instead of ydest+height was used
6537         to calculate if the source and dest overlapped. This fixes the
6538         redraw bug when the main window in testgtk was scrolled when
6539         partially covered by a tall window.
6540         Copy rectangles in region in order depending on draw_direction.
6541         Also moved the draw_direction flipping of start_y and end_y into
6542         the gc functions, as this might not be what all of them want.
6543         (gdk_fb_draw_lines): Support dashed lines.
6544         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6545         so that the text is positioned correctly (was 1 pixel high).
6546
6547         gdk/linux-fb/gdkgc-fb.c:
6548         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6549         all lines were drawn a pixel to short. Also checked the default of
6550         the rest of the values, and they're the same as X now.
6551
6552         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6553         Clean up pixel positioning of the glyphs. Just use bgy->top and
6554         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6555         to all divisions to get correct rounding behaviour.
6556
6557         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6558         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6559         Moved start_y/end_y flip into draw_drawable implementations.
6560         Flip also x rendering when draw_direction < 0.
6561         Remove unneccesary multiply with draw_direction.
6562
6563 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6564
6565         * docs/tutorial/gtk-tut.sgml:
6566           - get rid of gtk_toggle_button_toggled FUD
6567           - start DND section - needs work - based on:
6568                 http://wolfpack.twu.net/docs/gtkdnd/
6569
6570 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6571
6572         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6573         Correct calculation of font metrics. Now GtkEntrys have sane
6574         size.
6575
6576 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6577
6578         * gdk/gdktypes.h:
6579         Add new type GdkSpan
6580         
6581         * docs/reference/gdk/gdk-sections.txt,
6582         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6583         gdk/gdkregion.h:
6584         Implement and document gdk_region_spans_intersect_foreach.
6585
6586         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6587         Add new file gdkrender-fb.c which contains all core
6588         rendering code.
6589         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6590         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6591         (optimized rectangle fillers).
6592
6593         * gdk/linux-fb/gdkdrawable-fb2.c:
6594         Move all rendering code to gdkrender-fb.c.
6595         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6596         Use the new span intersection functions in gdk_fb_fill_spans.
6597         gdk_fb_draw_rectangle() clips filled rectangles and calls
6598         gc->fill_rectangle with the result.
6599         gdk_fb_fill_spans() gets extra argument "sorted".
6600
6601         * gdk/linux-fb/gdkevents-fb.c:
6602         Remove unused includes and defines.
6603         New function gdk_fb_get_time() to get correct time for events.
6604
6605         * gdk/linux-fb/gdkinput-ps2.c:
6606         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6607         Make sure to set the time of all events.
6608
6609         * gdk/linux-fb/gdkmain-fb.c:
6610         Use gdk_fb_get_time ().
6611
6612         * gdk/linux-fb/gdkprivate-fb.h:
6613         New virtual GC calls: fill_span & fill_rectangle.
6614         Export gdk_fb_get_time().
6615         gdk_fb_fill_spans() gets extra argument "sorted".
6616
6617         * gdk/linux-fb/mi*.c:
6618         Use GdkSpan instead of GdkRectangle.
6619         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6620         from XFree 4 source)
6621         
6622 2000-11-22    <jrb@redhat.com>
6623
6624         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6625         reversing the order in an if statement will do.  Doing so managed
6626         to make the treemodelsort half work.  Other half will follow after
6627         I get the insert function fully fixed.
6628
6629 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6630         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6631         more than 2 bits. Besides, I need to implement an evil hack. :)
6632
6633 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6634
6635         * docs/tutorial/gtk-tut.sgml: minor corrections
6636
6637 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6638         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6639           convert to and from relative path's and iters.
6640
6641         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6642           testing sorting functions a bit better.  Currently broken -- will
6643           fix in morning.
6644
6645 2000-11-20  Havoc Pennington  <hp@redhat.com>
6646
6647         * gtk/gtkwidget.c: Documented a bunch of functions in here
6648         (gtk_widget_realize): Warn if you try to realize
6649         a widget with no parent that isn't a toplevel
6650         (gtk_widget_intersect): return a gboolean
6651
6652 2000-11-20  Havoc Pennington  <hp@redhat.com>
6653
6654         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6655         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6656         scrolling to be implemented in GDK to finish. Also, right now
6657         we just size_allocate all children on every layout change,
6658         which is pretty lame. Test commented out of testtext.c, 
6659         until it works better.
6660
6661 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6662
6663         * gdk/linux-fb/gdkdrawable-fb2.c:
6664         Removed unused arguments from gdk_fb_drawable_get_pixel().
6665
6666         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6667         Renamed fidur specific mouse packet data in MouseDevice to
6668         generic. Used it in ps2 mouse handling code to avoid blocking
6669         reads.
6670
6671 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6672
6673         * demos/gtk-demo/main.c: Changed to have the list become
6674         non-italic when the demo window is destroyed through an external
6675         event (like a close button).  Doing so found three bugs in the
6676         widget.
6677
6678         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6679
6680         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6681         we actually set the cell.
6682
6683         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6684
6685         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6686         free a leaked path.  Thanks memprof.
6687
6688 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6689
6690         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6691         off-by-one error when destroying allocated segments
6692         on failure. (Elliot)
6693
6694 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6695
6696         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6697         memleaks found by Evan Martin.
6698
6699 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6700
6701         * Released 1.3.2
6702         
6703         * NEWS: Updates for 1.3.2
6704
6705 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6706
6707         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6708         but in general for window system specific events.
6709
6710         * gtk/gtk.def
6711         * gtk/makefile.mingw.in
6712         * gtk/makefile.msc.in: Update.
6713         
6714         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6715
6716 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6717
6718         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6719         distribute gtk.immodules.
6720
6721         * gtk/Makefile.am (install-data-local): Don't install the
6722         gtk.immodules file created for the uninstalled modules;
6723         instead run gtk-query-immodules after install
6724
6725 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6726
6727         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6728         -rpath to the right install location.
6729
6730         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6731         -export-dynamic.
6732
6733         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6734         properly.
6735
6736 2000-11-15  Havoc Pennington  <hp@pobox.com>
6737
6738         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6739         patch from Mikael Hermansson to temporarily stop blinking while
6740         the user is using the keyboard to type or navigate. 
6741
6742         Also, when blinking, stay on for longer than we stay off. Also,
6743         return from start_cursor_blink if !cursor_visible, to save
6744         checking that flag all over the place before we call
6745         start_cursor_blink.
6746
6747 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6748
6749         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6750         only contain a "fontset" line, which is now ignored.
6751
6752         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6753         double-click-to-select-word work.
6754         
6755 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6756
6757         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6758         Don't move back one char when we are actually at the end of the 
6759         paragraph.
6760
6761 2000-11-15  Robert Brady  <robert@suse.co.uk>
6762
6763         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6764         'o' < 'p'.
6765         
6766         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6767         bind_textdomain_codeset.
6768
6769         (gtk_init_check): Make the warning about translating default:LTR
6770         sterner.
6771         
6772 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6773
6774         * **/Makefile.am : remove unecessary rules for win32-specific
6775         config-substituted targets. If you want these rules, use
6776         --enable-maintainer-mode (called automatically by autogen.sh).
6777         Stops a lot of unneccessary make-time warnings.
6778
6779         * gtk/gtktext{layout,display}.c: Factor in total width as
6780         well as screen when figuring alignment for word-wrap as well as
6781         no wrap; this is necessary to handle lines that cannot be wrapped
6782         at all.
6783
6784 2000-11-15  Havoc Pennington  <hp@redhat.com>
6785
6786         * gtk/testtext.c: Implement essential color cycling feature
6787
6788 2000-11-15  Havoc Pennington  <hp@redhat.com>
6789
6790         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6791         when we invalidate the main window.
6792
6793         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6794         GtkTextView will now invalidate the side windows for us when text
6795         changes.
6796
6797 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6798
6799         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6800         unconditionally, since we may need to update the horizontal
6801         scrollbars even if the height didn't change.
6802
6803         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6804         the extra attrs, since some of them affect size.
6805
6806         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6807         x_offset correctly.
6808
6809 2000-11-15  Havoc Pennington  <hp@redhat.com>
6810
6811         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6812         don't move the first line out into the margin, instead move the
6813         whole paragraph in order to make space for the first line within 
6814         the margin
6815
6816 2000-11-15  Havoc Pennington  <hp@redhat.com>
6817
6818         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6819         xoffset in addition to yoffset, so horizontal scrolling doesn't
6820         break redraws
6821
6822 2000-11-15  Havoc Pennington  <hp@redhat.com>
6823
6824         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6825         from the cursor
6826         (render_layout_line): fix reversed test that caused weird
6827         underlines to get drawn
6828
6829 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6830
6831         * gdk/linux-fb/gdkprivate-fb.h:
6832         Fix debug macros.
6833         
6834 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6835
6836         * gdk/linux-fb/gdkprivate-fb.h:
6837         Added virtual functions set_pixel, get_color,
6838         fill_span and draw_drawable to the GC.
6839         Added global _gdk_fb_screen_gc to use instead of
6840         NULL when drawing to the screen.
6841         Added _gdk_fb_gc_calc_state() prototype.
6842
6843         * gdk/linux-fb/gdkgc-fb.c:
6844         Call _gdk_fb_gc_calc_state() on any gc state change.
6845
6846         * gdk/linux-fb/gdkglobals-fb.c:
6847         Add _gdk_fb_screen_gc
6848                 
6849         * gdk/linux-fb/gdkdrawable-fb2.c:
6850         _gdk_fb_gc_calc_state() calculates best functions
6851         for the GC state and depth.
6852         Moved bpp specialized code to separate functions.
6853         Added optimized 24 bpp AA draw_drawable.
6854
6855         * gdk/linux-fb/gdkevents-fb.c:
6856         Silence gcc warning.
6857
6858         * gdk/linux-fb/gdkimage-fb.c:
6859         Use _gdk_fb_screen_gc
6860
6861         * gdk/linux-fb/gdkwindow-fb.c:
6862         Init and use _gdk_fb_screen_gc
6863
6864         * gdk/linux-fb/mitypes.h:
6865         Remove unused types.
6866
6867 2000-11-14  Havoc Pennington  <hp@pobox.com>
6868
6869         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6870         to pixels
6871
6872 2000-11-14  Havoc Pennington  <hp@pobox.com>
6873
6874         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6875
6876         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6877         unknown char, no real reason we were using a variable. 
6878         Remove gtk_text_unknown_char variable. Fix all the text widget
6879         files accordingly.
6880
6881         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6882         since the Unicode spec seems to prefer that character for our
6883         purposes.
6884
6885 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6886
6887         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6888         value of g_getenv() isn't freeable, so g_strdup it.
6889
6890         * modules/input/inuktitut.c: Inuktitut input method.
6891
6892         * modules/input/Makefile.am: Build this.
6893         
6894 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6895
6896         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6897         of gtk programs.
6898
6899 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6900
6901         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6902         reversed > that was causing Home to go to end of previous line.
6903
6904         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6905         modified-keypresses (leave for bindings.)
6906
6907         * modules/input/Makefile.am: Remove useless -export-dynamic
6908         from module LDFLAGS.
6909
6910 2000-11-14  Havoc Pennington  <hp@redhat.com>
6911
6912         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6913         higher.
6914
6915         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6916         account. Also, render rise, underline, background, etc. for
6917         pixbufs as well as text. Also, draw underlines one pixel higher.
6918
6919         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6920         PangoAttribute for the rise, so it gets drawn properly. Also,
6921         add the GtkTextAppearance attribute for pixbuf/widget segments
6922         as well; we should go ahead and have rise, underline, background,
6923         stipple work for those
6924
6925         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6926         Pango
6927
6928 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6929
6930         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6931
6932         * gtk/gtk.def: Update.
6933
6934         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6935         included.
6936         (gtk_rc_get_im_module_file): Use run-time installation directory
6937         on Win32.
6938
6939         * gdk/win32/rc/gdk.rc: Remove.
6940         * gdk/win32/rc/gdk.rc.in: New file.
6941         * gdk/win32/rc/Makefile.am: New file
6942         * gdk/win32/Makefile.am: Corresponding changes.
6943
6944         * gtk/gtk.rc: Remove.
6945         * gtk/gtk-win32.rc.in: New file.
6946         * gtk/Makefile.am: Corresponding changes.
6947
6948         * configure.in: Corresponding changes.
6949
6950         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6951         has a built gtkcompat.h. Developers using CVS code on Win32 can
6952         hand-edit it from gtkcompat.h.in.
6953
6954         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6955         gtkcompat.h from gtkcompat.h.win32.
6956
6957 2000-11-14  Havoc Pennington  <hp@redhat.com>
6958
6959         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6960         to default to GDK_ACTION_MOVE if the drag is within a single
6961         widget. Defaults to GDK_ACTION_COPY between widgets.
6962
6963 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6964
6965         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6966
6967         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6968
6969         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6970         srcdir != builddir
6971
6972         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6973
6974         * configure.in (GTK_VERSION): Up to 1.3.2
6975
6976         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6977         gtkimcontextxim.h
6978
6979         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6980         missing doc comment.
6981
6982 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6983
6984         * modules/linux-fb/basic.c:
6985         Use the glib iconv wrappers.
6986
6987 2000-11-13  Havoc Pennington  <hp@pobox.com>
6988
6989         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6990         still more bugs.
6991
6992         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6993         scroll the GdkWindows before realization.
6994
6995 2000-11-13  Havoc Pennington  <hp@redhat.com>
6996
6997         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6998         where GC didn't always get updated properly
6999
7000         * demos/gtk-demo/textview.c (create_tags): Use subattributes
7001         of fonts instead of setting the entire font
7002
7003         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
7004         setting entire font
7005
7006         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
7007
7008         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
7009         a bunch of individually-settable font attributes. You can still 
7010         use the "font" and "font_desc" args, they just set all the font
7011         attributes at once.
7012
7013 2000-11-13 Elliot Lee <sopwith@redhat.com>
7014
7015         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
7016
7017 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
7018
7019         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
7020         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
7021
7022         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
7023         work better.
7024
7025 2000-11-13  Havoc Pennington  <hp@redhat.com>
7026
7027         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
7028         the module file.
7029
7030         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
7031         dest->language
7032
7033         * gtk/testtext.c: Test pixels above/below/inside paragraphs
7034         settings
7035
7036         * gtk/gtktextview.c: Implement object args and setters/getters for
7037         all the aspects of the GtkTextAttributes that are not set from
7038         GtkWidget attributes. This is spacing, justification, margins,
7039         etc.
7040
7041         (gtk_text_view_set_arg)
7042         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
7043         args
7044         (gtk_text_view_class_init): Add args for justify, left_margin,
7045         right_margin, indent, and tabs
7046         
7047
7048         * gtk/gtktextlayout.c (set_para_values): fix to display indent
7049         attribute properly
7050
7051         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
7052         replace with indent attribute
7053
7054         * gtk/gtktextlayout.c (set_para_values): multiply indent by
7055         PANGO_SCALE
7056
7057         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
7058         rearranging code to do that
7059         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
7060         i.e. don't subtract the top_margin first, just to keep
7061         all margin-futzing in one place.
7062
7063         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
7064
7065         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
7066         special case of last line, Pango now handles this itself.
7067         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
7068         Y coordinate
7069         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
7070         (find_display_line_above): wasn't moving the byte index as it
7071         iterated over lines, so always returned byte 0. Also, port to use
7072         PangoLayoutIter.
7073         (find_display_line_below): same problem as
7074         find_display_line_above. Also, port to use PangoLayoutIter.
7075
7076 2000-11-13  Alexander Larsson  <alexl@redhat.com>
7077
7078         * gdk/linux-fb/*.[ch]:
7079         Massive reindent to gtk+ standard. My hands hurt.
7080
7081         * gdk/linux-fb/gdkcolor-fb.c:
7082         Move GdkColorPrivateFB from inherited to windowing_data
7083
7084         * gdk/linux-fb/gdkcursor-fb.c:
7085         _gdk_cursor_new_from_pixmap made static
7086
7087         * gdk/linux-fb/gdkdnd-fb.c:
7088         GdkDragContextPrivate moved to windowing_data
7089
7090         * gdk/linux-fb/gdkdrawable-fb2.c:
7091         Removed endian.h, use glib endianness macros instead
7092         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
7093         and GDK_DRAWABLE_IMPL_FBDATA
7094
7095         * gdk/linux-fb/gdkfont-fb.c:
7096         Add empty gdk_font_load(). Needed for linking of Gtk+.
7097
7098         * gdk/linux-fb/gdkimage-fb.c:
7099         Removed endian.h, use glib endianness macros instead
7100         Moved GdkImagePrivateFB to windowing_data
7101         gdk_image_new_bitmap didn't always allocate enough
7102         memory.
7103
7104         * gdk/linux-fb/gdkinput-ps2.c:
7105         Added semi-working support for MS serial mice.
7106
7107         * gdk/linux-fb/gdkprivate-fb.h:
7108         s/GdkWindowPrivate/GdkWindowObject/
7109         Removed GdkWindowPrivate typedef
7110         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
7111         Removed GDK_DRAWABLE_P
7112         Move GdkColorPrivateFB from inherited to windowing_data
7113         Moved GdkImagePrivateFB to windowing_data
7114
7115         * gdk/linux-fb/gdkvisual-fb.c:
7116         Removed some unused debug code.
7117
7118         * gdk/linux-fb/gdkwindow-fb.c:
7119         Use stock cursors instead of including X headers.
7120         s/GdkWindowPrivate/GdkWindowObject/
7121
7122         * gdk/linux-fb/mitypes.h:
7123         Removed unused types.
7124
7125         * modules/linux-fb/basic.c:
7126         Use the pango fribidi wrappers.
7127
7128 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7129
7130         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
7131         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
7132         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
7133         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7134         GEqualFunc where applicable.
7135         
7136         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7137         pango_font_description_equal as changed in pango.
7138         
7139         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7140
7141         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7142
7143         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7144
7145         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7146
7147         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7148
7149         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7150
7151         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7152         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7153
7154         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7155         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7156
7157 2000-11-12  Havoc Pennington  <hp@pobox.com>
7158
7159         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7160         dir to datadir/gtk+-2.0/demo
7161
7162         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7163         sorts of text widget and Pango font bugs. Urgh.
7164
7165         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7166
7167         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7168         tree that you should double click to see the demo. Fix 
7169         types of variables to reflect changed return values from 
7170         GtkTreeStore and GtkTreeViewColumn constructors.
7171
7172         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7173         newly-created buffer to prepare for GObject semantics
7174
7175         * gtk/testtext.c: don't leak the buffer with GObject semantics
7176
7177         * gtk/testtextbuffer.c: ditto
7178         
7179 2000-11-12  Havoc Pennington  <hp@pobox.com>
7180
7181         Rename this testgtk to gtk-demo to avoid confusion, and 
7182         install it so people can use it as a supplement to 
7183         the documentation.
7184         
7185         * demos/gtk-demo: Moved from demos/testgtk
7186
7187         * demos/testgtk: Removed
7188
7189         * configure.in: make Makefile in gtk-demo
7190         
7191         * demos/gtk-demo/Makefile.am: Install sample source to 
7192         datadir/gtk-demo (maybe there's a better place?), and 
7193         rename the binary to gtk-demo
7194         
7195         * demos/gtk-demo/main.c (load_file): Load installed sample
7196         source if source isn't found in pwd.
7197
7198 2000-11-09  Havoc Pennington  <hp@pobox.com>
7199
7200         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7201         argument to set the char displayed when visibility == FALSE
7202         (gtk_entry_create_layout): If !entry->visible, replace 
7203         all chars with the "invisible char"
7204
7205         * gtk/testgtk.c: Test the invisible_char deal
7206         
7207 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7208
7209         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7210         can't get a native font in the right encoding.
7211
7212 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7213
7214         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7215         respectively.
7216
7217 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7218
7219         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7220         Fix warning when moving between paragraphs.
7221
7222         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7223         delete => delete_from_cursor, insert => insert_at_cursor
7224
7225 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7226
7227         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7228
7229         * modules/input/imthai-broken.c: A Thai input method for use if
7230         Thai keys are really generating Latin1 keysyms.
7231
7232         * modules/input/Makefile.am: Build these.
7233
7234 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7235
7236         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7237         g_filename_{to,from}_utf8 now takes an extra parameter.
7238
7239         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7240         strftime into UTF-8.
7241
7242         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7243         calendars.
7244
7245         (gtk_calendar_paint_day_names): Draw day names in the right 
7246         place.
7247         
7248 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7249
7250         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7251         problem with using result of g_get_charset() backwards -
7252         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7253
7254         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7255         negative min_width/height and max_width/height to
7256         mean "requisition"; this allows setting a window
7257         to be user-resizable in only one direction easily.
7258
7259         * gtk/testgtk.c (create_main_window): Remove hard-coded
7260         usize - set a default size in the vertical direction.
7261
7262 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7263
7264         * gtk/gtkrange.c: Add some missing casts. Support 
7265         2 and 3 button clicks on the arrows to mean 
7266         "move by pages" and "jump to end". (Like gtkspinbutton)
7267
7268 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7269
7270         * gdk/win32/makefile.msc : reflect build module changes
7271
7272         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7273         from GdkPixmap*, cast implementation member instead.
7274
7275         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7276         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7277         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7278         more Gdi functions return value checking. 
7279         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7280         GdkImagePrivateWin32 *.
7281
7282         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7283         menus useable again. Add #pragma message to keep reminded on this issue.
7284         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7285         windows. This allows to enable backing store on Win32!
7286
7287         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7288         in drawable is of impl type. Correct specific type checks appropriate.
7289  
7290         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7291         GDK_WINDOW_DESTROYED before allocating new resources.
7292
7293         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7294
7295         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7296         (gdk_window_foreign_new) initialize parent handle.
7297         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7298
7299         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7300         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7301         problems (e.g. main buttons in testgtk). 
7302
7303 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7304
7305         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7306         gtk_widget_activate for GDK_Return.
7307
7308         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7309         of preedit cursor position.
7310
7311 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7312
7313         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7314         static.
7315
7316 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7317
7318         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7319         out support for multiple locales; that simple doesn't
7320         work reliably with current Xlib
7321
7322         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7323         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7324         Add support for positioning the cursor within the preedit string.
7325
7326 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7327
7328         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7329         at XIM input method module.
7330
7331         * gtk/gtktextview.c: Check for bindings after passing
7332         events to im context filter.
7333
7334 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7335
7336         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7337         empty attribute lists properly.
7338
7339 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7340
7341         * gtk/queryimmodules.c (main): Return non-zero exit
7342         status if errors were encountered querying any
7343         modules.
7344
7345         * modules/input/Makefile.am (moduledir): remove
7346         leftover bin program target.
7347
7348         * docs/make-todo: Fix typo in error message.
7349
7350 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7351
7352         * configure.in: Add modules/input/Makefile
7353
7354 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7355
7356         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7357         don't include gtkthemes.h.
7358
7359         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7360         to point
7361
7362         * gtk/Makefile.am: Add new .c and .h files, build 
7363         gtk-query-immodules and use it to create a gtk.immodules
7364         file for use of test programs.
7365
7366         * gtk/gtkpreview.c: remove extra blank line.
7367
7368 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7369
7370         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7371         Add the ability to add extra tables beyond the default
7372         one, and also the ability to have compose sequences 
7373         that are prefixes of other compose sequences. 
7374
7375         * gtk/gtkimcontextsimple.c: Export a preedit string which
7376         consists of possible candidates for keystrokes that have
7377         been entered but not yet committed.
7378
7379         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7380         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7381
7382         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7383         Add a function to add input-method switching menu items
7384         to a menu.
7385
7386         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7387         when switching input methods.
7388
7389         * gtk/gtkimcontextsimple.[ch]: Change the format of
7390         the compose table to allow compose tables of different
7391         lengths / sequence.
7392
7393 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7394
7395         * gtk/gtkimmodule.[ch]: Support routines for loading
7396         GtkIMContext implementations dynamically at runtime.
7397
7398         * modules/input/imcyrillic-translit.c: A sample input
7399         method (based on GtkIMContextSimple with an extra table),
7400         which demonstrates preedit strings and the module
7401         system for input modules
7402
7403         * gtk/queryimmodules.c: Program to query the available
7404         input modules and write the results into a file.
7405          
7406         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7407         extra config options "im_module_file" (cache file for
7408         input method modules), and "im_module_path" - path
7409         to look for modules when generating cache file.
7410
7411         This doesn't scale.
7412
7413 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7414
7415         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7416         generic code from gtkthemes into a new abstraction
7417         GtkModule which has the logic for implementing
7418         a loadable module which implements a number of 
7419         GObject types.
7420
7421 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7422
7423         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7424         a class into an interface  
7425         
7426         * gtk/gtkoldeditable.[ch]: Move the old editable
7427         implementation into here, so legacy widgets can
7428         still rely on the implemenation. GtkOldEditable
7429         exports GtkEditable. Make selection handling
7430         code use new text conversion functions (and
7431         handle UTF-8 as a side-effect). Use GtkClipboard
7432         for CLIPBOARD.
7433
7434         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7435         Adopt to match above changes.
7436
7437         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7438         avoid GtkOldEditable implementation. Restructure
7439         to reduce number of places that modify state directly.
7440         Move to GtkBindingSet. Display the preedit string.
7441         Queue recomputation of PangoLayout and scroll position
7442         to improve effiency of doing complex changes naively.
7443         Add a menu with cut/copy/paste and input method selection.
7444
7445 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7446
7447         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7448         to set preedit string and attributes; display preedit string by
7449         inserting string and attributes at cursor when creating the
7450         GtkTextLineDisplay.
7451
7452         * gtk/gtktextlayout.c: Move all conversions between byte
7453         positions in PangoLayout and GtkTextIter into new functions
7454         line_display_iter_to_index/index_to_iter that properly
7455         handle the preedit string.
7456
7457         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7458         it to return const char * (eventually will end up
7459         as GCONST char *, most likely.)
7460
7461         * gtk/gtktextview.[ch]: Handle the preedit string, call
7462         gtk_im_context_reset() as necessary, add a menu to switch
7463         input methods.
7464         
7465         * gtk/gtktextlayout.[ch]: Remove useless
7466         gtk_text_layout_get_log_attrs() function.
7467
7468 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7469
7470         * gdk/gdk.def
7471         * gtk/gtk.def: Update.
7472
7473         * gdk/win32/*.c: Add last argument to g_type_register_static()
7474         calls.
7475
7476         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7477
7478         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7479         generated by older wheel mouse drivers. Get the correct y
7480         coordinate from WM_MOUSEWHEEL messages.
7481
7482         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7483         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7484         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7485         Debugging functions.
7486
7487         * gdk/win32/gdkprivate-win32.h: Declare them.
7488
7489         * gdk/win32/gdkinput-win32.h: Add declaration for
7490         gdk_input_window_destroy().
7491
7492         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7493
7494 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7495
7496         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7497         function to help handle keeping things in sync.
7498
7499 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7500
7501         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7502         BOXED marshallers.
7503
7504         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7505         (gtk_list_store_class_init): use the new BOXED marshallers.
7506
7507         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7508         new_with_values to new_with_types.
7509         (gtk_tree_store_get_column_type): add this.
7510         (gtk_tree_store_class_init): use the new BOXED marshallers.
7511
7512         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7513         mirror some POINTER marshallers.
7514
7515 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7516
7517         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7518         allow more interesting iterators.  Also, made the lifecycle of
7519         iterators more explicit.
7520
7521         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7522
7523         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7524         types.
7525
7526 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7527
7528         * demos/testgtk/menus.c:
7529         Changes to make the new testgtk compile after
7530         gtk_menu_append was removed.
7531
7532         * gdk/linux-fb/gdkdrawable-fb2.c
7533         (gdk_fb_get_depth, gdk_fb_get_visual,
7534         gdk_drawable_impl_fb_class_init): Implement
7535         these drawable functions. Now GtkImages work again.
7536
7537         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7538
7539         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7540         
7541         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7542         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7543         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7544         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7545
7546 2000-11-08  Havoc Pennington  <hp@pobox.com>
7547
7548         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7549         visible_set args, don't know where these had gone, I thought they
7550         used to be there
7551
7552         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7553         now we can test the feature and see that it's totally broken.
7554
7555 2000-11-08  Havoc Pennington  <hp@pobox.com>
7556
7557         Make DND copy pixbufs and tags when source and target share a 
7558         tag table.
7559         
7560         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7561         in-process GTK_TEXT_BUFFER_CONTENTS target
7562         (gtk_text_view_drag_data_received): Paste from
7563         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7564
7565 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7566
7567         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7568         API changes.
7569
7570         * gtk/gtkmenu.c: Add support for scrolling menus.
7571         Remove gtk_menu_append/prepend/insert, these have been moved to
7572         gtkcompat.h as #defines.
7573
7574         * gtk/gtkcompat.h.in:
7575         Add compatibility #defines for gtk_menu_append/prepend/insert
7576
7577         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7578         GtkMenuPositionFunc gets an extra argument push_in.
7579         gtk_menu_append/prepend/insert removed.
7580         
7581         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7582         positioning behaviour to fit to scrolling menus.
7583
7584         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7585         into menuitem->submeny. That is wrong, and broke torn
7586         off submenus of torn off menus, since they were unrealized
7587         when the first menu was unrealized.
7588
7589         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7590         gtk_menu_shell_select_item() since these need to be overridden in
7591         GtkMenu.
7592
7593         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7594         positioning behaviour to fit to scrolling menus.
7595         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7596         the current item so that it is prelighted when the menu pops up.
7597         This is a workaround to the fact that the menu doesn't get the
7598         initial enter event (due to grabs).
7599
7600         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7601         s/gtk_menu_append/gtk_menu_shell_append/
7602
7603         * gtk/gtknotebook.c:
7604         s/gtk_menu_insert/gtk_menu_shell_insert/
7605
7606         * gtk/testgtk.c (create_menu, create_menus):
7607         Create the first menu with 50 items so that menu scrolling
7608         can be tested.
7609         
7610         
7611         Patch from Jonathan Blandford  <jrb@redhat.com>
7612
7613         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7614         system to handle size requests.  First, we ask what the size of
7615         the toggle is.  Then, when allocating the size, we allocate the
7616         toggle_size first.  This way we can have multiple menu-item
7617         classes w/o needing a seperate class for each.
7618
7619         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7620         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7621
7622         * gtk/gtkcheckmenuitem.c
7623         (gtk_check_menu_item_toggle_size_request): New function to handle
7624         the toggle size-request.
7625
7626 2000-11-07  Havoc Pennington  <hp@redhat.com>
7627
7628         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7629         Half-ass somewhat fix this function, so that scrolling to the
7630         insertion point works. Pango hacking is in the future to really
7631         fix it.
7632
7633         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7634         length of data, no longer used.
7635
7636         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7637         method contents in here, get rid of destroy method
7638         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7639         that were backward. Remove debug spew.
7640         (cut_or_copy): Make the clipboard work with insert_range to
7641         preserve tags and pixbufs, not just the primary selection.
7642
7643 2000-11-07  Havoc Pennington  <hp@redhat.com>
7644
7645         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7646         to gtk_text_mark_get_visible
7647
7648         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7649         bug that was generating an invalid iterator
7650
7651         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7652         ensure_char_offsets() in front of code placing the iter in an
7653         invalid state.
7654
7655         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7656         make override_location arg const
7657         (paste): Replace the selection if we paste into the 
7658         current selection
7659
7660         * gtk/gtkselection.h: Remove "GtkSelectioData"
7661         (struct _GtkSelectionData): move the definition here.
7662
7663         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7664         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7665
7666         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7667
7668         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7669         (gtk_text_buffer_insert_range_interactive): implement
7670         (gtk_text_buffer_get_tags): Remove, replaced by
7671         gtk_text_iter_get_tags()
7672
7673         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7674         limit parameter, to avoid infinite linear scan.
7675         (gtk_text_iter_backward_search): Add search limit
7676         (gtk_text_iter_forward_find_char): Add search limit
7677         (gtk_text_iter_backward_find_char): Add search limit
7678
7679 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7680
7681         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7682         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7683         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7684         gdk/linux-fb/gdkwindow-fb.c:
7685         use g_object_new() instead of g_type_create_instance() which
7686         is a private function for fundamental type implementations.
7687
7688         * gdk/linux-fb/gdkinput-ps2.c:
7689         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7690         instead just store the current modifier state. Add a (somewhat broken)
7691         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7692         Rename exported function gdk_input_ps2_get_mouseinfo to
7693         gdk_input_get_mouseinfo.
7694
7695         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7696         gdk/linux-fb/gdkwindow-fb.c:
7697         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7698         
7699
7700 2000-11-02  Havoc Pennington  <hp@redhat.com>
7701
7702         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7703         use stock buttons. Should be 100% source compatible, appropriate
7704         filesel fields now point to dialog->vbox and dialog->action_area.
7705         On the bizarre side, dialog->action_area and filesel->action_area
7706         are not the same widget.
7707         (gtk_file_selection_init): Put some padding around the selection
7708         entry, so it isn't touching the GtkDialog separator.    
7709
7710         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7711         use stock buttons, etc. Should also be source compatible.
7712         Set the dialog default title in _init not _new().
7713         
7714         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7715         Use stock buttons; don't put a button box inside the existing
7716         dialog button box. Don't bother with push/pop colormap anymore.
7717
7718         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7719         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7720         for message dialog, and necessary for the font selection and color
7721         selection with help and apply buttons.
7722         
7723         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7724         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7725         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7726         between buttons, put less padding around the action area.
7727         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7728         This will also exit the loop if the widget is hidden.
7729         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7730         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7731         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7732         special-case delete event.
7733
7734         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7735         formatting
7736         
7737 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7738
7739         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7740         button to temporarily disable position recording in the
7741         "saved position" test.
7742
7743 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7744
7745         * gtk/gtkthemes.c: added compat code that temporarily implements
7746         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7747         going to be revamped by owen's upcoming GtkModule patches, but
7748         untill then people want gtk to build, right? ;)
7749
7750 2000-11-04  Havoc Pennington  <hp@pobox.com>
7751
7752         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7753         list
7754
7755         * docs/Changes-2.0.txt: Add note about
7756         gtk_container_get_toplevels()
7757
7758         * gtk/gtktextview.h: formatting
7759         
7760         * gtk/gtktextview.c: don't start descriptions with "Returns",
7761         confuses gtk-doc
7762
7763 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7764
7765         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7766         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7767
7768 2000-11-03  Havoc Pennington  <hp@redhat.com>
7769
7770         * gtk/gtktexttagtable.c: Docs
7771         (gtk_text_tag_table_size): return a signed int
7772
7773         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7774         (gtk_text_tag_event): make the event_object a GObject
7775
7776         * gtk/gtktextview.c: Write API docs for all functions.
7777
7778         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7779         for gtk_text_view_get_window_type() called on one of the private
7780         windows.
7781
7782         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7783         directly, call get_buffer() which demand-creates a default
7784         buffer. So gtk_text_view_new() can be used to create a view with a
7785         default buffer in it, if you just want an empty text box users can
7786         put data in. Useful for GUI builders also.
7787
7788 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7789
7790         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7791         the charset encodign portion MUST be in lowercase.
7792         * gtk/gtkrc.az: added file for Azeri language
7793
7794 2000-11-03  Havoc Pennington  <hp@redhat.com>
7795
7796         Get widgets working on the btree/buffer side. Display of them 
7797         still doesn't work.
7798         
7799         * gtk/gtktextview.c: start implementing child widget stuff
7800
7801         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7802
7803         * gtk/gtktextlayout.c: handle embedded widgets
7804
7805         * gtk/gtktextdisplay.c: handle embedded widgets
7806
7807         * gtk/gtktextchild.c: Implement all the child anchor goo
7808
7809         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7810         function
7811
7812         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7813         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7814         creating a child anchor or a pixbuf segment.
7815         (gtk_text_btree_create_child_anchor): new function
7816         (gtk_text_btree_unregister_child_anchor): new function
7817
7818         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7819         allocate_child signal on GtkTextLayout
7820
7821         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7822         values
7823         (gtk_text_iter_get_child_anchor): new function
7824
7825         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7826         default handler for the changed signal, which calls
7827         gtk_text_buffer_set_modified(), instead of just always emitting
7828         changed then calling set_modified() manually. I guess this is
7829         maybe more flexible. It seems logical.
7830
7831 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7832
7833         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7834         now.
7835
7836         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7837
7838 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7839
7840         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7841         been marked static.
7842
7843 2000-11-02  Havoc Pennington  <hp@redhat.com>
7844
7845         * gtk/testgtk.c (create_labels): had a test backward
7846
7847         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7848         fields, so the dest GC ends up with the correct clip origin, 
7849         etc. Fixes a bug where colored labels didn't redraw 
7850         properly.
7851
7852 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7853
7854         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7855         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7856         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7857         Add last argument to t_type_register_static call.
7858         
7859         * gdk/linux-fb/gdkdrawable-fb2.c:
7860         Add last argument to t_type_register_static call.
7861         export the get_image drawable virtual function.
7862
7863         * gdk/linux-fb/gdkimage-fb.c:
7864         Add last argument to t_type_register_static call.
7865         rename gtk_image_get to _gdk_fb_get_image and
7866         export it for use by gdkdrawable-fb2.
7867
7868         * gdk/linux-fb/gdkprivate-fb.h:
7869         export _gdk_fb_get_image.
7870
7871         * gdk/linux-fb/gdkselection-fb.c:
7872         Add new api call stubs.
7873
7874         * gtk/Makefile.am:
7875         Missing ( in linux-fb part.
7876
7877         * modules/linux-fb/Makefile.am:
7878         Must link with gdk_pixbuf or get unresolved symbol.
7879
7880 2000-11-01  Havoc Pennington  <hp@pobox.com>
7881
7882         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7883         GTK_TYPE_TEXT_ITER and BOXED marshallers
7884
7885         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7886
7887         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7888         
7889         * gtk/gtk-boxed.defs: add GtkTextIter
7890
7891         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7892         properly use OBJECT and BOXED
7893
7894 2000-11-01  Havoc Pennington  <hp@redhat.com>
7895
7896         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7897
7898         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7899         before returning it. 
7900         
7901 2000-11-01  Havoc Pennington  <hp@redhat.com>
7902
7903         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7904         Clip the rectangle to be rendered to the drawable, since
7905         get_from_drawable() requires a region within the drawable
7906
7907 2000-11-01  Havoc Pennington  <hp@redhat.com>
7908
7909         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7910         from coordinates.
7911
7912 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7913
7914         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7915         it isn't NULL.
7916
7917 2000-11-01  Havoc Pennington  <hp@pobox.com>
7918
7919         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7920         on a label
7921         (gtk_label_finalize): unref the attr list if any.
7922
7923         * gtk/testgtk.c (create_get_image): close test on second click
7924         (make_message_dialog): close dialog if it exists
7925
7926         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7927
7928         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7929         gdk-pixbuf
7930
7931         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7932         from Pango markup format
7933         (gtk_label_set_markup_with_accel): ditto but with accelerator
7934         parsing
7935
7936         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7937
7938         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7939         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7940         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7941         call gdk_window_get_origin().
7942
7943         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7944         implement GDK_PIXBUF_ALPHA_FULL
7945         
7946 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7947
7948         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7949         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7950         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7951         multiple handlers respectively, instead of only treating the
7952         first handler found (bug reported by owen).
7953
7954 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7955
7956         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7957
7958         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7959
7960         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7961         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7962         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7963
7964         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7965         widget.  Needs writing someday.
7966
7967         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7968         the docs.
7969
7970 2000-10-30  Havoc Pennington  <hp@redhat.com>
7971
7972         * gtk/gtktextview.h, gtk/gtktextview.c:
7973         Rename delete_at_cursor delete_from_cursor, and 
7974         move to move_cursor.
7975
7976 2000-10-30  Havoc Pennington  <hp@redhat.com>
7977
7978         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7979         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7980         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7981         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7982         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7983         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7984         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7985         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7986         gtktexttypes.h, gtktextview.c, gtktextview.h:
7987
7988         Massive reindentation and reformatting. Arg alignment and comments
7989         still need fixing in various places.
7990
7991 2000-10-30  Havoc Pennington  <hp@redhat.com>
7992
7993         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7994         to be named insert_at_cursor and delete_at_cursor so C++ can
7995         handle them.
7996
7997 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7998
7999         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
8000         to get a double directory separator in case the home directory
8001         ends with one. This would cause trouble especially on Windows,
8002         where the path will be confused with the syntax for an an UNC
8003         (network share) path \\server\share\path.
8004         (gtk_rc_add_initial_default_files): Ditto.
8005
8006 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
8007
8008         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
8009
8010         * gtk/gtktextview.c: Use correct marshallers.
8011
8012 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
8013
8014         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
8015         use new iter stuff, and added all the appropriate signals et al.
8016
8017         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
8018         code is internal to gtk only.
8019
8020 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8021
8022         * gtk/gtk.def
8023         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
8024         glib-genmarshal etc.
8025
8026 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
8027
8028         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
8029         parallel builds.
8030
8031 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
8032
8033         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
8034
8035 2000-10-27  Robert Brady  <robert@suse.co.uk>
8036
8037         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
8038         en_GB (British), ia (Interlingua).
8039
8040 2000-10-26  Havoc Pennington  <hp@redhat.com>
8041
8042         * gtk/gtktextiter.c (my_strrstr): fix constness warning
8043
8044         Fixed output of:
8045         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
8046         
8047         * gtk/gtktextsegment.c (char_segment_new): rename
8048         (_char_segment_new_from_two_strings): rename
8049         (_toggle_segment_new): rename
8050         
8051         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
8052         (make_clipboard_widget): make it static
8053         (text_get_func): static
8054         (text_clear_func): static
8055
8056         * gtk/gtkcolorsel.c (adjustment_changed): make this function
8057         static
8058         (hex_changed): make it static
8059         (hsv_changed): make it static
8060         (opacity_entry_changed): make it static
8061
8062         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
8063         (toggle_segment_check_func): rename with _gtk
8064
8065         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
8066         (_widget_segment_new): rename
8067         (_widget_segment_add): rename
8068         (_widget_segment_remove): rename
8069         (_widget_segment_ref): rename
8070         (_widget_segment_unref): rename
8071
8072         * gtk/gtktextmark.c (_mark_segment_new): Rename
8073         _gtk_mark_segment_new   
8074
8075 2000-10-26  Havoc Pennington  <hp@redhat.com>
8076
8077         * gtk/gtkmarshal.list: add new marshallers used by the text widget
8078         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8079         types
8080
8081         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
8082         marshaller types
8083
8084         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
8085         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
8086         license on these files.
8087
8088         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
8089         work.
8090
8091         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
8092         runtime random number different for each tree, instead of 
8093         a constant I made up.
8094
8095 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
8096
8097         * gtk/Makefile.am: buncha cleanups, kludged build sources
8098         dependencies with a Makefile: oldest-source-stamp dependancy
8099         for the moment. automake is really fighting us here, with
8100         intentionally not allowing user-defined rules or dependancies
8101         prior to it's -include $(DEP_FILES) statement. sucks rocks!
8102
8103         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
8104         to public headers. tehy have a comment stating that they are
8105         "semi-public" aren't included by gtk.h and if enums popup there,
8106         they can be /*< skip >*/-ed.
8107
8108         * gtk/gtktextlayout.h: 
8109         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
8110         added LGPL... <SIGH>
8111
8112 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
8113
8114         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
8115         GtkTreeIter.  Added iterators everywhere.
8116
8117         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
8118
8119         * gtk/gtktreeviewselection.c: Changed to use the iterators.
8120
8121         * gtk/gtktreestore.c: Changed to use the iterators.
8122
8123         * gtk/gtkliststore.c: Commented out the code.  Will convert to
8124         iterators tomorrow.
8125
8126         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
8127         iterators tomorrow.
8128
8129         * gtk/treestoretest.c: Changed to use iterators.
8130
8131         * demos/testgtk/main.c: Moved to use the new iterator system.
8132
8133 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8134
8135         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8136         localization misbehaviour.
8137
8138         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8139         a useless type without copy/free.
8140
8141         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8142         of GTK_TYPE_CTREE_NODE.
8143
8144 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8145
8146         * gtk/gtksignal.c:
8147         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8148         applicable.
8149
8150         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8151         gtk_selection_data_copy and gtk_selection_data_free
8152         do GtkSelectionData work as params in signals.
8153
8154 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8155
8156         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8157         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8158         couldn't they at least give it a non-standard name?
8159         
8160         * gtk/gtktextlayout.c: arg! yet another implementation of
8161         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8162
8163         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8164         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8165         home. now i know this _is_ a conspiracy.
8166
8167         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8168         ::state-changed.
8169
8170         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8171         (gtk_accel_group_create_add): marshaller signature fixups.
8172
8173         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8174         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8175
8176         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8177         anymore.
8178
8179 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8180
8181         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8182         due to the signal system changes, it wouldn't build currently. to
8183         be fixed soon.
8184
8185         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8186
8187         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8188         so it needs gtk_marshal_VOID__ENUM() instead of
8189         gtk_marshal_NONE__UINT().
8190
8191         * gdk/gdk*.c: adapted type registration functions.
8192
8193         * gtk/gtkbindings.c:
8194         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8195         gone.
8196
8197         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8198
8199         * gtk/gtkobject.c:
8200         (gtk_object_destroy):
8201         (gtk_object_shutdown): fixed recursion guards. basically we have to
8202         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8203         is called during ::destroy, and avoid recursion there.
8204
8205         * gtk/gtktypeutils.c:
8206         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8207         boxed_copy/boxed_free. this needs a more general solution based on a
8208         publically installed code-generator utility.
8209
8210         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8211         glib's gobject has support for that now.
8212         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8213
8214 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8215
8216         * gtk/gtksignal.[hc]:
8217         * gtk/gtkmarshal.[hc]:
8218         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8219         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8220         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8221         care of that.
8222
8223         * *.c: marshaller name fixups.
8224
8225         * gtk/gtkmarshal.list: added a comment briefing the format.
8226
8227 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8228
8229         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8230         compatibility macros here now. more specifically, most of
8231         the API is preserved (yes, _most_, nonwithstanding the
8232         following exceptions listed, the API is stil lHUGE ;)
8233         things that got removed completely:
8234         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8235         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8236         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8237         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8238         gtk_signal_remove_emission_hook().
8239         non-functional functions variants:
8240         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8241         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8242         not supported anymore.
8243         (gtk_signal_compat_matched): new internal function to aid
8244         implementation of the compatibility macros, it  provides
8245         functionality to block/unblock/disconnect handlers based
8246         on func/data.
8247
8248         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8249
8250         * *.c: adaptions to new type registration API signatures.
8251
8252 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8253
8254         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8255
8256 2000-10-25  Robert Brady  <robert@suse.co.uk>
8257
8258         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8259         gdk_property_delete): If window == NULL, assume the root window.
8260         (restoring the behaviour that was in 1.2).
8261         
8262         * gtk/testtext.c (save_buffer): Allow creation of new files when
8263         saving.
8264
8265         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8266         calls to read().
8267
8268 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8269
8270         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8271
8272         * gdk/win32/gdkdrawable-win32.c
8273         * gdk/win32/gdkimage-win32.c
8274         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8275         X11 backend.
8276
8277         * gdk/win32/gdkcc-win32.c
8278         * gdk/win32/gdkcolor-win32.c
8279         * gdk/win32/gdkfont-win32.c
8280         * gdk/win32/gdkinput-win32.c
8281         * gdk/win32/gdkmain-win32.c
8282         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8283
8284 2000-10-24  Havoc Pennington  <hp@redhat.com>
8285
8286         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8287         it a static function
8288
8289         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8290         redraw text when a tag is applied to it.
8291
8292         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8293         (gtk_text_tag_affects_nonsize_appearance): private functions to
8294         see if a tag requires various kinds of redraw/layout to be queued
8295         up.
8296
8297         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8298
8299         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8300         at the start of the buffer, so search works by default
8301
8302         * gtk/gtktextiter.c (lines_match): init match_start always
8303
8304         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8305         function, get iter at a line + a byte index
8306
8307         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8308         to set byte position within a line
8309         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8310
8311 2000-10-23  Havoc Pennington  <hp@redhat.com>
8312
8313         * gtk/testtext.c: Re-enable the "find" dialog
8314
8315         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8316         
8317         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8318         the arguments to gdk_draw_drawable were in the wrong order
8319         (gdk_window_paint_init_bg): This function was ignoring the
8320         init_region, instead of clipping to it, so the entire backing
8321         pixmap was cleared on every begin_paint()
8322         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8323         was in here again, the loop kept using the same GtkWindowPaint
8324         over and over.
8325         (gdk_window_begin_paint_region): Fix a bug where we had two
8326         x_offset instead of x_offset and y_offset
8327
8328         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8329         before we get the image.
8330         (gdk_draw_drawable): get the composite before we draw the drawable.
8331         (gdk_drawable_real_get_composite_drawable): default
8332         get_composite_drawable implementation that returns the drawable 
8333         itself
8334
8335         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8336         get_composite_drawable virtual function
8337
8338         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8339         list-walking bug
8340
8341         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8342         make this work if the source drawable is a GdkDrawableImplX11
8343         instead of a public drawable type. This is really broken; the
8344         problem is that GdkDrawable needs a virtual method get_xid(), but
8345         of course that doesn't work in practice. Enter RTTI.
8346
8347         Also, improve mismatched depth message.
8348
8349         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8350         GdkPixmap
8351
8352         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8353         install _gdk_x11_get_image as our implementation of get_image
8354         
8355         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8356         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8357
8358         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8359         gdk_drawable_get_image
8360
8361         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8362
8363         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8364         get_image
8365
8366         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8367         trailing semicolon after for loop
8368
8369 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8370
8371         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8372         where font_desc for widget's context lagged widget's font_desc by
8373         one step.
8374
8375 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8376
8377         * gdk/win32/gdkgc-win32.c
8378         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8379
8380         * gtk/makefile.mingw.in
8381         * gtk/gtk.def: Updates.
8382
8383         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8384         library.
8385
8386         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8387
8388         * gtk/makefile.msc: Remove
8389
8390         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8391
8392         * gtk/Makefile.am: Add it.
8393
8394         * configure.in: Generate it.
8395
8396         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8397         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8398         something even if not implemented, to satisfy picky MSVC.
8399
8400         Patches by Hans Breuer:
8401         
8402         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8403         SetBkMode() and SetTextAlign() before calling
8404         pango_win32_render().
8405
8406         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8407         Set hcliprgn to NULL after destroying it.
8408         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8409
8410         * gdk/win32/gdkgeometry-win32.c
8411         (_gdk_windowing_window_queue_antiexpose): More effective
8412         implementation.
8413
8414         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8415         depth as default, not the visual's.
8416
8417         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8418         against empty title.
8419
8420         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8421         IMAGE_PRIVATE_DATA.
8422
8423         * gdk/win32/gdkimage-win32.c: Use it.
8424
8425 2000-10-22  Robert Brady  <robert@suse.co.uk>
8426
8427         * configure.in: Check for bind_textdomain_codeset
8428
8429         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8430         present, make use of it.
8431
8432         Add a translatable string "default:LTR" which, if translated
8433         to "default:RTL", will cause the default direction to be
8434         Right-to-Left.
8435
8436         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8437         direction if marked as flippable.
8438
8439         * gtk/gtkhscale.c: Mark widget as flippable.
8440         
8441 2000-10-04  Havoc Pennington  <hp@redhat.com>
8442
8443         * gtk/testgtk.c (create_buttons): create some stock buttons
8444         with the default accel group
8445         (create_image): test some new GtkImage features
8446         (make_message_dialog): test GtkMessageDialog
8447         (create_modal_window): fix someone's bizzarro indentation
8448
8449         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8450         GTK_WIN_POS_CENTER_ON_PARENT. 
8451         Add "destroy with parent" setting, which means the window goes
8452         away with its transient parent.
8453         (gtk_window_get_default_accel_group): get the default accel group
8454         for the window.
8455         (gtk_window_set_destroy_with_parent): set/unset destroy with
8456         parent flag
8457         (gtk_window_read_rcfiles): invalidate icon set caches
8458         after reloading rcfiles 
8459
8460         * gtk/gtkenums.h (GtkWindowPosition): add
8461         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8462         on its parent window when the dialog is mapped for the first time.
8463
8464         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8465         a simple message dialog class
8466         
8467         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8468         handler to emit response signal, and maybe later it would
8469         honor a hide_on_delete flag - though that isn't there yet.
8470         Set border width on the vbox to 2, so we get some padding.      
8471         Use a button box for the action area.
8472         (gtk_dialog_key_press): synthesize a delete event if Esc
8473         is pressed and the GtkWidget key press handler didn't 
8474         handle the escape key.
8475         (gtk_dialog_new_with_buttons): new function creates a dialog
8476         with some default buttons in it.
8477         (gtk_dialog_add_action_widget): add an activatable widget
8478         as a button in the dialog - you can also add a non-activatable
8479         widget by accessing the action area directly.
8480         (gtk_dialog_add_button): add a simple button - stock ID or 
8481         label - to the action area
8482         (gtk_dialog_response): emit response signal
8483         (gtk_dialog_run): block waiting for the dialog, return 
8484         the response. Override normal delete_event behavior, so that 
8485         delete_event does nothing inside gtk_dialog_run().
8486
8487         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8488         emitted when an action widget is clicked or the dialog gets
8489         delete_event
8490
8491         * gtk/gtk.h: add gtkmessagedialog.h
8492
8493         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8494
8495 2000-10-18  Havoc Pennington  <hp@redhat.com>
8496
8497         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8498         where any number of empty lines would get skipped
8499
8500         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8501         edge.
8502
8503         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8504         warning about invalid iterators (explain more thoroughly)
8505         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8506
8507         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8508         big
8509
8510         * demos/*.c: Add error handling
8511
8512         * gtk/gtktextbuffer.c: don't modify const iterators
8513
8514         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8515
8516         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8517         on file load
8518
8519         * gtk/gtkiconfactory.c: Update to reflect addition of error
8520         handling to gdk-pixbuf loaders
8521
8522 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8523
8524         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8525         move to new modularized testgtk.
8526
8527 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8528
8529         * gtk/gtktreeview.c: Draw the arrows correctly.
8530
8531         * gtk/gtktreemodel.c: Added user docs.
8532
8533         * gtk/gtk.h: remove gtktreedatalist.h.
8534
8535         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8536         parent when generating my type.
8537
8538         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8539         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8540
8541 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8542
8543         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8544         GtkTreeModel from object to interface.
8545
8546 2000-10-16  Havoc Pennington  <hp@redhat.com>
8547
8548         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8549         compilation
8550
8551 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8552
8553         * gtk/gtktreeselection.c: Add API documentation to all public
8554         functions.
8555
8556         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8557         functions.
8558
8559 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8560
8561         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8562         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8563         docs to all public functions.
8564
8565         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8566         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8567         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8568         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8569         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8570         issue.
8571
8572 2000-10-14  Robert Brady  <robert@suse.co.uk>
8573
8574         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8575
8576 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8577
8578         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8579         values other then G_TYPE_STRING.
8580         * gtk/gtktreeselection.c: Minor commenting updates.
8581         * gtk/gtktreeview.c: Format updates.
8582
8583 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8584
8585         * README.win32: Update.
8586
8587         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8588         lines that had been deleted by mistake (?).
8589
8590         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8591         also the case fg==white and bg==black (but still not randomly
8592         coloured cursors). Thanks to Wolfgang Sourdeau.
8593
8594         * gdk/win32/*.c: Silence gcc -Wall.
8595
8596         * gtk/gtk.def: Add missing entry points.
8597
8598         Fixes by Hans Breuer:
8599
8600         * gdk/makefile.msc
8601         * gdk/win32/makefile.msc: Update.
8602
8603         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8604         some MSVC thing, presumably), cause breakpoint on failures. Add
8605         GDK_NOR case. Call g_log_set_always_fatal.
8606
8607         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8608         should be pased by reference.
8609         
8610         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8611         
8612         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8613
8614         * gdk/win32/gdkevents-win32.c
8615         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8616
8617         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8618         implementation object.
8619
8620         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8621         not just windows.
8622         
8623         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8624         Use the wrapper object.
8625         
8626 2000-10-06  Havoc Pennington  <hp@redhat.com>
8627
8628         * Makefile.am (SRC_SUBDIRS): contrib subdir
8629
8630         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8631         so it can be used in Xlib version
8632
8633         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8634         tree
8635
8636         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8637         change from 1.0 tree that returns first frame of animation
8638         if the loaded file is an animation.
8639
8640         * contrib: add new directory to hold stuff that comes with GTK+
8641         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8642         
8643         * configure.in: add contrib/*
8644
8645 2000-10-05  Havoc Pennington  <hp@redhat.com>
8646
8647         * demos/testpixbuf-save.c: add pixbuf save test
8648
8649         * demos/Makefile.am: add testpixbuf-save.c
8650
8651 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8652
8653         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8654         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8655         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8656         * gtk/gtktreeselection.[ch]: Replaced
8657         "node_selected"/"node_unselected" signal with "selection_changed"
8658         signal.
8659
8660 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8661
8662         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8663         tree widget.
8664
8665 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8666
8667         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8668         drawing.
8669
8670 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8671
8672         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8673         Move list pointer forwards before removing item from
8674         list. (Crash reported by Salmaso Raffaele)
8675
8676         * gdk/gdkwindow.h: Remove spurious trailing ,
8677
8678         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8679         dependencies on uninstalled libraries, sorry folks.
8680
8681 2000-10-04  Havoc Pennington  <hp@redhat.com>
8682
8683         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8684         gtk/gtkiconfactory.c: Fix copyrights    
8685
8686         * demos/testpixbuf.c: add inline pixbuf test
8687         
8688 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8689
8690         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8691         Add gdk_window_iconify.
8692
8693         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8694         (gdk_window_set_geometry_hints): Add win_gravity
8695         to geometry structure.
8696
8697         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8698         Implement _NET_WM_PING.
8699
8700         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8701         Set _NET_WM_PID on the client leader.
8702
8703         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8704         Handle UTF-8 better.
8705
8706         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8707         UTF-8 better, set _NET_WM_NAME as well. Only set
8708         icon name if it hasn't previously been explicitely 
8709         set.
8710
8711 2000-10-03  Havoc Pennington  <hp@redhat.com>
8712
8713         * gtk/testtextbuffer.c: clean up trailing whitespace,
8714         add extensive tests for tag toggle iteration.
8715         
8716         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8717         distance
8718
8719         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8720         optimize case where the tag root is on level 1
8721         (gtk_text_line_previous_could_contain_tag): attempt to implement
8722         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8723         functionality
8724
8725         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8726         Implement this, though not very efficiently.
8727
8728         * gtk/gtktextiterprivate.h: reformat
8729
8730         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8731         iterator
8732
8733         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8734         this to properly revalidate the iterators.
8735
8736         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8737         properly at the end of the line (and therefore on empty lines)
8738
8739         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8740         maybe we should return a value...
8741
8742 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8743
8744         * config.h.win32: Guard definition of alloca(). glib.h now handles
8745         that.
8746
8747         * gdk/gdk.def
8748         * gtk/gtk.def: Add new entry points.
8749
8750         Changes just to make GTK+ build without errors on Win32. No hope
8751         of it working in its current state, though...:
8752         
8753         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8754         some functions from the X11 backend, just to make GTK+ build.
8755
8756         * gdk/makefile.mingw.in
8757         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8758         number. Add new object files.
8759
8760         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8761         GetMessageTime to get timestamp (where on X11 uses
8762         gdk_x11_get_server_time()).
8763
8764 2000-10-02  Havoc Pennington  <hp@pobox.com>
8765
8766         * gtk/gtktextview.c: text_window_* weren't static and should have
8767         been.
8768         Start work on child widgets; not yet complete, syncing to 
8769         office computer.
8770
8771         * gtk/gtktextchild.h: change this to contain a public interface,
8772         starting work on child interfaces.
8773         * gtk/gtktextchildprivate.h: move private interfaces here
8774
8775         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8776
8777         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8778         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8779         gtk/gtktextmark.c: copyright notices
8780
8781         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8782         internal functions      
8783
8784         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8785         internal function
8786
8787         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8788         Reformatting    
8789
8790 2000-09-30  Havoc Pennington  <hp@pobox.com>
8791
8792         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8793         NULL start/end pointers
8794
8795         * gtk/gtktextbuffer.c: Write some docs
8796         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8797         NULL, so you can just check whether there's a selection.        
8798
8799         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8800         cleanup_line or segments_changed ourselves, it gets done 
8801         in unlink_segment
8802
8803         * gtk/gtktextmark.h:
8804         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8805         
8806         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8807
8808         * gtk/gtktextmark.c: delete some more old Tk cruft
8809
8810         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8811         mark before removing it, so we can emit MARK_DELETED with a valid
8812         pointer.
8813         (gtk_text_buffer_mark_set): hold ref across signal emission
8814
8815         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8816         whining about attempts to delete special marks
8817
8818         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8819         underscore, since it's internal.
8820
8821         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8822         now implemented in terms of iterators in gtktextiter.h
8823
8824         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8825         New function, destructively sets contents of buffer. Also 
8826         a convenient way to clear the buffer by setting text to ""
8827
8828         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8829         multiline string literal
8830
8831         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8832         text changes.
8833
8834         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8835         is not dereferenceable
8836         (gtk_text_iter_forward_lines): fix return value
8837
8838 2000-09-29  Havoc Pennington  <hp@redhat.com>
8839
8840         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8841
8842         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8843         that set border window size to have nicer name
8844         (gtk_text_view_mark_set_handler):  Fix this to have the 
8845         right signature.
8846
8847         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8848
8849         * gtk/testtext.c: Update with API changes, put line numbers on 
8850         both sides.
8851         
8852         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8853         with this
8854
8855         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8856         pixbuf; delete a big block of #if 0 Tk code
8857
8858         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8859         insert_pixmap with insert_pixbuf
8860
8861 2000-09-29  Martin Baulig  <baulig@suse.de>
8862
8863         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8864         confusion with the GdkPixbuf of the GNOME 1.x platform.
8865
8866 2000-09-29  Havoc Pennington  <hp@pobox.com>
8867
8868         * gtk/gtktextview.c: Implement the side windows.
8869
8870         * gtk/testtext.c: Implement simple line numbering in the 
8871         left side window; seems to make scrolling sloooow. Oops.
8872         Also, cursor blink is for some reason causing redraws
8873         of the line numbers. Should investigate...
8874
8875 2000-09-28  Havoc Pennington  <hp@redhat.com>
8876
8877         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8878         scrolling child windows, and draw focus rectangle properly.
8879         
8880         (gtk_text_view_buffer_to_window_coords):
8881         Coordinate transformation to deal with all these freaking windows
8882         and offsets
8883         (gtk_text_view_window_to_buffer_coords): transform the other way
8884
8885         * gtk/testtext.c (create_buffer): Update to match Pango API change
8886
8887         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8888         anonymous tags
8889         (foreach_unref): don't emit remove signal from finalize, just
8890         set tag's parent to NULL
8891
8892 2000-09-26  Havoc Pennington  <hp@redhat.com>
8893
8894         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8895         Fix some warnings       
8896
8897 2000-09-26  Havoc Pennington  <hp@redhat.com>
8898
8899         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8900         headers into the private header list
8901
8902         * Makefile.am (pkgconfig_DATA): install pkg-config files
8903
8904         * configure.in: add pkg-config files
8905
8906         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8907
8908         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8909         outstanding icon caches on theme change.
8910
8911         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8912         important types:
8913
8914         (GtkIconSource): Specification for creating a pixbuf 
8915         appropriate for a direction/state/size triplet from 
8916         a source pixbuf or filename
8917
8918         (GtkIconSet): List of GtkIconSource objects that are used to
8919         create the "same" icon (e.g. an OK button icon), and cache for
8920         rendered icons
8921
8922         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8923         up the icon set for a given stock ID.  GTK maintains a stack of
8924         GtkIconFactory to search, and applications or libraries can add
8925         additional icon factories on top of the stack
8926         
8927         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8928         the set of GtkIconSource specified for a given stock ID into 
8929         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8930         RcStyle, under the specified stock ID.
8931
8932         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8933         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8934         This allows people to theme how prelight, insensitive, etc. are
8935         done.
8936
8937         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8938         icon factories for a style, and return the resulting 
8939         icon set if any.
8940
8941         (gtk_style_render_icon): Render an icon using the render_icon 
8942         method in the GtkStyleClass.
8943
8944         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8945         Use the style for a given widget to look up a stock ID, get the
8946         icon set, and render an icon using the render_icon method 
8947         of the style
8948
8949         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8950         (contains information about a stock item), the built-in stock item
8951         IDs, and functions to add/lookup stock items.
8952
8953         * gtk/stock-icons/*: Stock icons that come with GTK
8954
8955         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8956         a button based on a GtkStockItem
8957         (gtk_button_new_accel): Takes a uline string and accel group, and
8958         installs the accelerator.
8959
8960         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8961         image-display widget.
8962
8963 2000-09-25  Havoc Pennington  <hp@redhat.com>
8964
8965         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8966
8967         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8968         Fix a bug when removing node data, we didn't properly 
8969         re-splice the linked list after removing the data.
8970
8971         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8972         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8973
8974         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8975
8976         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8977         for the layout from the GtkTextTag.
8978
8979         * gtk/gtktexttypes.h: delete tab and search cruft, 
8980         remove g_convert() in favor of GLib version
8981
8982         * gtk/gtktexttypes.c: remove tab implementation from here,
8983         move to Pango
8984
8985         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8986         tab stuff using new PangoTabArray from Pango
8987
8988         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8989         unused border_width stuff
8990
8991 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8992
8993         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8994         glib) and now useless utf_to_latin1() latin1_to_utf()
8995
8996         * gtk/gtktextview.[ch]: Change ::move_insert and
8997         ::delete_text action signals to ::move and ::delete;
8998         create the signals with the right enumeration type,
8999         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
9000         C-v bindings, change Home, End to move to beginning/end
9001         of line, Add C-Home C-End to move to beginning/end
9002         of buffer. Change ::cut_text to ::cut_clipboard, etc;
9003         combine ::scroll_text into ::move; use new GtkSelectionData
9004         functions to simplify DND text handling.
9005         
9006         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
9007         deletion enumerations here, rename enumeration values to 
9008         be consistently plural.
9009
9010         * gtk/gtktextbuffer.c: Use new clipboard interfaces
9011         for cut/copy/paste and primary selection.
9012
9013         * gtk/gtktextbuffer.[ch]: Remove excess time and
9014         'interactive' arguments from cut/copy/paste;
9015         rename cut to cut_clipboard, etc; remove
9016         gtk_text_buffer_get_clipboard_contents().
9017
9018         * gtk/gtktextlayout.[ch]: Add 
9019         gtk_text_layout_move_iter_to_line_end() to move the iter to 
9020         line ends.
9021
9022         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
9023         Functions to set or get a UTF-8 string on the selection
9024         data.
9025
9026         * gtk/gtkclipboard.[ch]: New, simplified selection handling
9027         interfaces.
9028
9029         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
9030         created widgets - one of these is useless if we don't.
9031
9032         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
9033         a public function clear all targets registered for the
9034         widget.
9035
9036         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
9037         Never call gtk_widget_realize() - that was just asking
9038         for bizarre side-effects.
9039
9040         * gtk/gtkselection.c (gtk_selection_owner_set): Call
9041         gdk_selection_owner_set even if the widget is the
9042         same so that we reliably update the timestamp on
9043         the server.
9044
9045         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
9046         gdk_x11_get_server_time() function.
9047         
9048         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
9049         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
9050         Add some tricky filtering on serial numbers for
9051         selection clear events to fix up long-standard
9052         race condition FIXME's in gtkselection.c.
9053
9054         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
9055         routines to convert from utf8 to compound text or
9056         STRING and from a text property to UTF-8.
9057
9058         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
9059         a convenience function gdk_get_current_event_time().
9060
9061         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
9062         and free selection_data->data properly
9063
9064 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
9065
9066         * gtk/gtkthemes.c: Remove some unecessary includes.
9067
9068 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
9069
9070         * gtk/gtktextdisplay.c
9071         * gtk/gtktextlayout.c
9072         * gtk/gtktexttag.c
9073         * gtk/gtktexttag.h
9074         * gtk/testtext.c: Change the overstrike property to strikethrough,
9075         to closer match pango.
9076
9077 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
9078
9079         * gtk/gtktextview.c: Fix up visibility so that focus,
9080         cursor_visible and blink interact properly.  Reenable cursor blink
9081         which had been roughly disabled. Make blink and focus
9082         properly per-view.
9083
9084         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
9085         Add a flag for whether to display insertion cursor and
9086         a function to set the flag.
9087
9088         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
9089         get_line_y() to get_line_yrange(), to be a bit more generally
9090         useful.
9091
9092 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
9093
9094         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
9095           do stop_navigating_submenu, to clear last timeout properly.
9096           Also in gtk_menu_motion_notify move ignore_enter above
9097           the conditional to make it always happen as suggested by Owen
9098
9099 2000-09-07  Tor Lillqvist  <tml@iki.fi>
9100
9101         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
9102
9103         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
9104         w32api headers.
9105
9106         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
9107         declarations.
9108
9109         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
9110         (gdk_win32_get_colormap): A line had been deleted by mistake.
9111
9112         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
9113         (gdk_event_translate): Handle more virtual keycodes to be able to
9114         generate GDK events for Control-comma, Control-period, etc.
9115
9116         * gtk/gtk.def: Add some missing entry points.
9117
9118 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
9119
9120         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
9121         Doc comment fixing. (Mostly non-matching parameter names.)
9122
9123         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
9124         comments a little to avoid looking like a doc comment.
9125
9126         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
9127         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
9128         conversions be changed to GError?)
9129
9130         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
9131         Move private #defines into .c file.
9132
9133         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9134         order of argument addition, remove duplicates.
9135
9136         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9137         parent class is FrameClass, not BinClass.
9138
9139         * gtk/gtk.h: Add gtkinvisible, which was missing.
9140         (It's occasionalyl useful for client apps, if seldom.)
9141
9142         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9143         #define.
9144
9145 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9146
9147         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9148         coordinates when creating window, instead of GDK-space
9149         coordinates. (Avoid BadValue on too large windows.)
9150
9151 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9152
9153         * configure.in (use_mmx_asm): Remove conftest* after use along the
9154         lines of AC_TRY_COMPILE.        
9155         
9156         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9157         of g_dirname, which is deprecated.
9158         (gtk_rc_parse_any): Removed calls to
9159         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9160
9161         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9162         Removed calls to g_hash_table_{freeze,thaw}, as they are
9163         deprecated now.
9164
9165         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9166         instead of g_basename.
9167         
9168 2000-09-04 Elliot Lee <sopwith@redhat.com>
9169         
9170         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9171         ANSI warning.
9172
9173 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9174
9175         * gtk/gtkwidget.h:  Add some documenting comments about 
9176           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9177           just as owen said on irc.
9178
9179         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9180           set HAS_DEFAULT.  Only set it if there isn't another window
9181           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9182           it if the widget is not the focused window with RECEIVES_DEFAULT.
9183           This fixes weird double default bugs in dialogs which has things
9184           call gtk_window_set_default at times.
9185
9186 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9187
9188         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9189         Nils Barth and David Santiago to improve submenu
9190         navigation. The patch does this by creating a triangular
9191         region from the point where the pointer leaves the
9192         menu to the submenu.  While the pointer is in
9193         that region and a timeout has not expired, events 
9194         that would cause the active submenu to change are
9195         ignored.
9196
9197 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9198
9199         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9200         moving a toplevel window immediately after sizing it would
9201         result in it being sized back to the old size since 
9202         impl->width, impl->height aren't updated until we hear
9203         back from the server. There is still a (longstanding) bug
9204         here that gdk_window_get_size() will give the wrong size
9205         until we do hear back.
9206
9207 2000-08-31  Havoc Pennington  <hp@redhat.com>
9208
9209         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9210         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9211         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9212         Rename GtkTextStyleValues to GtkTextAttributes
9213
9214 2000-08-31  Havoc Pennington  <hp@pobox.com>
9215
9216         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9217         for rapid testing whether an iterator is the end iterator
9218         (gtk_text_btree_new): init end line cache
9219         (gtk_text_line_is_last): use fast cached line to 
9220         see if we're the last line.
9221         (get_last_line): use cached line here too, should 
9222         speed up some random unrelated code.
9223         
9224 2000-08-30  Havoc Pennington  <hp@pobox.com>
9225
9226         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9227         signals.
9228
9229         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9230         delete_text signals. This allows the signals to be used for
9231         implementing undo.
9232
9233         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9234         provide "interactive" argument when emitting insert_text or
9235         delete_text signal.
9236         
9237 2000-08-30  Havoc Pennington  <hp@pobox.com>
9238
9239         * gtk/gtktextbuffer.c: Docs
9240
9241 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9242
9243         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9244         from switch statements, since Tor removed the enumeration
9245         value.
9246         
9247         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9248         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9249
9250 2000-08-29 Elliot Lee <sopwith@redhat.com>
9251         * */*.h: Use G_GNUC_CONST.
9252
9253 2000-08-27  Havoc Pennington  <hp@pobox.com>
9254
9255         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9256         minor indentation fixes, inserted some FIXME about stuff I
9257         realized was broken while documenting it.
9258         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9259         GTK convention  
9260
9261 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9262
9263         * gtk/testgtk.c (create_styles): Fix double free of
9264         font desc.
9265
9266 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9267
9268         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9269         
9270         * gtk/testgtk.c (create_styles): Add a test for modifying
9271         the style through gtk_widget_modify_*.
9272
9273         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9274         a function to get the current modifier style.
9275
9276         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9277         of the passed in GtkRcStyle instead of ref'ing it.
9278
9279         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9280
9281 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9282
9283         * gdk/gdkimage.h
9284         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9285         shared memory image+pixmap GdkImage type, or
9286         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9287         I am dropping that.
9288
9289         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9290         actually call gtk_init_abi_check(), passing also
9291         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9292
9293         * gtk/gtk.def
9294         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9295         New functions, used to check that the GTK+-using code has been
9296         compiled using the correct compiler and switches. In particular,
9297         with gcc one has to use the -fnative-struct switch as GTK+ is
9298         compiled with that.
9299
9300 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9301
9302         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9303         ->prev fields when merging lists. (Found simultaneously
9304         by Pawel Salek and Jakub Jelinek)
9305
9306 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9307
9308         * gdk/gdk.def
9309         * gtk/gtk.def: Add missing entries.
9310
9311         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9312         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9313
9314         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9315         function. Dummy implementation at this point.
9316
9317         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9318         rules. Undefine GTK_COMPILATION when compiling the test programs.
9319         
9320         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9321
9322 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9323
9324         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9325         to convert back and forth from UTF-8 and the "system" (or "current
9326         locale") charset when necessary. Indentation/spacing cleanup.
9327
9328 2000-08-10  Havoc Pennington  <hp@redhat.com>
9329
9330         * Makefile.am (snapshot): Change the format of the snapshot
9331         version to match glib
9332
9333         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9334         from EXTRA_DIST since it doesn't seem to exist
9335
9336 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9337
9338         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9339         version of the directory name (not the UTF-8 one) when building
9340         the path name to stat().
9341
9342 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9343
9344         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9345         PANGO_ATTR_SHAPE set.
9346
9347 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9348
9349         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9350         Peter Osterlund to simplify the code while keeping the
9351         functionality the same.
9352
9353 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9354
9355         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9356         is_viewable() test further inside the function, since removing the 
9357         window from the redraw list without clearing ->update_area
9358         was also very broken.
9359
9360 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9361
9362         * configure.in: Check for <unistd.h>.
9363
9364 2000-08-01  Martin Baulig  <baulig@suse.de>
9365
9366         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9367         to display the message that this is a development version of GTK+.
9368
9369 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9370
9371         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9372         was depending on widget->allocation instead of the width of text_area,
9373         which was incorrect for subclasses like GtkSpinButton.
9374
9375         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9376         with width == 1 tests that should be width == -1.
9377
9378 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9379
9380         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9381         (broken, Elliot, every single window blank on X) custom code with call
9382         to gdk_window_is_viewable() which a) prevents code duplicate and
9383         b) works. 
9384
9385 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9386
9387         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9388         to get the GDK_PARENT_ROOT() macro to work.
9389         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9390         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9391         of, windows that aren't shown.
9392         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9393         pointer grab stuff.
9394
9395 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9396
9397         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9398           s/gtk_main_iteration/g_main_iteration/
9399
9400           Did this already in change:
9401                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9402           don't know how it got reverted.
9403
9404 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9405
9406         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9407         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9408
9409         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9410         not gdk_pixbuf.
9411
9412 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9413
9414         * configure.in,po/{sp,sr}.po: Added Serbian files
9415
9416 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9417
9418         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9419
9420         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9421         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9422         GIOChannel implementation.
9423
9424         * gdk/win32/gdkinput.c
9425         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9426
9427         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9428         definition to match prototype.
9429
9430         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9431
9432 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9433
9434         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9435         function, to allow handling image formats that cannot be detected
9436         by looking at content alone.
9437
9438 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9439
9440         * docs/tutorial/*.gif *.jpg *.eps
9441           Update these to the same look-n-feel.
9442           Why does including images in DocBook suck so badly?
9443
9444 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9445
9446         * gtk/gtktable.c: applied patch from Phil Thompson
9447         <phil@river-bank.demon.co.uk> that enables space settings for
9448         the last row/columns as well.
9449
9450 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9451
9452         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9453         updates the license headers to the GNU Lesser General Public License,
9454         as well as updating the copyright year to 2000.
9455
9456 2000-07-26  Robert Brady  <rwb197@zepler.org>
9457
9458         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9459           and po/Makefile, was installing and looking for them under gtk20
9460           and gtk2 respectively.
9461
9462 2000-07-25  Havoc Pennington  <hp@redhat.com>
9463
9464         * gtk/testtext.c: Comment out some stuff that depends on the rest
9465         of my patches.
9466
9467 2000-07-25  Havoc Pennington  <hp@redhat.com>
9468
9469         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9470         buffer
9471
9472 2000-07-25  Havoc Pennington  <hp@redhat.com>
9473
9474         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9475         widget changes.
9476
9477         * gtk/gtktextview.h: To be consistent with usage of "line"
9478         throughout the API to mean "newline-terminated thingy", change
9479         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9480         to MOVEMENT_LINE.
9481
9482         (GtkTextView): Add flags for default editability, and whether to
9483         show the cursor. Add functions to get/set that. Add 
9484
9485         (gtk_text_view_get_iter_location): new function
9486
9487         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9488         gtktextlayout.h
9489         (g_convert): Add g_convert temporarily, will go in glib in a bit
9490         
9491         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9492         GtkTextTagTableForeach instead of brokenly using GHFunc.
9493         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9494
9495         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9496         moved to public header.
9497
9498         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9499         "invisible", since "elide" was a bad name.
9500         (gtk_text_tag_get_priority): Added
9501
9502         (GtkTextStyleValues): put this in public header, along with
9503         functions to use it.
9504
9505         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9506         longer include gtktextbtree.h.
9507
9508         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9509         gtk_text_mark_deleted
9510
9511         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9512         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9513         to make this possible. Now we only need to install
9514         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9515         (However the Makefile.am isn't changed yet because of the
9516         logistics of merging gtk-hp-patches piecemeal)
9517
9518         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9519         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9520         gtk_text_iter_get_line is now used in the public API for a
9521         different purpose.
9522
9523         * gtk/gtktextiter.h: Clean up function names to be more
9524         consistent. Always call char offset "offset" and byte index
9525         "index". A "line" is always a line number. 
9526
9527         (gtk_text_iter_is_last): new function, more efficient than 
9528         the existing way to check
9529         (gtk_text_iter_is_first): new function, also more efficient
9530
9531         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9532
9533         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9534         gtk_text_iter_forward_char, etc.
9535
9536         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9537         forward_find_tag_toggle, since this isn't a linear search
9538
9539         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9540
9541         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9542         New functions, search for a buffer substring.
9543
9544         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9545         interactive and default editable (since we need to store that info
9546         until we receive the selection data).
9547
9548         Remove all the _at_char and at_line etc. versions of functions;
9549         only have iterator versions.
9550
9551         Add _interactive() versions of functions, that consider the
9552         editability of text. (FIXME add interactive flag to the 
9553         insert/delete signals per Darin's suggestion)
9554
9555         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9556         tag table if necessary
9557
9558         Remove declaration of gtk_text_buffer_get_iter_from_string
9559
9560         (_gtk_text_buffer_get_btree): private/internal function, added.
9561         
9562
9563         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9564         (gtk_text_line_is_last): new function
9565
9566 2000-07-25  Havoc Pennington  <hp@redhat.com>
9567
9568         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9569         using GtkProgressBar. See Changes-2.0.txt for details.
9570
9571         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9572         "pulse_step" which are the equivalent of
9573         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9574         Implement new API.
9575         
9576         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9577         (use_text_format) to mark whether text set on the progress bar is
9578         a format string. Deprecate entire GtkProgress interface.
9579
9580         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9581         (gtk_progress_build_string): make this a no-op if use_text_format
9582         is FALSE
9583
9584         * docs/Changes-2.0.txt: Describe progress bar changes.
9585
9586 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9587
9588         * Makefile.am: Include the build directory.
9589
9590         * configure.in: Generate build/Makefile, build/win32/Makefile,
9591         gdk/, gdk/win32/, and gtk/makefile.mingw.
9592
9593         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9594         Add GETTEXT_PACKAGE.
9595         
9596         * gdk/gdk.def
9597         * gtk/gtk.def: Updates.
9598
9599         * gdk/gdkfont.h
9600         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9601         need them any longer.
9602
9603         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9604
9605         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9606         PANGOWIN32_LIBS and gdk_pixbuf.
9607
9608         * gdk/win32: Compiles, but no doubt doesn't work at all.
9609
9610         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9611
9612         * gdk/win32/gdkinput.c: New file, temporarily.
9613         
9614         * gdk/win32/gdkinput-win32.h: New file
9615
9616         * gdk/win32/gdkinputprivate.h: Remove.
9617
9618         * gdk/win32/gdkpango-win32.c: New file.
9619
9620         * gtk/makefile.mingw.in: New file
9621
9622         * gtk/makefile.cygwin: Removed
9623         
9624         * gtk/Makefile.am: Update accordingly.
9625
9626         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9627         made externally visible.
9628
9629         * gtk/gtkmain.c: Use it.
9630         
9631         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9632         is enough.
9633
9634         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9635
9636 2000-07-24 Elliot Lee <sopwith@redhat.com>
9637         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9638         individual backends already.
9639         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9640         again. Yes, there really is a good reason for this, if you are using the gdkregion
9641         internals, and if you're not, why do you care?
9642         * gdk/gdkwindow.c: Fix inverted condition
9643         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9644         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9645         * gtk/gtkrange.c: Redraw trough when moving.
9646         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9647         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9648
9649 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9650
9651         * configure.in: Check for mkstemp and sigsetjmp. Output
9652         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9653
9654         More work on GDK for Win32. Still in an intermediate state.
9655
9656         * gdk/makefile.cygwin
9657         * gdk/win32/makefile.cygwin: Removed.
9658         
9659         * gdk/makefile.mingw.in
9660         * gdk/win32/makefile.mingw.in: New files.
9661
9662         * gdk/Makefile.am
9663         * gdk/win32/Makefile.am: Generate and distribute them.
9664
9665         * gdk/win32/gdkwindow-win32.h
9666         * gdk/win32/gdkdrawable-win32.h
9667         * gdk/win32/gdkpixmap-win32.h: New files.
9668
9669         * gdk/win32/gdkcolor-win32.c
9670         * gdk/win32/gdkcursor-win32.c
9671         * gdk/win32/gdkdrawable-win32.c
9672         * gdk/win32/gdkgc-win32.c
9673         * gdk/win32/gdkimage-win32.c
9674         * gdk/win32/gdkprivate-win32.h
9675         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9676         Rename fields and variables called xcursor, xid, etc (these names
9677         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9678
9679 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9680
9681         * gtk/gtkentry.[ch]: Fix some problems with vertical
9682         alignment.
9683
9684         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9685         char/byte confusion.
9686
9687 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9688
9689         * gtk/gtktextview.c (changed_handler): Fix bug where
9690         redraw wasn't being done properly when height of
9691         dirty region changed.
9692
9693         * demos/Makefile.am: Remove various references to
9694         -lgmodule
9695
9696 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9697
9698         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9699         PangoAttrShape to reserve space for pixmaps, add 
9700         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9701         in the display functions.
9702         
9703         * gtk/testgtk.c (create_layout): Set some more exotic
9704         scrolled window options
9705
9706         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9707         Add function to set the shadow type of a window, to allow
9708         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9709         which don't draw their own frame.
9710
9711 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9712
9713         * docs/tutorial/package-db-tutorial.sh: New file for
9714           packaging DocBook format tutorial
9715
9716 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9717
9718         * docs/tutorial/gtk-tut.sgml: Minor updates
9719
9720         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9721
9722 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9723
9724         * gtk/gtksignal.c: Fix C++ comment.
9725
9726         * gtk/gtkimmulticontext.c
9727         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9728         don't return value from void functions.
9729
9730         * gtk/gtk.def: Add gtk_rc_style_unref.
9731
9732 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9733
9734         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9735         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9736         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9737         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9738         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9739         gtk/gtktypeutils.h: Include files outside of the extern "C"
9740         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9741         <vakatov@peony.nlm.nih.gov>.
9742
9743 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9744
9745         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9746           Completes first pass. Hurrah!
9747
9748 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9749
9750         * docs/tutorial/gtk-tut.sgml: More clean ups.
9751
9752 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9753
9754         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9755         paint the background of the text area which was accidentally
9756         removed at some point.
9757
9758         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9759           
9760          - Move most of the functionality from the theme vtable
9761            into GtkRcStyleClass and GtkStyleClass. The moved
9762            vtable functions were changed a bit in the move to
9763            work better in their new home.
9764
9765          - Get rid of the engine and engine_data fields from
9766            GtkRcStyle and GtkStyle; instead the theme
9767            engine derives theme-specific subclasses of GtkRcStyle
9768            and GtkStyle
9769
9770          - Add extra dlsym() found entry point to themes,
9771            theme_create_rc_style().
9772
9773         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9774         in gtk_style_real_copy.
9775
9776         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9777         to register a type associated with an engine. (The engine
9778         won't be unloaded as there is an instance of the type.)
9779
9780
9781 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9782
9783         * docs/tutorial/gtk-tut.sgml: Clean ups.
9784
9785 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9786
9787         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9788           of cleaning up to do.
9789
9790 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9791
9792         * gdk/testgdk.c: New file, quick hack to test backends for
9793         pixel-by-pixel correctness of the most simple graphic operations.
9794
9795 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9796
9797         * Really release 1.3.1
9798         
9799         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9800         include structure.
9801
9802 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9803
9804         * Released 1.3.1
9805
9806 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9807
9808         * gtk/gtktextlayout.c: use FALSE for size_only most
9809         of the time when calling gtk_text_layout_get_line_display()
9810         to avoid causing double reshapes when a redraw follows
9811         immediately after.
9812
9813 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9816         appropriate region and gdk_window_process_updates() so trough
9817         updating doesn't lag behind the window being scrolled.
9818
9819         * gdk/gdkgc.c: Make parent_class pointer static.
9820          
9821 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9822
9823         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9824         include <string.h>.
9825          
9826         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9827         cut-and-paste error in computing memory offset for 4 channels.
9828
9829 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9830
9831         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9832         gtk_rc_append_default_pixmap_path(), since it wasn't
9833         adding an interesting path and we don't have a meaningful
9834         default for this value.
9835
9836 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9837
9838         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9839         gtk-config to gtk-config-2.0 move gtk_.m4 to
9840         gtk-2.0.m4
9841
9842         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9843         gdk/Makefile.am demos/Makefile.am: Change 
9844         library names to libgtk-1.3.la, etc, so that we
9845         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9846
9847         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9848         gdk/Makefile.am gdk/x11/Makfile.am
9849         Move include files into /usr/include/gtk-2.0, 
9850         /usr/lib/gtk-2.0/include/
9851          
9852         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9853         gtk/gtkintl.h: Change package for gettext from 
9854         gtk+ to gtk20. Put hack in autogen.sh to modify
9855         po/Makefile.in.in after gettextize to make this
9856         possible.
9857
9858         * gtk+.spec: Some updates, not tested.
9859
9860         * gdk-pixbuf/Makefile.am: Move loaders into
9861         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9862
9863         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9864         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9865         to THEMENAME/gtk-2.0/. Move engine directory  to
9866         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9867         
9868 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9869
9870         Win32 changes, still doesn't build though.
9871
9872         * gdk/makefile.cygwin
9873         * gdk/win32/makefile.cygwin
9874         * gtk/makefile.cygwin: Updates.
9875
9876         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9877         default values for fg and bg pixel as X11 does (0 and 1), not
9878         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9879         Use 0 for pen width by default (treated as 1 anyway later, but for
9880         apps that might check the value in the GdkGC).
9881         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9882         interface to gdk_gc_predraw and _postdraw.
9883
9884         * gdk/win32/gdkwin32.h
9885         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9886
9887         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9888         extraneous semicolon.
9889
9890         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9891
9892         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9893         not the Win32 bitspixel value.
9894
9895         * gdk/win32/gdkcc-win32.c:
9896         * gdk/win32/gdkcolor-win32.c 
9897         * gdk/win32/gdkprivate-win32.h
9898         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9899         GDK object structure.
9900
9901 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9902
9903         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9904         * docs/tutorial/gtk_tut_it.sgml (name): 
9905         * docs/tutorial/gtk_tut_fr.sgml (name): 
9906         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9907         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9908
9909 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9910
9911         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9912           small changes.
9913
9914 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9915
9916         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9917         a bug here, never been here and never fixed anything ;(
9918         (don't segfault if tree->root_tree is NULL, which happens prior
9919         to widget realization, but puke instead).
9920
9921 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9922
9923         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9924         add the necessary tokens.
9925
9926         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9927         (gtk_rc_style_to_style): copy thicknesses.
9928         (gtk_rc_init_style): apply thicknesses.
9929         (gtk_rc_parse_style): parse xthickness and ythickness.
9930
9931         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9932
9933         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9934         (gdk_window_new): 
9935         (_gdk_windowing_window_init): 
9936         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9937         (gdk_pixmap_create_from_data): 
9938         (gdk_bitmap_create_from_data): 
9939         (gdk_pixmap_new): 
9940         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9941         (gdk_image_new): 
9942         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9943         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9944         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9945         (gdk_colormap_get_system): 
9946         (gdk_colormap_new): 
9947         * gdk/gdkwindow.c (gdk_window_init): 
9948         * gtk/gtkstyle.c (gtk_style_new):
9949         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9950         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9951         * gtk/gtkrc.c (gtk_rc_style_new):
9952         use g_object_new() instead of g_type_create_instance() which
9953         is a private function for fundamental type implementations.
9954
9955 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9956
9957         * configure.in: Add check for db2html
9958
9959 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9960
9961         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9962         hack to set glib_debug_objects based on gtk_debug_flags.
9963
9964 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9965
9966         * INSTALL.in: Update the Prerequisites section.
9967
9968         * Makefile.am demos/Makefile.am docs/Makefile.am
9969         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9970         gdk/linux-fb/Makefile.am: Dist fixes
9971
9972 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9973
9974         * NEWS: 10,000 foot view of 1.3.1 changes.
9975
9976 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9977
9978         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9979         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9980         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9981         gdk/x11/gdkmain-x11.c: 
9982
9983         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9984         as a return value of gdk_*_grab(). Previously, we just
9985         returned the X11 values directly.
9986
9987 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9988
9989         * gdk/x11/Makefile.am: Patch from George Lebl to 
9990         install all the headers in the right place.
9991
9992 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9993
9994         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9995           initial conversion to DocBook.
9996
9997 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9998
9999         * README.win32: Improve a bit.
10000
10001         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
10002         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
10003         Alt+0nnn on the numpad (used to enter characters by numeric code
10004         from current DOS or ANSI codepage) working correctly, as in other
10005         Windows apps.
10006
10007         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
10008         same argument validity tests as in X11 version.
10009         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
10010
10011         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
10012         definitions in case missing from headers.
10013
10014         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
10015         destroy the window-specific cursor.
10016         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
10017         calling GetModuleHandle(NULL).
10018         (gdk_window_set_cursor): Reworked to always copy the passed cursor
10019         with CopyCursor before setting it as the window-specific
10020         cursor. It is OK for the caller to destroy the GdkCursor (and thus
10021         also its Windows cursor) after calling this function. Destroy any
10022         previous window-specific cursor.
10023
10024 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
10025
10026         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
10027         font charset is iso8859-1, not iso-8859-1.
10028
10029 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
10030
10031         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
10032         Use g_get_charset() instead of g_get_codeset().
10033
10034         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
10035         Comment out some strdup'ing functions to keep timj
10036         happy until we finish fighting this out.
10037
10038 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
10039
10040         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
10041         <= width or height.
10042
10043         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
10044         from 1.2 for parent/child states.
10045
10046         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
10047         of typos.
10048
10049         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
10050         event structures, replace with a generic axes field. Replace 
10051         deviceid/sourec with GdkDevice *device.
10052
10053         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
10054         to extract particular axis use value from event. (Also
10055         can be used for normal X/Y.)
10056
10057         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
10058         allow for arbitrary number of axes, namespace everything
10059         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
10060         everywhere.
10061
10062         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
10063         Get rid of the gdk_input_vtable setup if favor of simply
10064         defining the functions in gdkinput-none/gxi/xfree.c in
10065         a similar fashion to the way that the port structure is 
10066         done.
10067
10068         * gtk/gtkdnd.c: Fix fields of synthesized button press event
10069         for new event structures. 
10070
10071         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
10072         new device interfaces.
10073
10074 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
10075
10076         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
10077         set the initial text.
10078
10079         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
10080         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
10081         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
10082         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
10083
10084         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10085         pango_layout_set_font_description to simplify.
10086
10087 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
10088
10089         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10090         pango_layout_set_font_description to simplify.
10091
10092 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
10093
10094         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
10095         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
10096         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
10097
10098         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
10099         PANGO_PIXELS() macro.
10100
10101 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
10102
10103         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
10104         that returns a PangoContext owned by the widget and updated to
10105         match future changes in the widget. Also, make 
10106         gtk_widget_create_pango_layout() use this context. If we ever
10107         add a ::changed signal to PangoContext, this will make things
10108         much more convenient. 
10109
10110         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
10111         in the appropriate places instead of destroying the layouts and
10112         creating new ones.
10113
10114         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
10115         in a few strategic places.
10116
10117 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
10118
10119         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
10120         gtk_widget_size_request() on reparented child, if one. Otherwise,
10121         queue_resize() on the child never results in it getting size-requested
10122         at all.
10123
10124         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
10125         in option menus, so that (with luck) people won't copy it into
10126         their apps in the future.
10127
10128         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
10129         to gtk_option_menu_calc_size. This isn't perfect, but should fix
10130         a lot of problems with changing the size of the menu's menu
10131         items after adding it to the option menu.
10132
10133         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10134
10135         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10136         the text direction for a widget changes.
10137
10138         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10139         ::direction_changed to get rid of various hacks.
10140
10141 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10142
10143         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10144         name.
10145
10146 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10147
10148         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10149         flag to the structure. Do not call XFreePixmap on pixmaps created
10150         by gdk_pixmap_foreign_new().
10151
10152 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10153
10154         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10155         value using GdkRGB functionality given GdkColormap and GdkColor.
10156         (name not final, waiting for inspiration.)
10157         
10158         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10159         set the foreground/background of a GC using the GC's colormap
10160         and GdkRGB. (name not final, waiting for inspiration.)
10161
10162         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10163         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10164
10165         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10166         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10167         purely a function of the corresponding colormap. Make
10168         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10169
10170         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10171         gdk_pixbuf_*create_from_xpm_* in terms of
10172         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10173         code.
10174
10175         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10176         advantage of the new draw_rgb_32_image_dithalign.
10177
10178         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10179
10180         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10181         on each created GC.
10182
10183         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10184
10185         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10186         which we initialize from the drawable when the GC is created,
10187         if the drawable has a colormap.
10188
10189         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10190
10191         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10192
10193         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10194
10195 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10196
10197         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10198         actually returning expose events, make sure to set
10199         the count field properly.
10200
10201         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10202         accidentally reintroced bug which always cleared
10203         the graphics_exposures value. 
10204
10205 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10206
10207         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10208
10209 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10210
10211         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10212
10213 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10214
10215         * docs/faq/gtk-faq.sgml: Start of Section 6.
10216
10217 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10218
10219         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10220         
10221         (Fixes problem with drawing childless frames. Pointed out
10222         by and a first patch from Anders)
10223         
10224         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10225         compute a child_allocation, even if we don't have a child.
10226
10227         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10228         Always chain to the parent's impl, even if we don't have a child.
10229
10230 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10231
10232         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10233         use multiple parts of it instead of creating a bunch of separate
10234         segments, since the maximum number of segments per system is not
10235         large. (This might be worth backporting to GTK+-1.2.x if we make a
10236         new release )
10237
10238         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10239         structure in preparation for per-colormap GdkRGB.
10240
10241         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10242         to False when we get EINVAL from shmget so that the caller of
10243         gdk_image_new can retry with a smaller segment size.
10244
10245 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10246
10247         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10248
10249 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10250
10251         * configure.in: make the current version number 1.3.1 (binary age 0,
10252         interface age 0).
10253         
10254         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10255         gtkcompat.h is all we want.
10256
10257         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10258         GLib primitive types. fixed g_type_register_fundamental() argument
10259         ordering.
10260
10261         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10262         compiles.
10263
10264         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10265         object code cleanup, comment trigraph fixes, etc...
10266
10267 2000-06-23  Havoc Pennington  <hp@redhat.com>
10268
10269         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10270         instead of making up a bogus name for first_para_mark
10271
10272         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10273         0 as a context ID
10274
10275 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10276
10277         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10278
10279 2000-06-21  Havoc Pennington  <hp@pobox.com>
10280
10281         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10282         we didn't check window->bg_pixmap != GDK_NO_BG.
10283
10284         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10285         gdk-pixbuf
10286
10287 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10288
10289         * docs/faq/gtk-faq.sgm: Move file to here.
10290           TODO: Update Makfile.am 
10291
10292 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10293
10294         * docs/gtk-faq.sgm: Add Section 2
10295
10296 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10297
10298         * docs/gtk-faq.sgm: New file. Start of DocBook
10299           version of the FAQ.
10300
10301 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10302
10303         * configure.in (GDK_PIXBUF_MAJOR): Define version
10304         numbers for GDK_PIXBUF_*, as they get substituted
10305         into a header file. Need to consider versioning
10306         for gdk-pixbuf more carefully later.
10307
10308 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10309
10310         Work with srcdir != builddir.   
10311         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10312         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10313         * demos/testpixbuf.c: Likewise.
10314         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10315         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10316         <gdk/x11/gdkx.h>.
10317         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10318         "gdk-pixbuf.h".
10319         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10320
10321 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10322
10323         * TODO.xml: Change 1.4 version numbers to 2.0.
10324
10325 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10326
10327         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10328         fixups to GTK+ standard.
10329
10330 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10331
10332         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10333         gdk-pixbuf.
10334
10335         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10336         fixups for GObject.
10337
10338         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10339         gdk-pixbuf with GDK dependencies moved into GDK.
10340         
10341         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10342         move gdk-pixbuf-loader here until GObject has signals.
10343
10344         * demos/: New directory of demos. Move demos from
10345         gdk-pixbuf here.
10346
10347         * demos/pixbuf-init.c: Small bit of code to check for
10348         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10349         set GDK_PIXBUF_MODULEDIR appropriately.
10350
10351         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10352         define which no longer makes sense.
10353
10354 2000-06-21  Havoc Pennington  <hp@redhat.com>
10355
10356         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10357         gtk_get_default_language
10358
10359         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10360         new function to get the default language
10361
10362         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10363         s/gtk_text_view_style_values/gtk_text_style_values/
10364
10365         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10366         Add a "language" field to tags.
10367
10368         (gtk_text_tag_set_arg): Fix bug in setting
10369         "bg_full_height_set" tag.
10370
10371 2000-06-21  Havoc Pennington  <hp@redhat.com>
10372
10373         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10374         in the interfaces
10375
10376         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10377         stuff instead when possible.
10378
10379         * gtk/gtktexttypes.h: Delete some unused constants
10380
10381         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10382         testtextbuffer.c: use glib instead of custom unicode routines
10383
10384 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10385
10386         * docs/es/: Removed mistakenly added generated sgml
10387
10388         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10389         Remove outdated info files.
10390
10391         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10392         Moved tutorial files into subdir
10393
10394         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10395         subdir.
10396
10397         * docs/man/gtk_button.pod: Remove. (contents will be
10398         integrated into gtk-reference button page.)
10399
10400         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10401         docs/faq/Makefile.am: Adjust for new organization
10402
10403 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10404
10405         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10406         not $(MKINSTALLDIRS)
10407
10408 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10409
10410         * gtk/testgtk.c (create_text): Finish the job Elliot started
10411         of removing font setting test for text widget. (Since text widget
10412         and GdkFont are not deprecated, and cause portability problems.)
10413
10414 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10415
10416         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10417         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10418         Remove use of libunicode in favor of new GLib functions.
10419
10420         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10421         nano-x, framebuffer. The X11 include is just a hack until we get
10422         the necessary functions in gdkcolor.h, so there is no reason to
10423         add other includes of platforms.
10424
10425         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10426         window bigger than the screen change.
10427
10428         * gtk/testgtk.c: Revert some random changes from Elliot
10429         that had no particular point and were causing testgtkrc
10430         not to function correctly.
10431         
10432         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10433         because GdkSegment and GdkRegionBox have the same fields,
10434         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10435         results in clearer code.
10436
10437         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10438         gdk_input_translate_coordinates): Fix missed GdkObjectification
10439
10440 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10441
10442         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10443         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10444
10445 2000-06-20  Havoc Pennington  <hp@redhat.com>
10446
10447         * modules/linux-fb/Makefile.am: Make this compile
10448         without framebuffer enabled
10449
10450         * gdk/linux-fb/Makefile.am: Add conditional to not build
10451         framebuffer unless specified in configure
10452
10453         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10454         the size of the target instead of source if -1 was passed for
10455         width/height
10456
10457         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10458         width/height confusion.
10459
10460 2000-06-19  Havoc Pennington  <hp@redhat.com>
10461
10462         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10463         GDK_DRAWABLE_XID. In the future, we probably want to make it
10464         faster with G_DISABLE_CHECKS turned on.
10465
10466 2000-06-14  Havoc Pennington  <hp@redhat.com>
10467
10468         * gdk/Makefile.am: add gdkpixmap.c
10469
10470         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10471         s/gdk_image_init/_gdk_windowing_image_init
10472
10473         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10474         ref/unref
10475
10476         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10477
10478         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10479         GdkWindowType is now non-deprecated; 
10480         change gdk_window_get_type() compat to be
10481         gdk_window_get_window_type().
10482
10483         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10484
10485         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10486         virtual GObject. Make all functions call into the vtable.
10487         Move gdk_image_put() guts in here. Remove GdkDrawableType
10488         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10489         draw_image, get_depth, get_size, set_colormap, get_colormap,
10490         get_visual added to the vtable.
10491         
10492         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10493         GObject. Virtualize everything. 
10494         (gdk_gc_new_with_values): remove check for destroyed window,
10495         because now GdkWindow::create_gc will check this.
10496         (gdk_gc_set_values): New function to set GC values, this 
10497         was already implemented but wasn't in the header
10498
10499         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10500
10501         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10502         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10503         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10504         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10505         _gdk_windowing_window_init, rename gdk_image_init to
10506         _gdk_windowing_image_init.
10507         
10508         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10509         (gdk_draw_layout): Remove check for destroyed window, 
10510         because all the drawable methods already check it.
10511         
10512         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10513         Add gdkpixmap.c which contains implementation of GdkDrawable
10514         virtual table (by chaining to a platform-specific implementation
10515         object).
10516         
10517         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10518         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10519         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10520         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10521         GdkColormapPrivate. 
10522
10523         * gdk/gdktypes.h: #include <glib-object.h>
10524
10525         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10526         Move most functionality to platform-specific implementation
10527         object. GdkWindow itself now handles the backing store, then
10528         chains to the platform-specific implementation.
10529         (gdk_window_get_window_type): return GdkWindowType of the window.
10530         (gdk_window_peek_children): New routine, returns the children of 
10531         a GdkWindow
10532         (gdk_window_get_children): Was in X11-specific code and did 
10533         XQueryTree. Changed to simply return a copy of window->children; 
10534         so it can go in cross-platform code.
10535         
10536         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10537
10538         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10539         GdkColormap; just changed to use the new private data instead
10540         of casting to GdkColormapPrivate.
10541
10542         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10543         gdk_cursor_new().
10544
10545         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10546         (private data member in the GObject). 
10547         (xdnd_manager_source_filter): Function had broken 
10548         error handling, fix it (use gdk_error_trap_push).
10549
10550         * gdk/x11/gdkdrawable-x11.c: This file now implements
10551         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10552         base class is purely for the convenience of the X port,
10553         and not part of the interface to cross-platform GDK.
10554
10555         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10556         
10557         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10558         specific to X, and returned by the create_gc virtual method
10559         of GdkDrawableImplX11. 
10560         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10561         rather than gchar, this was also changed in the GdkGC vtable.
10562         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10563         mask is 0, return immediately, instead of checking every flag.
10564         This is faster, and keeps us from segfaulting if values is NULL
10565         and the mask contains some nonzero flags.
10566
10567         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10568         GdkWindow.
10569
10570         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10571         GdkWindowPrivate is gone.
10572
10573         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10574
10575         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10576         remove the image_put stuff that got transferred to GdkDrawable.
10577         
10578         * gdk/x11/gdkinput.c: renamings
10579
10580         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10581
10582         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10583
10584         * gdk/x11/gdkprivate-x11.h: indentation fixes
10585
10586         * gdk/x11/gdkproperty-x11.c: renamings
10587
10588         * gdk/x11/gdkselection-x11.c: renamings
10589
10590         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10591         implements the platform-specific "impl" object.
10592         Moved gdk_window_get_children to gdk/gdkwindow.c
10593
10594         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10595         that no longer exist. Add declaration of GdkGCX11 object here.
10596         Fix all the macros to still work. 
10597
10598         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10599         GdkDragContext from the boxed types since they are now GObjects.
10600
10601         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10602         moved xthickness/ythickness into the instance. GtkStyleClass
10603         functions are now in the standard vtable for GtkStyle, so you have
10604         to create a GObject subclass to write a theme engine.
10605         (gtk_style_copy): fixed a leaked PangoFontDescription
10606         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10607         can be the standard GObject function.
10608         
10609         * Throughout GTK:
10610         s/style->klass->[xy]thickness/style->[xy]thickness
10611         s/pango_layout_unref/g_object_unref/
10612
10613         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10614         
10615         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10616         accessing GDK internals.
10617
10618         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10619         accessing GDK internals.
10620
10621 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10622
10623         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10624
10625         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10626         problem by calculating event position relative to the trough
10627         rather than the slider.
10628         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10629
10630         * gdk/gdkgc.h: Add GDK_NOR.
10631
10632         * configure.in, Makefile.am: Add modules top level dir
10633         * configure.in: Only use pangox library if building x11 target.
10634         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10635
10636 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10637
10638         * gtk/gtkcolorsel.c: Change private class member to be named
10639         private_data throughout the file.
10640
10641         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10642         private_data to avoid clashing with keyword.
10643
10644 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10645
10646         * gdk/gdkdnd.h: Add comment to remove warning.
10647
10648 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10649
10650         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10651         Byelorussian language; changed the Makefile and file names 
10652         to reflect that.
10653
10654 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10655
10656         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10657         rather than gdk_window_hide; this makes things work
10658         correctly if the window is programmatically hidden while
10659         iconified.
10660
10661 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10662
10663         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10664         cut and paste typo where wrong pixmap was being
10665         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10666
10667 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10668
10669         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10670         Add helper function to compute format / bytes 
10671         relationship. Use in a couple places to fix up
10672         errors which assume 8 * format.
10673
10674         * gtk/gtkselection.c (gtk_selection_request): Use 32
10675         rather than 8 * sizeof (GdkAtom), to work correctly
10676         on Alpha.
10677
10678 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10679
10680         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10681         libgtk.la
10682         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10683         versions
10684
10685         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10686         checking macros return NULL since the function has a return value.
10687
10688 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10689
10690         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10691         GTK+ from building at all.
10692
10693         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10694
10695 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10696
10697         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10698         gtk/Makefile.am: make it possible to configure gtk for different
10699         targets on the same platform. The library name is now 
10700         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10701         flag. Only the x11 target compiles right now.
10702         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10703         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10704         * gdk/nanox/gdk*generic*: delete generic region code.
10705         * gdk/linux-fb/gdk*generic*: delete generic region code.
10706         * README.nanox: update information.
10707         
10708 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10709
10710         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10711         prepend not append. (Pointed out by Brett Hall.)
10712
10713 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10714
10715         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10716
10717 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10720         need this later, and this makes sure that the atexit for
10721         glib gets called after that for GDK, so atexits are
10722         properly ordered for object leak checking.
10723
10724         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10725
10726         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10727         pango_x_shutdown_display()
10728
10729         * gtk/simple.c (main): Close window on destroy.
10730
10731 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10732
10733         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10734         to treat initial creation different from setting with 
10735         regards to the graphics-exposures parameter, so add a parameter
10736         indicating whether this is initial or not.
10737
10738 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10739
10740         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10741         to sort of work by adding an extra return_exposes arg
10742         to gdk_event_translate() - it might be better to simply
10743         deprecate the function altogether and force people to rewrite
10744         without it. gdk_window_scroll() handles most of it, and where
10745         gdk_window_scroll() doesn't work, simply redrawing more does.
10746
10747         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10748         assertion.
10749
10750         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10751
10752         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10753         bunch of pretty much useless /* Print debugging info */ comments 
10754         which had drifted away from the code they were commenting.
10755
10756 2000-06-02  Havoc Pennington  <hp@pobox.com>
10757
10758         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10759         is in working order.
10760         
10761         * gtk/testtext.c: Change to reflect anonymous mark API
10762
10763         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10764
10765         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10766         field, which was unused.
10767
10768         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10769         saves some typing.
10770
10771         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10772
10773         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10774         flag on the insertion point and selection bound
10775
10776         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10777         make mark-manipulation functions take a GtkTextMark* instead of a
10778         mark name.
10779         
10780         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10781         GtkTextMarkBody; will be used to detect attempts to delete
10782         the permanent marks (insert and selection bound)
10783
10784         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10785
10786 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10787
10788         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10789         flag to on.
10790
10791         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10792         Honor DOUBLE_BUFFRED_FLAG
10793
10794         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10795         function to set the DOUBLE_BUFFERED flag.
10796
10797         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10798         or not exposes done on the widget should be double-buffered.
10799
10800         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10801         to be what would be expected. (Fixes problem with a
10802         g_return_if_fail() validating a TextDirection enumeration)
10803
10804 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10805
10806         * gtk/gtkwidget.c: Remove all references to 
10807         offscreen flag which was no longer used.
10808
10809         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10810
10811         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10812         for non-null label_widget->parent.
10813
10814         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10815         which no longer was used.
10816
10817         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10818
10819         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10820         for null arguments.
10821
10822         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10823         check for destroyed windows.
10824
10825 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10826
10827         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10828         the slave context there.
10829
10830         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10831         identical to GtkWindow.
10832
10833 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10834
10835         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10836         pangox to here, so we can write them independent of rendering
10837         system, using GDK primitives.
10838
10839         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10840         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10841         since we have a rendering-system independent implementation in
10842         terms of draw_glyphs().
10843         
10844         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10845         function to render a single line.
10846
10847         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10848         into ../gdkpango.c, which simplifies things, since we
10849         don't have to deal with raw X gc's.
10850
10851 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10852
10853         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10854         get the logical attributes for a given GtkTextLine.
10855
10856 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10857
10858         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10859         g_locale_get_codeset() to g_get_codeset() change.
10860
10861 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10862
10863         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10864         descriptions.
10865
10866         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10867         the entry.
10868
10869         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10870         redoing (vastly simplifying) for Pango. Still needs quite
10871         a bit of work. (Size selection is currently poor. List of 
10872         predefined sizes is not a good idea, since all of these
10873         sizes won't necessarily be distinct.)
10874
10875 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10876
10877         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10878         CODESET results for LANG=C.
10879
10880 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10881
10882         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10883         which takes a stringized pango font description;
10884         ignore the older 'font' and 'fontset' declarations.
10885
10886         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10887         field with a GdkFont derived via gdk_font_from_description(),
10888         for compatibility. (Should we just remove it entirely?
10889         Probably too much compatibility breakage, but people
10890         should be migrating to the new Pango stuff as quickly
10891         as possible.)
10892
10893 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10896
10897 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10898
10899         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10900         redoing; there are some bugs in size allocation right
10901         now, the semi-existant distinction between header / day
10902         fonts was removed, but, with Pango, could actually
10903         be made functional in a nice way.
10904         
10905         * gtk/testcalender: Move calender from examples into this
10906         directory as a test program. (We really need to restrcture
10907         testgtk into a whole directory full of tests for every
10908         widget or functionality group, separated into multiple .c
10909         files.)
10910
10911 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10912
10913         * gtk/testgtk.c (file_exists): Fix stupid typo that
10914         was keeping RC file from being loaded.
10915
10916         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10917         RC file font code.
10918
10919 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10920
10921         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10922         Add function to load a GdkFont from a PangoFontDescription.
10923
10924 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10925
10926         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10927         variable should be of type GdkEventPrivate.
10928
10929 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10930
10931         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10932         to have any widget for the label, use a GtkLabel widget
10933         to display the text. (Based partially on a patch from
10934         Anders Carlson.)
10935
10936         (Quite a bit of code reorganization - strip 90% of the
10937         guts out of gtkaspectframe and add a single virtual
10938         func to GtkFrameClass - compute_child_allocation.)
10939
10940 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10941
10942         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10943         (Removed clist->row_center_offset field because caching
10944         it wasn't saving time or code, added private function
10945         _gtk_clist_create_cell_layout()).
10946
10947 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10948
10949         * gtk/gtkaccellabel.c: Pangoized.
10950
10951         * gtk/[hv]ruler.c: Pangoized
10952
10953 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10954
10955         * gtk/gtkfilesel.c (gtk_file_selection_init):
10956         Use gtk_clist_set_column_auto_resize() to remove need
10957         need for manual column width computations.
10958
10959 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10960
10961         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10962         ensuring Pango correctness, and considerably simplifying the
10963         code.
10964         
10965         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10966
10967         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10968         getting of numbers of lines.
10969
10970         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10971         to the actual requested width of the lable, not to the wrap
10972         width we set.
10973
10974         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10975
10976         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10977           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10978
10979         * gtk/gtktextview.c: Fix structure inheritance.
10980
10981         * gtk/gtkprogressbar.c: Pangoize.
10982
10983 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10984
10985         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10986         in a function.
10987
10988         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10989         bug with computing line tops.
10990
10991         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10992
10993 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10994
10995         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10996         and y_offset coordinates to do what we need now. (The offset between
10997         buffer and layout coordinates has been reintroduced, but is a 
10998         bit different than before.)
10999
11000         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
11001         handle the adjustments ourselves, and scroll as necessary using
11002         the new gdk_window_scroll().
11003         
11004         The advantage of this is that when we are incrementally revalidating,
11005         we are essentially rearranging things around the visible portion
11006         of the screen. With the old setup, the visible portion of the
11007         screen was moved around in the layout, so scrolling and redrawing
11008         to track that caused jumping of the display. Since we now
11009         control the scrolling ourselves, we can suppress this and
11010         only redraw when things actually change.
11011
11012 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
11013
11014         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
11015         the region not just redisplay it after-all, since we store the
11016         cursors in the LineDisplay. (Ugly interactions here between
11017         GtkLayout and GtkTextBTree here.)
11018         
11019         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
11020
11021 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
11024         Added function to scroll contents of a window while keeping the
11025         window constant. Works by XCopyArea or guffaw-scrolling depending
11026         on the details of how the window is set up. (guffaw-scrolling
11027         still needs to be filled in.)
11028
11029 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
11030
11031         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
11032         move the debugging that was tied to a global variable
11033         to that.
11034
11035         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
11036
11037         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
11038         validated flag, in line data instead of setting height/width to
11039         -1. This allows us to perform operations with partially invalid
11040         buffer (using the old size for invalid lines) and thus to do
11041         incremental vaidation. Keep height/width aggregates up to date
11042         when deleting text and rebalancing the tree.
11043
11044         * gtk/gtktextbtree.[ch]: Add functions validate a line
11045         (gtk_text_btree_validate_line), and to validate up
11046         to a number of pixels (gtk_text_btree_validate).
11047
11048         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
11049         that indicates that something is changed and a revalidation
11050         pass is needed. Change ::need_repaint to ::changed, and
11051         make it take old and new yranges instead of a rectangle.
11052
11053         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
11054         the line_data_destroy() function from 
11055         gtk_text_btree_add_view() to a virtual function in 
11056         GtkTextLayout
11057
11058         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
11059         since we are handling partial repaints in a different fashion
11060         now.
11061
11062         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
11063         of the selection instead of queueing a repaint on the
11064         entire widget.
11065
11066         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
11067         get_selection_bounds() down to btree, make the function
11068         in buffer a wrapper around the btree function.
11069
11070         * gtk/gtktextlayout.[ch]: Add functions to check if the
11071         layout is valid and to recompute either a range of pixels
11072         aroudn a line or a certain total number of pixels.
11073
11074         * gtk/gtktextlayout.[ch]: Cache a single line display;
11075         now that we only redraw the needed portions, the hit rate
11076         for this cache is quite high.
11077         
11078         * gtk/gtktextview.[ch]: Keep track of the first paragraph
11079         on the screen so that when re-laying-out the buffer, we can
11080         keep the same place. This requires connecting to ::value_changed
11081         on the adjustments
11082
11083         * gtk/gtktextview.[ch]: Add idle functions to revalidate
11084         the buffer after we receive an ::invalidated signal.
11085         
11086 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
11087
11088         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
11089         to max of allocation and layout size, not just to the
11090         layout size.
11091
11092         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
11093         Invalidate window so it gets redrawn properly.
11094
11095         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
11096         to mean the entire window.
11097
11098         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
11099         into public header.
11100
11101 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11102
11103         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
11104         to get the name of a mark.
11105
11106         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
11107         to find the paragraph from a y position.
11108
11109 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
11110
11111         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
11112         nodes have width/height >= 0, not > 0.
11113
11114 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
11115
11116         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
11117         Add a size_only flag, so when we only need the size, we don't create
11118         useless appearance attributes.
11119
11120         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
11121         duplicate setting of font description.
11122
11123         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
11124
11125 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11126
11127         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11128         EXTRA_DIST. It does not work well when the file that
11129         everything depends on is not in the tarball.
11130
11131 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11132
11133         * gtk/testgtk.c: Some hacks and fixes so that it basically
11134         works when not sitting in the GTK+ build tree.
11135
11136 2000-05-03  Havoc Pennington  <hp@redhat.com>
11137
11138         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11139         Properly determine the ordering of the tag root and the current
11140         line within the tree. Previous algorithm only worked if the tag
11141         root's immediate parent was the common root of both the current
11142         line and the tag root.
11143
11144 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11145
11146         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11147         alignment.
11148
11149         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11150         the widget text directional dynamically.
11151
11152         * gtk/gtktextview.[ch]: Added functions to get and set default
11153         wrap mode.
11154
11155 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11156
11157         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11158         in cursor location computation.
11159
11160 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11161
11162         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11163         vadjusment values properly when layout gets smaller.
11164
11165         * gtk/gtktextview.c (need_repaint_handler): Areas being
11166         passed in are far completely inaccurate, and sometimes
11167         too small, so, for now, just queue a redraw on the
11168         whole visible region.
11169
11170 2000-04-25  Havoc Pennington  <hp@redhat.com>
11171
11172         * gtk/gtktextbtree.c (summary_destroy): new function to 
11173         destroy tag summary nodes
11174         (gtk_text_line_next_could_contain_tag): this function was 
11175         totally broken if the line passed in wasn't below the tag
11176         root. Fix it.
11177         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11178         "wildcard" case, we have to do a linear scan. Blah.
11179         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11180         we have to do the linear scan
11181         (tag_removed_cb): When a tag is removed from the tag table, 
11182         remove the GtkTextTagInfo node from the btree.
11183         (gtk_text_btree_spew): Implement the spew function, for 
11184         our debugging pleasure.
11185
11186 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11187
11188         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11189         a problem with referring to the wrong buffer.
11190
11191         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11192
11193         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11194         font description to gtk_style_new() - otherwise things
11195         don't work without a .gtkrc file.
11196
11197         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11198         tags table if we create it ourself, too.
11199
11200         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11201         it was conflicting with XKB modifiers.
11202
11203         * gtk/gtktextview.[ch]: Add simple support for 
11204         GtkIMContext.
11205
11206 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11207
11208         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11209         with deletion from last commit.
11210
11211 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11212
11213         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11214         in the context from the current locale.
11215         
11216         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11217         context, not hardcoded value.
11218
11219         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11220         not logical.
11221
11222 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11223
11224         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11225         attributes - that doesn't handle partial-glyph selection
11226         properly. Instead use new pango_layout_line_get_x_ranges()
11227         functionality to draw the selection.
11228
11229         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11230         now properly handles out-of-range coordinates.
11231
11232         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11233
11234         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11235         public.
11236
11237         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11238         for paragraphs opposite to the base direction of the widget.
11239
11240         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11241
11242         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11243         causes Arabic words to reshape as you cursor through.
11244
11245         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11246         cursor position when moving vertically with the arrow keys and
11247         scrolling with page-up/page-down. (Arrow keys save only the X,
11248         scrolling saves both X and Y.)
11249
11250         This means you can line-up / line-down or page-up / page-down
11251         without losing your place, and also that moving vertically
11252         with the cursor keys keeps the same X position, not the same
11253         character count:
11254
11255         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11256         arrow keys move by display lines, not paragraphs.
11257
11258 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11259
11260         * gtk/gtklayout.c: Make sure that the bin window is at least
11261         as big as the allocation. (Should we also make sure that the
11262         bin window is big enough to completely cover widget->window?)
11263
11264         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11265         function to get the onscreen rectangle.
11266
11267         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11268         for offsets in window coordinates.
11269
11270 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11271
11272         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11273         confusion.
11274
11275         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11276         from the widget direction.
11277
11278         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11279         Add a "direction" attribute.
11280
11281         * gtk/gtktextview.c: global s/tkxt/text_view/.
11282
11283         * gtk/testtext.c: Added long block of text in Arabic, to test out
11284         the direction attributes. (Some problems with the shaping system
11285         for arabic become obvious - like the fact the cursor splits words
11286         into unjoined pieces.)
11287
11288 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11289
11290         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11291
11292         * gtk/gtktextlayout.c: Fix up alignment.
11293
11294         * gtk/testtext.c: Add some tests for centering, wrapping.
11295
11296 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11297
11298         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11299         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11300         If we wrote GTK+-specific layout-render function this could just replace
11301         the draw_layout() operation in the vtable.
11302
11303         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11304         pango_layout_get_cursor_pos() and use that function.
11305
11306         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11307         is a non-static symbol.
11308
11309         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11310         with gtk_text_btree_find_line_by_y()
11311
11312         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11313         renderer that handles GtkTextAppearance attributes.
11314
11315         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11316
11317           - Move the values in the style that don't affect geometry into a
11318             GtkTextAppearance structure.
11319           - Change underline to take a PangoUnderline and "font" a string
11320             representation of a font description
11321           - Add a "font_desc" attribute which takes a FontDescription structure.
11322
11323         * gtk/gtktextlayout.[ch]:
11324
11325           - Get rid of the display-line list per each line. Instead, we
11326             generate, on demand, a GtkTextLineDisplay structure which]
11327             contains a PangoLayout * and other necesary information
11328             (offsets, cursor locations) for displaying a paragraph.
11329           - Get rid of the code to wrap lines, create display chunks,
11330             etc. Instead, we just go through a paragraph and convert
11331             it into the necessary inputs to a PangoLayout.
11332           - Implement a new attribute type, GtkTextAttrAppearance. This
11333             holds a GtkTextAppearance, and is used to pass colors, 
11334             stipple, etc, through from the layout to the display without
11335             having to use lots and lots of individual attributes.
11336           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11337             in terms of PangoLayout functions.
11338         
11339         * gtk/gtktextview.c: 
11340          
11341           - Handle passing the necessary PangoContext to the layout
11342           - Some fixups in painting to deal with the automatic backing store
11343             and offsetting of GTK+-1.4
11344           - Add a style_set handler so that the default style reacts
11345             properly to theme changes.
11346         
11347         * gtk/gtktext?*.[ch]: Random code-style fixes.
11348
11349         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11350
11351 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11352
11353         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11354         in original form preparatory to Pango-ization and gdkimcontext-ization.
11355
11356 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11357
11358         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11359         so that we can derive from gtkimcontext in language bindings properly.
11360
11361 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11362
11363         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11364         Add a compose table including (almost) all the compose combinations
11365         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11366         data in the XIM implementation.
11367
11368         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11369         Moved functions to convert keyvalues from and to unicode here from
11370         the win32 port and made them public.
11371
11372 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11373
11374         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11375
11376 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11377
11378         * gtk/gtkimcontext.[ch]: Base class for new input context system
11379
11380         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11381         the real input context implementation to be loaded from modules
11382         and switched on the fly.
11383
11384         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11385         context that just does direct keysymbol => unicode translation.
11386
11387         * gtk/gtkentry.[ch]: Start switching editing over to using
11388         GtkInputContext. (No handling of preedit yet.)
11389
11390 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11391
11392         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11393         many substitutions. (klass should not be subsituted.)
11394
11395 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11396
11397         * configure.in: Add checks for Pango
11398
11399         * configure.in docs/Makefile.am: Add test for sgml2html
11400         and allow 'make dist' without building html, but print out
11401         warnings in that case. (For making snapshots)
11402
11403         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11404         Add Pango libraries and C flags
11405
11406         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11407         Add function (gdk_draw_layout) to draw a pango layout.
11408
11409         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11410         for getting Pango contexts for GDK.
11411
11412         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11413
11414         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11415         editing.
11416
11417         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11418         keysym => unicode translations. More languages can be added
11419         here, but real input-method support is needed.
11420
11421         * docs/Changes-1.4.txt: Added note about entry behavior.
11422         
11423         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11424         to set the reading direction for a widget and the global direction.
11425         Add test which allows toggling the global direction. Two private
11426         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11427
11428         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11429           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11430
11431         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11432
11433         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11434         underlining now handled by Pango.
11435
11436         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11437         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11438         is temporary.)
11439
11440         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11441         convenience functions for creating contexts and layouts for widgets.
11442
11443         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11444
11445 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11446
11447         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11448         titles to be active, even if they aren't visible.
11449         (gtk_clist_column_titles_passive):  Ditto.
11450
11451 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11452
11453         * gtkmenu.c:
11454         * gtkmenu.h:
11455         * gtktypeutils.h: Spelling/grammar fixes in comments.
11456
11457 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11458
11459         * gdk/nanox/*.h: add missing header files.
11460
11461 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11462
11463         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11464         send_event to TRUE.
11465         (gtk_drawing_area_size): queue a resize.
11466
11467 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11468
11469         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11470         the handlers, also invalidate them. bug nailed down by Karl Nelson
11471         <kenelson@ece.ucdavis.edu>.
11472
11473 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11474
11475         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11476         "(nil)" foundries, patch from Grigorios Magklis.
11477
11478         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11479         on non-available fonts, based on a patch by Grigorios Magklis
11480         <maglis@cs.rochester.edu>.
11481
11482 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11483
11484         * gdk/x11/gdkregion-generic.c: If a region does not have any
11485         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11486         instead of GDK_OVERLAP_RECTANGLE_IN.
11487
11488 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11489
11490         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11491         OFFSCREEN, as it is no longer necessary.
11492
11493 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11494
11495         * gtk/gtkcolorsel.c: Patch from David Santiago
11496         <mrcooger@cyberverse.com> to change things so that the 
11497         indicator of the active palette entry is done independently,
11498         not via the focus, since it should always be visible.
11499
11500 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11501
11502         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11503         refcount leaks as in the X11 backend.
11504
11505         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11506         cosmetics.
11507
11508         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11509         backend. Add _gdk_windowing_window_destroy().
11510
11511         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11512         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11513         either, but these probably do exist on nanox?)
11514         
11515         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11516         which isn't necessarily defined by <math.h>.
11517
11518         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11519         ancestry past GtkObject.
11520
11521         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11522         from DLL on Win32.
11523
11524         * gtk/gtk.def: Update corresponding to recent changes.
11525
11526         * gtk/makefile.{cygwin,msc}: Updates.
11527
11528 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11529
11530         * docs/Changes-1.4.txt: A bit of editing.
11531
11532         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11533         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11534         to clear the update area for the window, and clear it
11535         when hiding a window.
11536
11537         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11538         if window destroyed.
11539
11540         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11541
11542         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11543         gdk_window_destroy() to the generic code, since there was a lot of 
11544         window-system-independent logic it in. Add a function:
11545         
11546          _gdk_window_destroy() 
11547
11548         to the internal API to destroy a window without unreferencing it.
11549         Add a function:
11550
11551          _gdk_windowing_window_destroy()
11552
11553         That does the windowing-system-dependent part of destroying 
11554         the window.
11555
11556 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11557
11558         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11559
11560 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11561
11562         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11563         Make gtk_widget_shape_combine_mask() keep a reference count on
11564         the pixmap since it keeps it around.
11565
11566 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11567
11568         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11569         leak.
11570
11571         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11572         leak with event filters.
11573
11574 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11575
11576         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11577         signal handlers with the right data arguments. (Fixes
11578         some warnings when a widget was repeatedly set as a drag
11579         destination.)
11580
11581         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11582         window so we can avoid avoid setting the DND properties on the
11583         toplevel window repeatedly.
11584
11585 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11586
11587         * gdk/win32/gdkwin32.h: Define more message types missing from
11588         mingw headers.
11589
11590         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11591         call gdk_window_destroy_notify(). It was never called. This
11592         probably meant that the GdkWindow was never freed. Thanks Owen for
11593         noticing (!).
11594
11595         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11596         window as destroyed before calling DestroyWindow(). DestroyWindow()
11597         causes a call to the window procedure (gdk_WindowProc), which
11598         calls gdk_event_translate(), which calls
11599         gdk_window_destroy_notify(), which gets confused unless the window
11600         is set as destroyed.
11601
11602         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11603         this function to indicate it's win32 only. Put inside #ifdef
11604         G_ENABLE_DEBUG.
11605
11606         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11607         debugging function. (gdk_event_translate:) Add a default branch
11608         that uses the above function to print debug messages with all
11609         Windows messages symbolically.
11610
11611         * gdk/win32/gdkprivate-win32.h: Declare it, and
11612         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11613
11614 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11615
11616         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11617         public header file.
11618
11619 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11620
11621         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11622
11623         * gtk/gtktext.c: made the adjustments no-construct args, simply
11624         provide default adjustments.
11625         (gtk_text_destroy): release adjustments.
11626
11627         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11628         adjustment argument non-construct.
11629
11630         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11631         instead of in finalize.
11632         (gtk_progress_get_text_from_value): 
11633         (gtk_progress_get_current_text): 
11634         (gtk_progress_set_value): 
11635         (gtk_progress_get_percentage_from_value): 
11636         (gtk_progress_get_current_percentage): 
11637         (gtk_progress_set_percentage): 
11638         (gtk_progress_configure): ensure an adjustment is present.
11639
11640 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11641
11642         * gtk/gtkcolorsel.[hc]:
11643         * gtk/gtkcolorseldialog.[hc]:
11644         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11645         their parent implementation, use bit fields for boolean values, don't
11646         create unused widgets, usage of glib types, braces go on their own
11647         lines, function argument alignment, #include directives etc. etc. etc..
11648
11649         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11650
11651 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11652
11653         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11654
11655         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11656         of NULL.
11657
11658         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11659         to freed data.
11660         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11661
11662         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11663         to NULL when the toplevel is getting destroyed.
11664         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11665         (gtk_menu_destroy): 
11666         (gtk_menu_init): store the information of whether we have to
11667         readd the initial child ref_count during destruction in a new
11668         GtkMenu field needs_destruction_ref_count.
11669
11670         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11671         here, those reading: learn from my mistake! ;)
11672         in order for set_?adjustment to support a default adjustemnt if
11673         invoked with an adjustment pointer of NULL, the code read (pseudo):
11674         if (v->adjustment) unref (v->adjustment);
11675         if (!adjustment) adjustment = adjustment_new ();
11676         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11677         now imagine the first unref to actually free the old adjustment and
11678         adjustment_new() creating a new adjustment from the very same memory
11679         portion. here, the latter comparision will unintendedly fail, and
11680         all hell breaks loose.
11681         (gtk_viewport_set_hadjustment):
11682         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11683         after unreferencing it.
11684
11685         * gtk/gtkcontainer.[hc]: removed toplevel registration
11686         functions: gtk_container_register_toplevel(),
11687         gtk_container_unregister_toplevel() and
11688         gtk_container_get_toplevels() which had wrong semantics
11689         anyways: it didn't reference and copy the list.
11690
11691         * gtk/gtkwindow.c: we take over the container toplevel registration
11692         bussiness now. windows are registered across multiple destructions,
11693         untill they are finalized. the initial implicit reference count
11694         users are holding on windows is removed with the first destruction
11695         though.
11696         (gtk_window_init): ref & sink and set has_user_ref_count, got
11697         rid of gtk_container_register_toplevel() call. add window to
11698         toplevel_list.
11699         (gtk_window_destroy): unref the window if has_user_ref_count
11700         is still set, got rid of call to
11701         gtk_container_unregister_toplevel().
11702         (gtk_window_finalize): remove window from toplevel list.
11703         (gtk_window_list_toplevels): new function to return a newly
11704         created list with referenced toplevels.
11705         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11706
11707         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11708         adjustment a non-construct arg.
11709         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11710         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11711         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11712
11713         * gtk/gtkrange.c: added some realized checks.
11714         (gtk_range_destroy): get rid of the h/v adjustments in the
11715         destroy handler instead of finalize. remove timer.
11716         (gtk_range_get_adjustment): demand create adjustment.
11717
11718         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11719         we simply create them on demand now and get rid of them in
11720         the destroy handler.
11721         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11722         destroy handler instead of finalize.
11723         (gtk_viewport_get_hadjustment): 
11724         (gtk_viewport_get_vadjustment): 
11725         (gtk_viewport_size_allocate): demand create h/v adjustment
11726         if required.
11727
11728         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11729         gtk_widget_real_destroy () functionality.
11730         (gtk_widget_real_destroy): reinitialize with a new style, instead
11731         of setting widget->style to NULL.
11732
11733 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11734
11735         * gtk/gtkcalendar.c:
11736         * gtk/gtkbutton.c: ported _get_type() implementation over to
11737         GType, either to preserve memchunks allocation facilities,
11738         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11739
11740         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11741         over. prepare for ::destroy to be emitted multiple times.
11742         removed reference tracer magic. chain into GObjectClass.shutdown()
11743         to emit ::destroy signal.
11744
11745         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11746         fundamental.
11747
11748         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11749         cludge.
11750
11751         * gtk/gtksocket.c:
11752         * gtk/gtkplug.c:
11753         * gtk/gtklayout.c:
11754         * gtk/gtklabel.c:
11755         * gtk/gtkargcollector.c:
11756         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11757         not being a fundamental anymore, and to work with the new
11758         type system (nuked fundamental type varargs clutter).
11759
11760         * gtk/*.c: install finalize handlers in the GObjectClass
11761         part of the class structure.
11762         changed direct GTK_OBJECT()->klass accesses to
11763         GTK_*_GET_CLASS().
11764         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11765
11766         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11767         GType. made most of the GTK_*() type macros and Gtk* typedefs
11768         simple wrappers around macros and types provided by GType.
11769         most notably, a significant portion of the old API vanished:
11770         GTK_TYPE_MAKE(),
11771         GTK_TYPE_SEQNO(),
11772         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11773         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11774         GTK_TYPE_ARGS,
11775         GTK_TYPE_CALLBACK,
11776         GTK_TYPE_C_CALLBACK,
11777         GTK_TYPE_FOREIGN,
11778         GtkTypeQuery,
11779         gtk_type_query(),
11780         gtk_type_set_varargs_type(),
11781         gtk_type_get_varargs_type(),
11782         gtk_type_check_object_cast(),
11783         gtk_type_check_class_cast(),
11784         gtk_type_describe_tree(),
11785         gtk_type_describe_heritage(),
11786         gtk_type_free(),
11787         gtk_type_children_types(),
11788         gtk_type_set_chunk_alloc(),
11789         gtk_type_register_enum(),
11790         gtk_type_register_flags(),
11791         gtk_type_parent_class().
11792         replacements, where available are described in ../docs/Changes-1.4.txt.
11793         implemented compatibility functions for the remaining API.
11794
11795         * configure.in: depend on glib 1.3.1, use gobject module.
11796
11797 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11798
11799         * TODO.xml: Various updates to current status.
11800
11801 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11802
11803         * gtk.m4: Print out version when test succeeds.
11804
11805 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11806
11807         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11808         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11809         
11810         (Original triangle color selector from Simon Budig
11811         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11812         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11813         Santiago <mrcooger@cyberverse.com>)
11814
11815         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11816         out into a separate widget.
11817
11818         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11819         and opacity controls.
11820
11821 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11822
11823         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11824         snuck in prematurely.
11825
11826 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11827
11828         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11829         had deleted a ! operator by mistake, which caused
11830         GDK_SELECTION_CLEAR events never to be generated, which caused
11831         only the first copy to the clipboard from an gtkeditable to
11832         actually cause a copy to the Windows clipboard.
11833
11834 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11835
11836         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11837         compilation, too. Current mingw gcc distributions include the
11838         necessary headers. Also the necessary IIDs are now in mingw
11839         headers/libraries, and own definitions unnecessary.
11840
11841         More hacking on OLE2 DND, still doesn't work though, and thus
11842         ifdeffed out.
11843
11844         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11845         here, too.
11846
11847 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11848
11849         * gdk/nanox/*: nano-X port work in progress.
11850         * gdk/simple.c: simple test for Gdk.
11851         * README.nanox: notes about the port: read this first!
11852         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11853         with nano-X.
11854
11855 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11856
11857         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11858         gdk_window_clear() into common code, implement in terms of
11859         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11860         not redirected to the backing rectangle.
11861
11862 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11863
11864         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11865         EXTRA_DIST. It does not work well when the file that
11866         everything depends on is not in the tarball.
11867
11868 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11869
11870         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11871         with recursion where process_updates() is called from
11872         an expose handler. (GtkTextView is highly broken in
11873         doing this, but it should work, so it is a nice test
11874         case.)
11875
11876 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11877
11878         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11879         handle the case where updates are queued during processing of
11880         updates.
11881
11882 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11883
11884         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11885         window is on gdk_display - use that instead of segfaulting.
11886
11887 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11888
11889         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11890         broken and require an empty arg, give it to them.
11891
11892 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11893
11894         * gtk/gtklabel.h: indentation fixes.
11895
11896 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11897
11898         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11899         draw too narrow or too low arcs, they seem to fail, at least with
11900         some display drivers.
11901
11902         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11903
11904         Large changes to the Win32 backend, partially made necessary by
11905         the changes to the backend-independent internal
11906         structures. Attempts to implement similar backing store stuff as
11907         on X11. The current (CVS) version of the Win32 backend is *not* as
11908         stable as it was before the no-flicker branch was merged. A
11909         zipfile with that version is available from
11910         http://www.gimp.org/win32/. That should be use by "production"
11911         code until this CVS version is usable. (But note, the Win32
11912         backend has never been claimed to be "production quality".)
11913
11914         * README.win32: Add the above comment about versions.
11915
11916         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11917
11918         * gdk/gdk.def: Update.
11919
11920         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11921         presumably be replaced by some more better mechanism as 1.4 gets
11922         closer to release shape.
11923
11924         * gdk/makefile.{cygwin,msc}: Update.
11925
11926         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11927         internal headers. Change code according to changes in these. Use
11928         gdk_drawable_*, not gdk_window_* where necessary.
11929
11930         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11931         our old DND.
11932
11933         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11934         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11935         Use correct function name in warning messages.
11936
11937         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11938         GSourceFuncs gdk_event_prepare and gdk_event_check.
11939         (gdk_event_get_graphics_expose): Do implement, use
11940         PeekMessage. Thanks to Hans Breuer.
11941         (event_mask_string): Debugging function to print an GdkEventMask.
11942         (gdk_pointer_grab): Use it.
11943
11944         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11945         (old) book I used claimed was Hangul actually is CJK Unified
11946         Ideographs Extension A. Also, Hangul Syllables were missing.
11947         Improve logging.
11948
11949         * gdk/win32/gdkgc-win32.c: Largish changes.
11950
11951         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11952         g_win32_getlocale() from GLib, and not setlocale() to get current
11953         locale name.
11954
11955         * gdk/win32/gdkprivate-win32.h
11956         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11957         gdkwin32.h, similarily as in the X11 backend.
11958
11959         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11960         assignment was used instead of equals in if test. Thanks to Hans
11961         Breuer.
11962
11963         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11964         the X11 version.
11965
11966         * gdk/win32/makefile.{cygwin,msc}
11967         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11968         path to the Win32 headers that works also with the mingw compiler.
11969
11970         * gtk/gtkstyle.c: Include <string.h>.
11971
11972 2000-04-26  Havoc Pennington  <hp@redhat.com>
11973
11974         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11975         replacing the broken gtk_label_get ()
11976
11977 2000-04-15  Havoc Pennington  <hp@pobox.com>
11978
11979         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11980         this keeps scanner scripts from getting confused.
11981
11982         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11983         data, rather than void
11984
11985 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11986
11987         * gtk/gtkclist.c (gtk_clist_motion)
11988         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11989         with is_hint FALSE, get x and y from the event. They used to be
11990         used uninitialised. The Win32 backend never sends motion events
11991         marked as hints. This for instance fixes the annoying file and
11992         font selector behaviour in the Win32 version.
11993
11994 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11995
11996         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11997         gtk_private_n_signals variables, they are used by some software,
11998         sigh.
11999
12000         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
12001         installation directory from the Registry, where the installer
12002         should have put it.
12003
12004 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
12005
12006         * gdk/x11/Makefile.am: Fix problem with installation directory for
12007         gdkx.h
12008
12009         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
12010         <mrcooger@cyberverse.com> so that when selecting menus with the
12011         mouse, the first item will not be selected, but when selecting
12012         with an accelerator, or navigating left-right on a menubar with
12013         the menus popped up, the first item will be selected.
12014
12015 2000-04-05  Dan Damian  <dand@dnttm.ro>
12016
12017         * configure.in: Added "ro" to ALL_LINGUAS.
12018
12019 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
12020
12021         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
12022         indentation.
12023
12024         * Makefile.am (EXTRA_DIST): Fix typo.
12025
12026         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
12027         to catch gdkconfig.h
12028
12029         * gtk/gtkitemfactory.c: Added FIXME.
12030
12031 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
12032
12033         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
12034         s/return_if_fail/return_val_if_fail/g and add a return value.
12035
12036 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12037
12038         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
12039         merge slipup.
12040
12041         * gdk/gdkinput.h: Fix missing line from merge.
12042
12043 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
12044
12045         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
12046         instead of gdkprivate.h.
12047
12048 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
12049
12050         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
12051         parent class to correctly be GtkDialogClass.
12052
12053 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
12054
12055         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
12056         toplevel windows and their immediate children by their parents,
12057         since the size of toplevel windows is out of our immediate
12058         control and we don't get any real benefit from trying to track
12059         this size for clipping.
12060
12061         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
12062         for input_only windows.
12063
12064         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
12065         to fix some hacks and make sure that we don't try to set the
12066         background of input only windows.
12067
12068 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
12069
12070         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
12071         the _really_ internal stuff, and leave gdkprivate.h for the fake private
12072         stuff that we've traditionally exposed.
12073
12074         * gdk/**.c: Use gdkinternals.h where appropriate.
12075
12076         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
12077         not include gdkprivate-x11.h, move all stuff of conceivable public
12078         interest into gdkx.h; keep all really private stuff in
12079         uninstalled header gdkprivate-x11.h.
12080
12081         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
12082         image->image_put on windows through a new function _gdk_window_draw_image()
12083         to allow us to do backing store for images. (Sort of ugly)
12084
12085         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
12086         contexts locally so that we can offset them properly when drawing 
12087         onto backing pixmaps.
12088
12089         * gdk/gdkinput.h: Reindented
12090
12091         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
12092         pixmap or color for the window, so we can properly initialize
12093         our double-buffer pixmaps, and also so that we temporarily set
12094         a background of None while scrolling.
12095
12096         * gdk/gdkregion.h: Revise region boolean operators to have an
12097         interface that is actually convenient - switch from creating new
12098         regions on every op, to "methods" that modify existing regions
12099         (A = A OP B). 3 argument forms which allow dest == src, would also
12100         be possible, but the current interfaces seem to map nicely
12101         onto what needs to be done. (There is quite a lot of region
12102         code in GDK now.)
12103
12104         * gdk/gdkregion.h: Add constructor from rectangle and a copy
12105         operator.
12106
12107         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
12108         gdkpoly-generic.h: Copy region code from Xlib, switch it over
12109         to 32 bit coordinates, modify it to be mostly GTK+ style
12110         and to have interfaces that match gdkregion.h.
12111
12112         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
12113         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
12114         create a backing pixmap and redirect all drawing to
12115         that backing pixmap until a matching gdk_window_end_paint().
12116
12117         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
12118         Create a special drawable class for GtkWindow's that 
12119         redirects the drawing to the backing pixmap as necessary
12120         and then calls the real operations in _gdk_windowing_window_class.
12121
12122         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
12123         Store invalid region for each window. Generate expose events for invalid
12124         region in an idle. This replaces both the expose compression
12125         and the redrawing queuing in GTK+. It is both more efficient and
12126         simpler than either one individually and far more so then the
12127         combination.
12128
12129         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
12130         Emulate 32 bit coordinates for windows with 16 bit coordinates
12131         by offsetting drawing, guffaw scrolling techniques and
12132         mapping/unmapping child windows as necessary.
12133
12134         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12135         where, when invalid regions are processed, the region is stored,
12136         and if expose events come in that are detectably duplicate
12137         the processed exposes (by comparison of event serial numbers),
12138         the stored region is subtracted out of those exposes.
12139
12140         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12141         regions newly exposed when scrolling or resizing windows.
12142         This, combined with forcing processesing of queued invalidated
12143         regions, gives nice flicker-free scrolling.
12144
12145         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12146         invalidated regions after every scroll.
12147
12148         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12149         emulation in GDK. Its, for all practical purposes just a
12150         GtkViewport/GtkFixed hybrid now.
12151
12152         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12153         (16-bit) structures as necessary instead of just casting.
12154
12155         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12156         in terms of the structures from gdkregion-generic.c, using appropriate
12157         offsets from GDK to X11 coordinates. Cache clip mask and
12158         origin and ts origin locally and only flush to the server
12159         when drawing, to avoid constantly setting and resetting these
12160         values when offsetting GC's for scrolling and backing pixmaps.
12161
12162         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12163
12164         * gtk/gtkcontainer.c: Call process_all_updates at end
12165         of resizing to reduce flicker. (Avoids having redraw
12166         lag arbitrarily behind resize under some circumstances)
12167
12168         * gtk/gtkentry.c: Remove old backing store code, and simply take
12169         advantage of the new backing store capabilities of GDK.
12170
12171         * gtk/gtkmain.c: Simple implementation of widget backing
12172         store - simply push a paint while handling each expose.
12173         (Should really be configurable widget for widget.)
12174         
12175         * gtk/gtkwidget.c: Remove all the old complicated redraw
12176         code, and simply invalidate the GDK windows from
12177         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12178         debugged complexity ... gone to the winds.)
12179
12180         Remove all the code for suppressing expose events while
12181         resizes are pending; this isn't needed since the invalid
12182         areas won't be processed until after the resizes are
12183         processed, since they are in a lower priority idle.
12184
12185 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12186
12187         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12188         and height of dest rectangle for non-intersecting rectangles.
12189
12190 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12193         for GdkRectangle.
12194
12195 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12196
12197         * gdk/gdk{events,image,private,types,window}.h
12198          gdk/x11/gdkinputprivate.h: Change all coordinates
12199          from int16 to int. Also, Change width and height from
12200          unsigned to signed to avoid all the stupid C 
12201          signedness bugs.
12202
12203 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12204
12205         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12206         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12207         Add some more detailed checking.
12208
12209         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12210         New function to retrieve the depth of a drawable.
12211
12212         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12213         field, reorder fields to save memory. 
12214
12215 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12216
12217         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12218         of the background image instead of scaling the background down to
12219         a line.
12220
12221         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12222         which temporarily set slider to wrong size.
12223
12224         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12225         queue_clear().
12226
12227 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12228
12229 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12230
12231         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12232
12233 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12234
12235         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12236         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12237
12238         * gdk/win32/gdkfont-win32.c
12239         * gdk/win32/gdkproperty-win32.c
12240         * gdk/win32/gdkselection-win32.c
12241         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12242         now declared such.
12243
12244 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12245
12246         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12247
12248 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12249
12250         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12251         is called without trapping X errors.
12252
12253 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12254
12255         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12256         way into the fontset lists.
12257
12258 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12259
12260         * gtk/gtkthemes.h: add extern "C" scope.
12261
12262 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12263
12264         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12265         to make appends to the list constant. (gtk-guy-990901-0.patch)
12266
12267 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12268
12269         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12270         for the typename hash table.
12271
12272 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12273
12274         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12275         to make sure we never divide by zero. 
12276         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12277
12278 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12279
12280         * gtk/gtkfontsel.c: Apply patch from
12281         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12282         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12283
12284         Also, some cleanups in atom handling.
12285
12286 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12287
12288         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12289         not GtkWidget.
12290
12291 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12292
12293         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12294         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12295         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12296         more guint wrap-around bugs before going to bed.
12297
12298 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12299
12300         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12301         guint wrap arounds in allocation.width.
12302
12303         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12304         process untill we fit the allocation given.
12305
12306 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12307
12308         * gtk/gtkwidget.c:
12309         (gtk_widget_unrealize): guard widget access with ref/unref
12310         around signal emission.
12311         (gtk_widget_hide): same here, but also check its destroyed
12312         state before queueing a resize.
12313
12314 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12315
12316         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12317         of gtk_default_insensitive_bg as insensitive base color.
12318
12319         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12320         to the widget's state.
12321         (gtk_text_realize): same here.
12322         (gtk_text_state_changed): same here.
12323         (draw_bg_rect): compare background color against base[] from
12324         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12325
12326 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12327
12328         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12329         grabs are active, unless a delete event is send to the toplevel
12330         of the currently grab holding widget.
12331
12332 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12333
12334         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12335         debugging g_print's.
12336
12337 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12338
12339         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12340         ever make the scrolled-window requisition ever depend on the 
12341         visibility state of the scrollbars for the AUTOMATIC policy. 
12342         This breaks the GTK+ requisition model, and causes loops.
12343
12344 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12345
12346         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12347         the default font to avoid problems with XFree86-4.0 where the
12348         default charset is iso10646-1, not iso8859-1.
12349
12350 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12351
12352         * acinclude.m4
12353         * config.guess
12354         * config.sub
12355         * ltconfig
12356         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12357
12358         * gtk/Makefile.am: minor cosmetic consistency tweak
12359
12360 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12363         the activate_time to 0, so that we handle a quick
12364         press/release press/release properly and don't suppress
12365         the second release. (Red Hat bug #7545)
12366
12367 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12368
12369         * gtk/gtkctree.c (row_delete):
12370         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12371         bugs with destruction notifier, *always* update internal
12372         structures *before* calling user code.
12373
12374 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12375
12376         A few more fixes for bug #5487, #2051, #2677.
12377         * gtk/gtkclist.c : 
12378         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12379         not GDK_BUTTON_PRESS.
12380         (resync_selection): resync only if selection_mode is
12381         GTK_SELECTION_EXTENDED
12382         * gtk/gtkctree.c (resync_selection): same here
12383
12384 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12385
12386         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12387         gdk_drag_get_selection() and gtk_menu_detach().
12388
12389         [ From Jeroen Ruigrok/Asmodai ]
12390
12391 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12394         page->tab_label can be NULL.
12395
12396 2000-01-25  Havoc Pennington  <hp@pobox.com>
12397         
12398         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12399         arg is boolean
12400
12401         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12402
12403         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12404
12405         * gdk/gdkproperty.c (gdk_property_get): return boolean
12406
12407         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12408
12409         * gdk/gdkim.c (gdk_im_ready): return boolean
12410
12411         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12412
12413         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12414         glib clash, should fix glib)
12415
12416         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12417         (gdk_get_show_events): return gboolean, and canonicalize 
12418         to TRUE/FALSE
12419
12420         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12421         colormap is private
12422         (gdk_colors_alloc): gboolean whether to be contiguous
12423         (gdk_color_equal): return gboolean since we are a predicate
12424         and not a qsort() (this looks semi-wrong due to glib breakage,
12425         IMO glib should be fixed)
12426         
12427         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12428         (gdk_get_use_xshm): return gboolean
12429         (gdk_pointer_is_grabbed): return gboolean
12430
12431         * gdk/gdk.h: Change prototypes to match all the above changes,
12432         and re-run egtk-format-protos as required.
12433
12434 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12435
12436         * gtk/gtkctree.c (resync_selection): 
12437         * gtk/gtkclist.c (resync_selection):
12438
12439         Return immediately if clist->drag_pos < 0. This is a workaround
12440         for the corrupt state that the clist gets into when a
12441         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12442
12443         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12444         
12445         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12446         variable from recent commit.
12447
12448 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12449
12450         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12451
12452 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12453
12454         * gtk/Makefile.am: prefix all autogenerated source that get build in
12455         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12456         in builddir. since we subsequently cd into srcdir for autogeneration,
12457         the paths have to be stripped from the target file names, thusly we
12458         use $(@F) as target names now.
12459         put a comment about configure.in's --disable-rebuilds option,
12460         which can be used for non-writable source directories, for development
12461         setups though, srcdir has to be *writable*.
12462
12463 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12464
12465         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12466           Finish the job of allowing event to be NULL.
12467           (Fixes bug #4283, reported by Chris Blizzard)
12468
12469         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12470           things so that the cursor appears on screen, properly
12471           take into account INNER_BORDER.
12472           (Fixes bug #4754, reported by Antonio Campos)
12473
12474 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12475
12476         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12477           show the tab_label unless it itself is visible.
12478
12479           gtk/gtknotebook.c (gtk_notebook_size_request):
12480           Do a better job of making sure that the visibility
12481           of the tab label corresponds to whether it should
12482           be mapped or not.
12483
12484 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12485
12486         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12487           Use the requisition, not the allocation, since the
12488           allocation has not necessarily been computed yet.
12489           (Pointed out by Eugene Osintsev)
12490
12491 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12492
12493         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12494           style/base[GTK_STATE_INSENSITIVE] both to
12495           gtk_default_insensitive_bg!
12496           (Bug #2187, reported by Jonathan Blandford)
12497
12498         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12499           Add Alt_L, Alt_R to list of invalid accelerators.
12500           (Bug #3736, reported by Vlad Harchev)
12501
12502 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12503
12504         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12505         bugs which occured after an attempt to open 
12506         invalid home directory left cmpl_state->reference_dir == NULL.
12507
12508          - completion on files in home directory didn't work
12509          - completion on an empty string caused  segfault
12510
12511          (Bug #3678, reported by Steve Ratcliffe)
12512
12513         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12514         cut and paste error that was causing scales to
12515         be incorrectly positioned.
12516         (Bug #2956,
12517          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12518
12519 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12520
12521         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12522         when checking for dcgettext, if we've found we needed
12523         it for dgettext.
12524 +
12525 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12526
12527         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12528         queue_clear on NO_WINDOW widgets during a reparent,
12529         since at that point the window and widget heirarchies
12530         are out of sync. This stops crashing in some cases
12531         (the scrolled window reparent test, for instance), and
12532         _probably_ won't cause drawing errors.
12533
12534         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12535         test do what it was supposed to do and be robust against
12536         window closings, etc. (Bug #2443)
12537
12538 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12539
12540         * gtk/gtkentry.c: Fix return values on mouse events.
12541         (Bug #2686, Sky <seb_sky@yahoo.com>)
12542
12543         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12544         (pointed out by George Lebl)
12545
12546         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12547         (From Ettore Perazzoli  <ettore@helixcode.com>)
12548  
12549 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12550
12551         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12552         clicks between rows or outside calender area correctly.
12553         (Patch from Damon Chaplin)
12554
12555         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12556         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12557           Call destroy function when overwriting existing data. 
12558           (Pointed out by Damon Chaplin)
12559
12560 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12561
12562         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12563           which was causing problems on various systems with Xmu.
12564           This hasn't been needed for a very long time.
12565           (Fixes #1185 3167)
12566
12567 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12568
12569         * gdk/gdki18n.h: Include <ctype.h> when defining
12570           gdk_isw* in terms of is* as a fallback.
12571           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12572
12573 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12574
12575         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12576           realize the widget when it is size allocated!
12577           (old, old bug)
12578
12579         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12580           Removed unused call to gdk_window_get_size() that
12581           showed up when the above was fixed.
12582
12583 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12584
12585         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12586           fix up widget->window when the widget is a
12587           NO_WINDOW container widget.
12588
12589 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12590
12591         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12592           to account for the fact that feof() does _not_ 
12593           return TRUE on errors, and thus avoid infinite loops
12594           when trying to use gdk_pixmap_create_from_xpm()
12595           on unreadable values.
12596
12597 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12598
12599         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12600
12601 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12602
12603         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12604           gdk_gc_set_dashes to take gint8 instead of gchar to
12605           make it clearer that it is _not_ a NULL terminated string.
12606
12607         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12608           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12609           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12610           arguments.
12611
12612 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12613
12614         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12615         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12616         background size relative to our allocation, guard against small
12617         allocations, we may have not yet been size allocated.
12618
12619 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12620
12621         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12622         not just version == 3. We implement all 3 + most of 4 - 
12623         (we don't support matching text/plain;charset=iso-8859-1
12624         to a dest that expects text/plain). We'll still advertise
12625         3 to be safe, but any client implementing version >= 3
12626         must interoperate with 3.
12627         
12628 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12629
12630         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12631         background and gc members, add a warning in gtk_tooltips_set_color()
12632         indicating that this function is deprecated.
12633
12634 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12635
12636         * docs/gtkfaq.sgml: FAQ Update:
12637           - Minor cleanups (Emmanuel, me)
12638           - New questions:
12639                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12640                 How can I retrieve the text from a GtkMenuItem? (timj)
12641                 How do I validate/limit/filter the input to a GtkEntry? (me)
12642                 Memory does not seem to be released when I free the list
12643                         nodes I've allocated (timj)
12644
12645 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12646
12647         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12648         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12649         for which it is no use to call GetLastError onWin9x.
12650         (gdk_other_api_failed) New function, for general error
12651         reporting without calling GetLastError.
12652         (gdk_win32_api_failed) OTOH, this function always calls
12653         GetLastError. (gdk_win32_last_error_string) Remove this function,
12654         GLib has the equivalent now.
12655
12656         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12657         call them with function name, file name and line number in the
12658         arguments.
12659
12660         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12661         functions.
12662         
12663         * gtk/gtk.def: Add some missing entry points.
12664
12665         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12666         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12667         
12668         Fixes by Hans Breuer:
12669
12670         * gdk/makefile.msc: Update for debugging.
12671
12672         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12673         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12674         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12675         in the dash_list.
12676
12677         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12678         the x11 backend.
12679
12680         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12681
12682         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12683
12684 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12685
12686         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12687         just pixel value of background colour.
12688
12689         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12690         containing code snippet previously duplicated in a couple of
12691         places.
12692         
12693         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12694         gdk_colormap_color.
12695
12696         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12697         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12698         events for autorepeated Shift, Control and Alt keys. Use
12699         gdk_colormap_color.
12700
12701         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12702         pointer is inside the window the cursor of which we are setting,
12703         call SetCursor immediately.
12704
12705         * gdk/win32/makefile.cygwin
12706         * gtk/makefile.cygwin: If we don't have the build number stamp
12707         file, use zero.
12708
12709         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12710         gtk_paned_set_gutter_size as empty.
12711
12712         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12713         
12714 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12715
12716         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12717           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12718           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12719           docs/gtk_tut.sgml docs/gtk.texi TODO:
12720
12721           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12722
12723 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12724
12725         * gtk/gtkcalendar.c: Implement num_marked_dates,
12726           and don't emit mutiple day_selected signals on
12727           month_prev.
12728
12729 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12730
12731         * docs/make-todo (lineno): let title and logo be configurable so
12732         that GNOME can use this script too.
12733
12734         * TODO.xml: added logourl and a title
12735
12736 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12737
12738         * TODO.xml: Added some UI items, and an explanatory
12739         comment at the top of the file.
12740
12741 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12742
12743         * TODO.xml: some updates, added abunch of new entries.
12744         a note for those fiddeling with this file, when done
12745         with it, invoke:
12746         $ ./docs/make-todo TODO.xml >/dev/null
12747         and correct output errors before comitting changes.
12748
12749 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12750
12751         * TODO.xml: Added XML-structured TODO file.
12752         * docs/make-todo: python script to turn TODO.xml into
12753           pretty XML output. 
12754
12755 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12756
12757         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12758         the function to let it draw the seven dots, instead of the old,
12759         much maligned, method.
12760         (draw_dot): New function to draw a dot.
12761
12762         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12763         to draw the handle inside the border width as opposed to outside.
12764         Use paint function instead of gdk_draw_point.
12765
12766         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12767         to draw the handle inside the border width as opposed to outside.
12768         Use paint function instead of gdk_draw_point.
12769
12770         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12771         Change indenting to be more GTK like.
12772
12773 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12774
12775         * docs/gtk_tut.sgml: New section on GtkCalendar
12776         * examples/calendar: Update example code
12777
12778 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12779
12780         * docs/gtkfaq.sgml: FAQ Update
12781
12782 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12783
12784         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12785         to prevent the scroll event to be propagated upwards.
12786
12787 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12788
12789         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12790         OwnerGrabButtonMask from button entries for
12791         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12792
12793         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12794         to the event mask (which will result in button/press release
12795         being added to the event mask on Unix) so scrolling works
12796         for layouts in scroll windows.
12797
12798         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12799
12800         Patch from Anders Carlsson  <andersca@gnu.org> to add
12801         a scroll event.
12802
12803         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12804         scrolling to the "Test Scrolling" part of testgtk.
12805  
12806         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12807  
12808         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12809         it against GDK_SCROLL.
12810  
12811         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12812         way of mouse wheel scrolling.
12813  
12814         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12815  
12816         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12817  
12818         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12819  
12820         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12821         gdk_event_mask_table.
12822  
12823         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12824         GdkEventScroll handler.
12825  
12826         * gdk/gdkevents.h: Added GdkEventScroll structure.
12827  
12828 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12831         and Anders Carlsson to change the Paned widgets so that they
12832         can be dragged from anywhere along the length. Also change
12833         the way that this is drawn to make this apparent.
12834
12835         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12836         from George Lebl to check that option_menu->menu is present
12837         before getting history.
12838
12839 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12840
12841         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12842         before the assertion for non-NULL segment list.
12843
12844         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12845         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12846         machine, but it might be display driver dependent. Sigh, so make
12847         sure the stipple is that size. Does Windows suck or what?
12848
12849         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12850         places.
12851
12852 2000-02-13  Havoc Pennington  <hp@pobox.com>
12853
12854         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12855         refcount to 1
12856         (gdk_cursor_new): init refcount to 1
12857
12858         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12859
12860 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12861
12862         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12863         so that we don't have to do unnecessary settings to the HDC.
12864
12865         * gdk/win32/gdkdrawable-win32.c
12866         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12867         gdk_gc_predraw.
12868
12869         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12870         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12871         GDI paths, call WidenPath to get the outline of the stroken path,
12872         and then fill the outline (with the brush that was built from the
12873         stipple).
12874
12875         * gdk/win32/gdkgc-win32.c: Factor out common code from
12876         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12877         gdk_win32_gc_values_to_win32values. Use correct colour for
12878         SetBkColor() (Until now the code actually used a random colour in
12879         the call to SetBkColor()... but that didn't show up as not many
12880         GDI APIs use the background colour. Pattern (opaque stippled)
12881         brushes do.)
12882
12883         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12884         gdk_win32_api_failed): New functions for error logging.
12885
12886         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12887         WIN32_API_FAILED to call them, passing function or file name and
12888         line number.
12889
12890         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12891
12892         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12893         GdkColor for foreground and background in GdkGCWin32Data.
12894
12895         * gdk/makefile.cygwin: Link in the resource object separately.
12896
12897         * gdk/win32/rc/gdk.rc
12898         * gtk/gtk.rc (New file)
12899         * gdk/win32/makefile.cygwin
12900         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12901         as in GLib.
12902
12903 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12904
12905         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12906         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12907         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12908         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12909         parameters given and cursor->ref_count. coding style fixups.
12910
12911         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12912         not GtkWidget.
12913         
12914         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12915         fix up widget macros and add _GET_CLASS() variant.
12916         
12917         * gtk/*.c: some GtkType fixups.
12918
12919 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12920
12921         * gdk/win32/gdkproperty-win32.c
12922         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12923         were reversed.
12924
12925 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12926
12927         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12928         g_filename_to_utf8 to convert the font names Windows gives us from
12929         whatever is the default codepage to UTF-8.
12930         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12931         in the other direction.
12932
12933         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12934         error in debugging output.
12935
12936 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12937
12938         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12939         and height parameters to gdk_window_clear_area(). Not minus one.
12940
12941 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12942
12943         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12944         checks if the widget passed to gtk_drag_get_data() was not the
12945         dest widget.
12946
12947 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12948
12949         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12950         g_filename_from_utf8 functions (which were added a moment ago to
12951         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12952         size buffers.
12953
12954         gtk_file_selection_get_filename returns the filename in the C
12955         runtime encoding. It calls g_filename_from_utf8, but copies the
12956         returned string to a static buffer, which is returned. I think
12957         this is better than returning the result from g_filename_from_utf8
12958         directly, which would mean all apps that use it would have to free
12959         the return value. Or should this function care about this issue at
12960         all? Maybe a new function with clearly defined semantics.
12961
12962         * gtk/gtkfilesel.h: Add comment about
12963         gtk_file_selection_get_filename returning the filename in the C
12964         runtime's encoding.
12965
12966         * README.win32
12967         * gdk/gdk.def
12968         * gdk/makefile.{cygwin,msc}
12969         * gtk/gtk.def: Updates.
12970
12971         * gdk/gdkcursor-win32.c: Initialise refcount.
12972
12973 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12974
12975         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12976
12977 2000-01-30  Havoc Pennington  <hp@pobox.com>
12978
12979         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12980         destroy
12981
12982         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12983
12984         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12985         implemented in platform-specific code
12986
12987         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12988
12989         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12990         underscore in front
12991
12992         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12993         put an underscore in front
12994
12995         * gdk/gdkcursor.c: new file, implements
12996         gdk_cursor_ref/gdk_cursor_unref
12997
12998         * gdk/gdkcursor.h: Refcount GdkCursor
12999
13000         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
13001
13002 2000-01-29  Tor Lillqvist  <tml@iki.fi>
13003
13004         * gdk/gdkwindow.h
13005         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
13006
13007 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13008
13009         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
13010         structures to properly inherit from GtkWidget not GtkBin.
13011
13012 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
13013
13014         * gtk+.spec.in: Added lib/gtk+/include/* to %files
13015         (bug #5178 - Peter Wainright)
13016         
13017         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
13018         so that it will be installed.
13019         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
13020
13021 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
13022
13023         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
13024         for the GtkStyleClass vtable const.
13025
13026         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
13027         take a const string argument like GtkTranslateFunc. This will
13028         require changes in use code.
13029
13030 2000-01-19  Tor Lillqvist  <tml@iki.fi>
13031
13032         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
13033         semantics (to mimic the X11 backend, which just calls XClearArea)
13034         is to check for zero width (and height), and in that case use the
13035         window's width minus x (height minus y). This fixes for instance
13036         some redraw problems with gtkclist, which were easily noticeable
13037         in the gtk file selection widget.
13038
13039         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
13040         windows.
13041
13042 2000-01-13  Tor Lillqvist  <tml@iki.fi>
13043
13044         * configure.in
13045         * gdk/Makefile.am
13046         * gdk/x11/Makefile.am
13047         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
13048         (bug #5177).
13049         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
13050         out later.
13051
13052 2000-01-09  Tor Lillqvist  <tml@iki.fi>
13053
13054         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
13055         WM_MOVE for iconified or invisible windows. This fixes various
13056         problems when minimising windows. Thanks to Bernd Herd.
13057
13058 2000-01-05  Tor Lillqvist  <tml@iki.fi>
13059
13060         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
13061         backend's draw_lines method, not draw_points.
13062
13063 2000-01-02  Tor Lillqvist  <tml@iki.fi>
13064
13065         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
13066         before Owen's reorganisation: Don't have queued_events and
13067         queued_tail statics in this file, but use gdk_queued_events and
13068         gdk_queued_tail. This makes exposure event compression work again.
13069
13070         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
13071         seem to be needed?
13072
13073 1999-12-30  Tor Lillqvist  <tml@iki.fi>
13074
13075         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
13076         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
13077         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
13078         doesn't do anything.
13079
13080         * gdk/gdk.def: Add gdk_xid_table_insert.
13081
13082         * gdk/win32/gdkprivate-win32.h
13083         * gdk/win32/gdkevents-win32.c
13084         * gdk/win32/gdkinput-win32.c
13085         
13086         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
13087         extension_events field in the GdkWindowWin32Data struct. Use only
13088         the extension_events field in GdkWindowPrivate. Previously one was
13089         set, and the other one tested, which broke tablet
13090         functionality. Thanks to Keishi Suenaga for pointing this out.
13091
13092 1999-12-18  Tor Lillqvist  <tml@iki.fi>
13093
13094         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
13095         When handling a single character (text length == 1), don't handle
13096         it as if it was UTF-8.
13097
13098 1999-12-11  Tor Lillqvist  <tml@iki.fi>
13099
13100         * Makefile.am: Distribute README.win32.
13101         
13102         * gdk/Makefile.am
13103         * gdk/win32/Makefile.am: Distribute Win32 files.
13104
13105         * gdk/makefile.msc: New file.
13106
13107         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
13108         after label).
13109
13110         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
13111         gdk_error_code as GDKVAR, as they are referred outside GDK.
13112
13113         * gdk/win32/makefile.msc: Update.
13114
13115         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
13116         tweaks. Check only if at least one of those Unicode subrange bits
13117         we care for is set. If no code page bits are set, guess (wildly)
13118         based on the charset.
13119
13120         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
13121
13122         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
13123         non-NULL.
13124
13125         * gtk/gtkdnd.c
13126         * gtk/gtklayout.c
13127         * gtk/gtkplug.c
13128         * gtk/gtkselection.c
13129         * gtk/gtksocket.c
13130         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
13131         appropriate. There must be a cleaner way to handle this?
13132
13133         * gtk/gtkrc.c: Must include windows.h on Win32.
13134
13135         * gtk/testgtk.c: No need to include gdkx.h.
13136
13137         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13138
13139 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13140
13141         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13142         the rbearing is set to the same as the width, but this should be
13143         fixed.
13144
13145 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13146
13147         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13148         function. If Windows doesn't tell us what Unicode subranges a font
13149         covers, guesstimate based on the codepages it covers. This will
13150         hopefully help those Windows versions or fonts that don't give us
13151         any useful Unicode subrange information with GetTextCharsetInfo.
13152         Call this function in gdk_font_load_internal.
13153
13154         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13155         minor changes.
13156
13157 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13160         New function, long needed.
13161
13162 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13163
13164         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13165         only_if_exists argument of gdk_atom_intern to
13166         bool.
13167
13168 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13169
13170         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13171         Fix two copy&paste errors.
13172
13173         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13174         win32 has changed.
13175
13176         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13177         GdkWin32SingleFont struct.
13178
13179         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13180         subranges of loaded fonts. Clear font signature first, in case
13181         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13182         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13183
13184         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13185         Unoffset clip region.
13186
13187 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13188
13189         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13190         event->any.window before calling filter functions.
13191
13192 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13193
13194         * gtk/gtkgamma.h: Adapt cast macros to standard.
13195
13196 [ Merges from 1.2 ]
13197
13198 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13199
13200         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13201         If translation does not include a '/', use entire
13202         translation instead of crashing.
13203
13204 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13205
13206         * docs/gtk_tut.sgml:
13207         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13208
13209 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13210
13211         * gtk/gtkselection.c (gtk_target_list_remove): Use
13212         g_list_remove_link, not g_list_remove.
13213
13214         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13215         
13216 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13217
13218         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13219         statement upon unselection (how the heck did that slip in?).
13220
13221 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13222
13223         * gtk/gtktext.c (gtk_text_freeze): 
13224         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13225         in frozen state (and aparently crashes). patch provided by Anders
13226         Melchiorsen <and@kampsax.dtu.dk>.
13227
13228 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13229
13230         * fix insensitive default/focus widget activation,
13231         reported by Matt Goodall <mgg@isotek.co.uk>.
13232
13233         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13234         (gtk_window_activate_default):
13235         (gtk_window_activate_focus):
13236         return handled=FALSE for actiavtion of insensitive default
13237         widgets. return handled=TRUE for activation of insensitive
13238         focus widgets. don't activate in either case.
13239
13240 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13241
13242         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13243         and $glib_cflags to match library order and in the
13244         theory that an old version of GLib is more likely to
13245         be in the include directory for X then vice-versa.
13246         (Bug #2776)
13247
13248 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13251         to determine the locale for fontsets, not LC_MESSAGES;
13252         the user may want English messages with a handling
13253         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13254         will still be broken) (Bug #2891)
13255
13256 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13257
13258         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13259
13260 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13261
13262         * gtk/gtkrc.ko: Changed the Korean default fontset.
13263
13264 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13267         where when scrolling to the left or top double exposes
13268         were done, causing major slowdowns.
13269
13270 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13271
13272         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13273         names to lowercase and alphanumeric, before looking
13274         them up.
13275
13276         * gtk/Makefile.am: Install codeset variant gtkrc files
13277         with normalized names.
13278
13279 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13280
13281         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13282         popup menus when the menu is already visible, but its parent
13283         is still hidden, (happens after tornoff window got hidden).
13284
13285 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13286
13287         * gtk/Makefile.am (install-data-local): Fix
13288         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13289         deleted, causing error messages on install.
13290
13291 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13292
13293         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13294         the handle as well, since we now sometimes ignore
13295         exposes on the handle while resizing.
13296
13297 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13298
13299         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13300         extra g_free introduced in one of the last one or two 
13301         commits.
13302
13303 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13304
13305         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13306         consistent, put each style that a gtkrc.* file creates
13307         in a unique namespace, remove old files before installing.
13308
13309 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13310
13311         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13312         gtk_rc_init is called multiple times. (Yes, people who
13313         do that have bugs in their code.)
13314
13315 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13316
13317         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13318         Remove it since it's generated by the Makefile anyway
13319
13320 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13321
13322         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13323         device->info.axes for core pointer.
13324
13325 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13326
13327         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13328         idle_id, to deal with obsolete, broken C libraries.
13329
13330 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13331
13332         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13333         allocation->x/y twice!
13334
13335         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13336         consistent with gtk_vscale_pos_trough().
13337
13338 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13339
13340         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13341         be queueing a resize on a toplevel container between
13342         the time we show it and when we map it. So, we need
13343         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13344         use GTK_WIDGET_DRAWABLE() for child windows.
13345
13346 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13347
13348         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13349         (fixes bug #2144)
13350
13351 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13352
13353         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13354         container DRAWABLE (instead of VISIBLE), so we don't queue
13355         resizes on non-toplevel containers.
13356
13357 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13358
13359         * gtk/gtkselection.[ch]: Make the data argument
13360         const guchar *.
13361
13362 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13363
13364         * gtk/gtkwindow.c: Try to behave sensibly if 
13365         the focus widget is the window itself. (Should
13366         we allow this at all?)
13367
13368 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13369
13370         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13371         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13372         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13373         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13374         in prototypes and implementations consistent (Tomas Ogren).
13375
13376         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13377         before the widget is unparented (reported by damon).
13378
13379         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13380         since we provide unsigned data anyways.
13381
13382 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13383
13384         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13385         the call to gtk_tooltips_layout_text() until later.
13386
13387         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13388         Call gtk_widget_ensure_style() before using the style.
13389
13390 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13391
13392         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13393         for old widgets that don't propagate draws to all
13394         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13395
13396 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13397
13398         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13399         for a redraw but just the widget that requested the resize.
13400
13401 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13402
13403         * gtk/gtkcontainer.c: added new widget level method
13404         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13405         reallocate_redraws : 1 to reflect the setting, exported this through
13406         the argument system as a boolean ::reallocate_redraws.
13407
13408         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13409         on the widget because the allocation changes, do so as well for
13410         widget->parent if the parent has reallocate_redraws set to TRUE.
13411         with that containers requesting reallocation redraws get automatically
13412         redrawn if their children changed allocation (this unfortunately
13413         affects also other children that didn't change allocation, but we
13414         cannot work around that before 1.3).
13415
13416 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13417
13418         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13419         _and_ height are >0 (not _or_).
13420
13421         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13422         instead of gtk_container_queue_resize(), which is a core gtk internal
13423         function (must have been on crack when i queued that).
13424
13425         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13426         we can check more reliably if we want to discard expose events.
13427         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13428         flag.
13429         
13430         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13431         we simply trust these events. for deciding whether to discard exposes,
13432         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13433         
13434 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13435
13436         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13437         queues of areas that are completely off screen.
13438
13439         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13440         logic for handleboxes.
13441
13442         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13443         check on width/height.
13444
13445 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13446
13447         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13448         we are fine with using $@ the way we do (if we actually encounter
13449         brokeness with $@ in VPATH builds because of additional path prefixes,
13450         we need to use $(@F) actually).
13451
13452 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13453
13454         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13455         short lived bugs, that would allow language bindings to do surgeries
13456         to our guts.
13457
13458 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13459
13460         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13461         where comparison was being done against an uninitialized
13462         value causing intermittant results depending on
13463         compiler flags. Also make it clearer that we aren't
13464         ever initializing the child as 0x0 (though this will
13465         be caught in gtk_widget_size_allocate())
13466
13467 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13468
13469         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13470         gtk_window_unset_transient_for() call after we do checks
13471         involving the old transient parent.
13472         [ From Lance Capser <lmc@cyberhighway.net> ]
13473
13474 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13475
13476         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13477         an empty file.
13478
13479 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13480
13481         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13482         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13483
13484 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13485
13486         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13487         `$@' is valid only in the build dir, not after we've done 
13488         `cd $srcdir'.  Also use `test -f' instead of less portable
13489         `test -e'.
13490
13491 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13492
13493         * gtk/gtktext.c (correct_cache_insert): Rewrite
13494          for simplicity, and hopefully correctness.
13495          (Fixes bug #1322, which was a segfault when
13496           on some insertions with the properties around
13497           the insertion set up just wrong.)
13498
13499         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13500          a "changed" signal, clamp the new value to the adjustment
13501          bounds to avoid segfaulting if someone tries to change
13502          the adjustment to a bogus value. (Bug #1795)
13503
13504 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13505
13506         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13507         for children, for toplevel windows handle them
13508         like delete_event.
13509
13510         * gtk/gtkplug.c: Add an unrealize handler so that
13511         we unref plug->socket_window when we are done
13512         with it.
13513
13514 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13515
13516         * gtk/gtktext.c (clear_area): Fix stupid signedness
13517          problem that was causing background to sometimes
13518          be misaligned.
13519
13520 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13521
13522         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13523         
13524         * gtk/gtkmenu.c (gtk_menu_position): Make
13525          sure we never position menus with negative x, y,
13526          since gtk_widget_set_uposition() can't handle that.
13527
13528         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13529          Modify the positioning code a bit so that we always
13530          put the top-left corner onscreen. (This is for
13531          UI reasons, gtk_menu_position() now takes care of
13532          gtk_widet_set_uposition() brokeness.)
13533
13534 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13535
13536         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13537
13538 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13539
13540         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13541           RC style that is passed in. The lack of the ref
13542           before was a bug. If people worked around this
13543           bug, this will introduce a slight memory leak
13544           in their code. The code should typically look like:
13545
13546             rc_style = gtk_rc_style_new ();
13547             [...]
13548             gtk_widget_modify_style (widget, rc_style);
13549             gtk_rc_style_unref (rc_style);
13550
13551         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13552           the style if it was already set.
13553
13554         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13555           style if it was set before.
13556
13557 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13558
13559         * gtk/testgtk.c (main): Add a check to see if we
13560           are being run from the correct directory and
13561           to quit nicely if we are not.
13562
13563         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13564           static.
13565
13566 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13567
13568         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13569
13570         * gtk/gtkwindow.c:
13571         queue resizes unconditionally (gtk_widget_queue_resize will figure
13572         what to do if the window is not realized).
13573         (gtk_window_move_resize): only recenter the window
13574         for GTK_WIN_POS_CENTER_ALWAYS.
13575         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13576         the same way as GTK_WIN_POS_CENTER.
13577
13578 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13579
13580         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13581         with (!(info->last_flags & GDK_HINT_POS)) instead of
13582         (!info->last_flags & GDK_HINT_POS).
13583
13584         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13585         new_height unconditionally, because we use these values even if
13586         !default_size_changed && !hints_changed.
13587         comented the (default_size_changed || hints_changed) case with
13588         respect to resize rejects from the window manager.
13589
13590         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13591         in the zvt condition hack, since this includes the window hints, set
13592         the hints after the handling_resize case.
13593
13594         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13595         window is initially shown with to the geometry.
13596
13597 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13598
13599         * gtk/gtkwindow.c (gtk_window_move_resize):
13600         s/size_changed/default_size_changed/g so i know what's
13601         really going on (frying brain on smaller flame now).
13602
13603 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13604
13605         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13606         we have size_changed upon handling_resize. this is a gross
13607         workaround for the broken zvt widget and should be removed in
13608         1.3 again (search for FIXME).
13609         Owen provided an accurate comment for this:
13610
13611         /* We could be here for two reasons
13612          *  1) We coincidentally got a resize while handling
13613          *     another resize.
13614          *  2) Our computation of size_changed was completely
13615          *     screwed up, probably because one of our children
13616          *     is broken. It's probably a zvt widget.
13617          *
13618          * For 1), we could just go ahead and ask for the
13619          * new size right now, but doing that for 2)
13620          * might well be fighting the user (and can even
13621          * trigger a loop). Since we really don't want to
13622          * do that, we requeue a resize in hopes that
13623          * by the time it gets handled, the child has seen
13624          * the light and is willing to go along with the
13625          * new size. (this happens for the zvt widget, since
13626          * the size_allocate() above will have stored the
13627          * requisition corresponding to the new size in the
13628          * zvt widget)
13629          *
13630          * This doesn't buy us anything for 1), but it shouldn't
13631          * hurt us too badly, since it is what would have
13632          * happened if we had gotten the configure event before
13633          * the new size had been set.
13634          */
13635
13636 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13637
13638         * gtk/gtkrc.c: deal properly with the fact that RC
13639           style lists may include rc styles more than once.
13640
13641         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13642           unused static function.
13643
13644         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13645           stack of directories of RC files currently being
13646           parsed and implicitely add them to pixmap path.
13647           
13648           This fixes a bug where the directory would get
13649           appended then overwritten by pixmap_path declarations.
13650
13651           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13652
13653         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13654           theme's exit function. (Patch from Peter Wainwright,
13655           bug #1454)
13656
13657         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13658           Add a destroy() handler to take care of removing
13659           group for menu item. (Fixes bug #1197)
13660
13661         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13662           in warning message.
13663
13664 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13665
13666         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13667         roundtrip to figure window's width and height, since we know that
13668         anyways from widget->allocation.
13669
13670 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13671
13672         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13673           the hints after we request the new size.
13674
13675 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13676
13677         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13678           GTK_WIDGET_REALIZED() assertion - we can compute the
13679           hints before we are realized.
13680
13681         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13682           hint changing so that we have a value of hints_changed
13683           when we decide whether to constrain the window size.
13684
13685         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13686
13687         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13688         change back to G_MAXINT.
13689
13690 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13691
13692         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13693         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13694         contain uncluttered values.
13695         (gtk_window_compute_hints): simply assert that window is realized
13696         and that geometry_info is valid, since we rely on this anyways.
13697         (gtk_window_constrain_size): major cleanups to the code.
13698         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13699         for the base size, instead of the minimums. use 32767 as max width
13700         and height (like in gtkwindow.c) instead of G_MAXINT.
13701
13702 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13703
13704         * cleaned up the GtkContainer.need_resize flag handling mess, we
13705         only need to force resize requests when we were prematurely
13706         realized, or our widget tree was modified when we were temporarily
13707         hidden. handling these cases directly upon showing the window (i.e.
13708         while the GdkWindow is still unmapped) avoids the need to wait for
13709         a configure event response and therefore makes the GUI more snappier
13710         and avoids blank windows during the roundtrip.
13711
13712         * gtk/gtkwidget.c:
13713         (gtk_widget_hide): 
13714         (gtk_widget_show): don't queue resizes on toplevels, they know how
13715         to deal with matters.
13716
13717         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13718         flag directly for not visible resize containers and spare us unecessary
13719         signal emissions.
13720
13721         * gtk/gtkwindow.c:
13722         (gtk_window_realize): if we need to enforce premature size allocation,
13723         queue a container resize so we are correctly resized later on.
13724         (gtk_window_init):
13725         (gtk_window_size_request):
13726         don't freak around with the ->need_resize flag,
13727         gtk_container_queue_resize() will care about that.
13728         (gtk_window_show):
13729         handle initial resizing issues here, we can handle matters better in
13730         this place, especially since we know that our GdkWindow is still
13731         unmapped.
13732         (gtk_window_move_resize):
13733         don't care about ->need_resize at all.
13734         handle size changes properly that occoured while we waited for a
13735         configure event.
13736
13737 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13738
13739         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13740         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13741         Move the hint setting code from gtk_widget_set_uposition
13742         to here; set the hints so that we respect any previously
13743         set geometry hints.
13744
13745         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13746         change the window hints here or move the window here,
13747         let that happen in gtk_window_move_resize().
13748
13749 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13750
13751         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13752         to already queued resizes (and therefore redraws) on a widget, check
13753         its anchestry as well.
13754
13755         * gtk/gtkcontainer.c:
13756         (gtk_container_queue_resize): clear resize widgets for resize
13757         containers before aborting prematurely. this is especially important
13758         for toplevels which may need imemdiate processing or their resize
13759         handler to be queued.
13760         (gtk_container_dequeue_resize_handler): added new internal function for
13761         gtkwindow.c.
13762
13763         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13764         configure event, take possible changes in window position into account
13765         as well.
13766         if we request a new window size, queue up a resize handler that will
13767         last until the configure event response arrives.
13768         combined the ->need_resize case (initial show) with the general size
13769         (hints) changed case and added even more comments.
13770         if !auto_shrink, only revert to the old allocation if the new size
13771         is smaller than the current allocation.
13772
13773 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13774
13775         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13776                            gtk_window_set_geometry_hints
13777                            gtk_window_set_default_size):
13778         When hints are set, queue a resize so that the hints will
13779         be eventually reset on the toplevel.
13780
13781         * gtk/gtkwindow.c (gtk_window_show): Use
13782         gtk_window_compute_default_size(). Clear the need_resize flag
13783         on the initail map so that we don't unnecessarily trigger the
13784         resize code.
13785
13786         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13787         into separate functions. Compare the hints we are setting
13788         with what we set last time so that we can accurately
13789         tell when we need to reset the hints.
13790
13791         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13792         function to figure out the size from requisition
13793         and default_size.
13794
13795         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13796         from fvwm to constrain a size to the geometry hints.
13797
13798         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13799         to compare two sets of geometry hints.
13800
13801         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13802         from gtk_window_set_hints(), just compute the hints,
13803         don't set them.
13804
13805         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13806         code from gtk_window_move_resize() to separate function,
13807         rationalize a bit.
13808
13809 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13810
13811         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13812         structure into a new private structure.
13813
13814         * gtkrc.c: Split GtkRcStyle into public/private.
13815         In the private part, add a list of pointers to the
13816         RcStyle lists this RcStyle participates in.
13817
13818         * gtkrc.c: When a RcStyle is free, remove all
13819         lists referencing it from the 
13820         realized_style_ht hash, and free those lists.
13821         
13822         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13823         gtk_rc_init(), since that adds the default styles
13824         to the list of parsed RC files again.
13825
13826         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13827         
13828 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13829
13830         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13831         checks that ensure that a widget's allocation is at least 1 in width
13832         and height. (GNOME note: this doesn't affect old panel code anymore,
13833         because GtkSocket will request width and height of at least 1 since
13834         Fri Jul 23).
13835
13836         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13837         allocated yet (happens if the user realizes the window prematurely),
13838         size request and allocate it.
13839         (gtk_window_size_allocate): guard against guint underflows.
13840
13841 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13842
13843         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13844         in gtk_built_sources, so gtk.defs gets built prior to all other
13845         sources.
13846
13847 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13848
13849         * gtk/Makefile.am:
13850         invoke indent on gtkmarshal.*. 
13851         rewrote source generation rules, use COPYING as oldest source tag for
13852         a piggyback rule to generate all sources from (don't touch it ;).
13853         major cleanups, strip spaces on build rules for GNU Make.
13854
13855         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13856         source and target files from commandline arguments. don't invoke indent.
13857
13858 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13859
13860         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13861         notebook after switch to avoid drawing problems.
13862         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13863         
13864         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13865         show them instead. 
13866         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13867
13868 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13869
13870         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13871         notebook after switch to avoid drawing problems.
13872         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13873         
13874         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13875         show them instead. 
13876         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13877
13878 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13879
13880         * gtk/gtkwindow.c:
13881         we use window->need_resize from configure_event now, to indicate that
13882         the gtkwindow should keep its allocation (e.g. because the user resized
13883         the window through window manager handles). resize_count is now reliably
13884         used to figure whether we got the allocation we requested from the
13885         window manager.
13886         configure events get queued as resizes now, the real stuff (size
13887         computation and allocation) now only goes on in gtk_window_move_resize().
13888         GtkWindow's requisition now contains its *real* requisition (like all
13889         other widgets), *not* taking usize into account.
13890         geometry_info->last_{width|height} is now updated from set_hints() only
13891         so it always contains the last hints we set for the window manager.
13892         made some event handlers return TRUE instead of FALSE.
13893         the overall code should be much more straight forward now, and the
13894         significant code portions are accompanied by comments now.
13895         (gtk_window_set_hints):
13896         removed requisition argument and made it
13897         fetch the requisition through gtk_widget_get_child_requisition.
13898         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13899         does that now.
13900         (gtk_window_show):
13901         ensure that the widget is realized before calling 
13902         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13903         ensure that we got properly size requested and allocated before
13904         realization.
13905         (gtk_window_configure_event):
13906         ignore plain window moves, or reallocate the widget tree through the
13907         resize queue otherwise.
13908         (gtk_window_move_resize):
13909         mostly rewrote this function to figure window manager hints more
13910         reliably, coalesce window moves and resizes to reduce configure events
13911         and do actuall size allocations.
13912
13913 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13914
13915         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13916         that have a resize pending, because a redraw is already queued for them.
13917
13918         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13919         hack to clear resize_widgets.
13920
13921         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13922         for resize containers prior to size allocation. (this is also a bit
13923         ugly, but avoids side effects for stopped emissions and is thus more
13924         reliable).
13925         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13926
13927         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13928         function from gtk_tooltips_expose, as we connect to ::expose_event
13929         *and* ::draw now.
13930
13931 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13932
13933         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13934         checks.
13935         (gtk_target_list_unref): Likewise.
13936
13937         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13938
13939 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13940
13941         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13942         guard against division by zero. (Fixes bug #1339)
13943
13944 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13945
13946         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13947         Prevent the trivial leak of information of allowing
13948         word motion when the entry is not visible.
13949
13950 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13951
13952         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13953         modality to error dialog as well as confirmation dialogs.
13954         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13955
13956 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13957
13958         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13959         tree->view_lines.
13960         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13961
13962         * gtk/Makefile.am (install-data-local): Solaris apparently
13963         has various troubles with ln -f; use rm first instead.
13964         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13965
13966 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13967
13968         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13969         use `cp' followed by `rm' (the `rm' was already there).
13970
13971 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13972         
13973         * configure.in: Fix autoconf warnings about cross compilation by
13974         trying to provide sane defaults for AC_TRY_RUN.
13975         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13976         put them into $(srcdir) when generated. Also add a dependency of
13977         gtksignal.h on gtkmarshal.h for -j builds. 
13978         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13979
13980 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13981
13982         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13983         GDK_THREADS_{LEAVE,ENTER} pair.
13984         (From Paul Fisher <pnfisher@redhat.com>)
13985
13986 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13987
13988         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13989         width and height are always >0 (owen).
13990
13991 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13992
13993         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13994         change that assured that a widget's allocated with and height are
13995         always >1, since this breaks *buggy* panel code. unfortunately this
13996         back-breaks the gimp's color selector.
13997
13998         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13999         allocation is always >0 in width and height, before sending the
14000         configure event; this is a *gross* hack to get the gimp back to work.
14001         
14002         * marked both cases with TODO-1.3
14003
14004 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
14005
14006         * gtk/gtktext.c: Don't display wrap indicators when
14007         text is not editable and word wrap is on.
14008
14009 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
14010
14011         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
14012         option menus here as they are not derived from menu shell, assure that
14013         the option menu has a menu we can add items to.
14014
14015 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
14016
14017         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
14018         width/height to (gint) before calculations and check against < 0 to
14019         avoid guint wraparounds.
14020
14021 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
14022
14023         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
14024         width and height is never zero. sanity check both dimensions against
14025         32767 and issue a warning if the allocation is greater than that.
14026
14027 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
14028
14029         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
14030         to g_main_pending() as well.
14031
14032 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
14033
14034         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
14035         call to g_main_iteration() - since that will regrab
14036         GTK+ lock to process events.
14037
14038 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
14039
14040         * gtk/gtkwindow.c
14041         - Regularize with the rest of GTK+ by making widget->requisition
14042           not reflect the set_usize()
14043         - Always recompute geometry hints, then check if they
14044           changed before sending them to the X server. The
14045           previous checks for changes would fail in a number
14046           of circumstances. 
14047
14048 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
14049
14050         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
14051
14052 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
14053
14054         * gtk/gtkdnd.c:
14055         - Code cleanups
14056         - Instantaneously update on modifier key presses
14057         - Allow cancellation of the drag with Escape.
14058
14059 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
14060
14061         * gtk/testgtk.c (create_handle_box): Set the policy
14062         to auto_shrink - otherwise the appearance is rather
14063         strange when flipping between horizontal and vertical.
14064
14065 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
14066
14067         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
14068         (gtk_window_set_default_size): don't change a value if it's < 0.
14069         queue a resize.
14070
14071 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
14072
14073         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
14074
14075 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
14076
14077         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
14078         add an extra "/" when concating "/" + filename.
14079         (From Matt Grossman <mattg@oz.net>)
14080
14081 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
14082
14083         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
14084         for fg_gc if we set it for drawing pixmap.
14085
14086 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
14087
14088         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
14089         
14090         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
14091         already set, call old engine's destroy function and
14092         unref the old engine.
14093
14094 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
14095
14096         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
14097
14098 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
14099
14100         * gtk/gtkaccelgroup.h: mark certain functions as internal.
14101
14102 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
14103
14104         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
14105         expand behaviour changed.
14106
14107         * gtk/gtklabel.c (gtk_label_set_pattern):
14108         (gtk_label_set_justify):
14109         (gtk_label_set_line_wrap):
14110         don't bother invoking queue_clear, the reallocation does
14111         that for us, always free_words so the upcoming resize will
14112         relayout the label's contents.
14113
14114 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
14115
14116         * applied argument implementation patches from Elena Devdariani
14117         <elena@cogent.ca>.
14118
14119         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
14120         ::space_style, ::relief
14121         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
14122         * gtk/gtkpreview.c: ::expand
14123         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
14124         * gtk/gtknotebook.c: ::homogeneous
14125         * gtk/gtklabel.c: ::wrap
14126         * gtk/gtklist.c: ::selection_mode
14127         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
14128         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
14129         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
14130         * gtk/gtkclist.c: ::sort_type
14131         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
14132         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
14133
14134 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14135
14136         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14137         comment.
14138
14139 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14140
14141         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14142         counting right when we have to attach a new style
14143         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14144
14145         * gtk/gtkstyle.c: Documented the refcounting
14146         peculularities of gtk_style_attach.
14147
14148 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14149
14150         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14151         window types.
14152
14153         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14154         of GTK_TOPLEVEL for creating the window.
14155
14156 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14157
14158         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14159         the last argument (reported by Per Winkvist).
14160         
14161 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14162
14163         Fixes for invisible XOR lines (Frank Loemker
14164         <floemker@TechFak.Uni-Bielefeld.DE>)
14165         
14166         * gtk/gtkclist.c (gtk_clist_realize): Always use
14167         a non-zero pixel for GDK_XOR.
14168
14169         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14170         Use GDK_INVERT instead of GDK_XOR.
14171
14172 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14173
14174         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14175         signals if h/voffsets differ from adjustment values.
14176         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14177
14178 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14179
14180         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14181         ::selection-done emissions up to the topmost menu shell.
14182
14183 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14184
14185         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14186         the user data on the window before destroying it.
14187
14188         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14189         unrealize handler to take care of destroying 
14190         notebook->panel properly. 
14191         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14192
14193         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14194         of g_new and g_realloc to stop memory leak. (Actually,
14195         we could just use g_realloc(), but I'm not 100% sure
14196         that is portable).
14197         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14198
14199 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14200
14201         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14202
14203         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14204         for fontsets.
14205
14206         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14207         with bin/button confusion.
14208
14209 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14210
14211         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14212         and show how preselection of radio items is done.
14213
14214 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14215
14216         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14217         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14218         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14219         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14220         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14221         * gtk/gtktable.c (gtk_table_attach): 
14222         * gtk/gtklist.c (gtk_list_insert_items): 
14223         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14224         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14225         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14226         * gtk/gtkbin.c (gtk_bin_add): 
14227         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14228         * gtk/gtkfixed.c (gtk_fixed_put): 
14229         * gtk/gtklayout.c (gtk_layout_put):
14230         general fixups to container_add logic. always realize child if
14231         child->parent is realized, only map the child and queue a resize
14232         if child and child->parent are both visible.
14233
14234 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14235
14236         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14237         instead of gtk_container_foreach to walk and unrealize children, so
14238         composite children get also unrealized.
14239         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14240         (gtk_widget_map): assert that the widget is visible (basic constrain).
14241         (gtk_widget_real_map): assert that the widget is realized (basic
14242         constrain).
14243
14244 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14245
14246         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14247
14248 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14249
14250         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14251         file for iso-8859-2 locales.
14252
14253         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14254
14255 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14256
14257         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14258          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14259          Remove some suspicious and useless lines. 
14260
14261 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14262
14263         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14264         width,height = 0, 0 to mean - here to edge of window,
14265         instead of -1, -1, since the former is all we support.
14266
14267 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14268
14269         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14270         when removing from quit_functions list.
14271
14272 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14273
14274         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14275
14276 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14277
14278         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14279          When redrawing characters on non-visible entry, use appropriate
14280          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14281
14282 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14283
14284         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14285         from drag coordinates.
14286         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14287         use drag_dest_cell.
14288
14289         * gtk/gtktree (drag_dest_cell)
14290         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14291         (Bug #1129)
14292
14293 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14294
14295         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14296         translate_* fields.
14297         (gtk_item_factory_finalize): invoke translate_notify independant from
14298         translate_data.
14299         (gtk_item_factory_set_translate_func): likewise.
14300         (gtk_item_factory_destroy): only remove ifactory pointer from those
14301         widgets that belong to us (stupid me).
14302
14303 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14304
14305         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14306         rc_style list when lookup succeeeds.
14307
14308 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14309
14310         * gtk/gtkctree.c (resync_selection): 
14311         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14312         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14313         bug.
14314
14315 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14316
14317         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14318         Add some missing GDK_THREADS_ENTER()/LEAVE around
14319         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14320
14321 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14322
14323         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14324         rather than emit_by_name.
14325
14326         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14327         on the widget across multiple signal emissions.
14328         (gtk_editable_delete_text): same here.
14329         (gtk_editable_class_init): set widget_class->activate_signal after
14330         editable_signals[ACTIVATE] has been created.
14331
14332 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14333
14334         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14335         position here prematurely -- we might not have the
14336         right ->min_position and ->max_position yet.
14337
14338 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14339
14340         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14341         Add error traps so if the other end of the connection
14342         dies, we survive.
14343
14344         * gtk/gtkselection.c (gtk_selection_notify): Clean
14345         up properly when selection property retrieval fails.
14346         
14347         * gtk/gtkselection.c (gtk_selection_request): Correctly
14348         reject SelectionRequest notifies where the handler
14349         returns no data.
14350
14351 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14352
14353         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14354         when we've previously highlighted.
14355
14356         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14357         emit two "drag_leave" signals for Motif drops.
14358
14359         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14360         back the correct status messages when dropping from
14361         Motif onto a proxy window that is rejecting the
14362         drop.
14363
14364 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14365
14366         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14367         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14368         to compare two argument values. added gtk_arg_to_valueloc() to set a
14369         variable from an arg through its location (pointer).
14370
14371         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14372         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14373         as gfloat*, uchars are collected as guchar*, ints are collected as
14374         gint*, etc...
14375
14376 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14377
14378         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14379         Include <string.h> instead of <strings.h>.
14380
14381         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14382         (actually, a lot more duplicate includes occur if
14383          you trace through the sequence of #include's)
14384         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14385         
14386 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14387
14388         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14389         gtk-a-higuti-990322-[0-3]
14390
14391         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14392         that was causing -DX_LOCALE not to work.
14393
14394         * gtk/gtkrc.c (gtk_rc_init):
14395         X_LOCALE will never have LC_MESSAGES defined
14396
14397 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14398
14399         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14400         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14401
14402         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14403         left/right as well (gtk-michael-980726-0.patch.gz).
14404
14405         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14406         for pointer values, use gchar instead of char. fixed uline allocation
14407         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14408         chunks instead of G_ALLOC_ONLY.
14409         (gtk_label_size_request): always alter requisition as passed and leave
14410         widget->requisition alone.
14411         (gtk_label_set_text): allow NULL strings.
14412         (gtk_label_new): likewise.
14413
14414 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14415
14416         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14417
14418 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14419
14420         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14421         *and* mapped (i.e. drawable).
14422         (gtk_bin_expose): only send exposes to drawable children.
14423
14424         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14425         (gtk_box_expose): only send exposes to drawable children.
14426
14427         * gtk/gtkhscale.c (gtk_hscale_draw): 
14428         * gtk/gtkvscale.c (gtk_vscale_draw):
14429         hm, this is an ugly one. we first compute the size of our trough area
14430         here (window relative) and then check intersection with the draw_area
14431         which is parent relative because we're a NO_WINDOW widget, so we need
14432         to offset the trough area by allocation.x and allocation.y before the
14433         check. (this must not be done for the background area though, since
14434         that's already computed parent relative).
14435
14436 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14437
14438         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14439         unrealize title buttons.
14440
14441 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14442
14443         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14444         (gtk_clist_column_title_active): 
14445         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14446
14447         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14448         zero initialize event, removed superfluous gdk_window_get_pointer call
14449
14450         * gtk/gtklist.c (gtk_list_vertical_timeout)
14451         (gtk_list_horizontal_timeout): removed superfluous
14452         gdk_window_get_pointer call
14453
14454 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14455
14456         * plugging problems reported by "Bruce Mitchener, Jr."
14457         <bruce@puremagic.com> due to a purify session.
14458
14459         * gtk/gtkstyle.c:
14460         (gtk_style_ref): 
14461         (gtk_style_unref): assert ref_count to be > 0.
14462
14463         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14464         the requisition.
14465         (gtk_clist_set_shift): likewise.
14466
14467         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14468         adjustments.
14469
14470         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14471         event before sending it and set send_event to TRUE (which needs to
14472         be done for *all* synthesized events).
14473         (gtk_list_vertical_timeout): likewise.
14474
14475         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14476         leaks.
14477
14478         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14479         to TRUE when synthesizing events.
14480
14481 [ *** end of merges from 1.2 *** ]      
14482         
14483 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14484
14485         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14486         (or copied from gdkconfig.h.win32 on Win32, sigh).
14487
14488         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14489
14490         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14491
14492         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14493
14494         * gdk/gdkconfig.h.win32: New file.
14495
14496         * gdk/win32/makefile.cygwin: Build just a static archive here.
14497
14498         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14499         for the DLL from the static archive built above.
14500
14501         * gdk/gdk.def: Moved here from the win32 subdirectory.
14502
14503         * gdk/win32/*: Adapt for the changed private struct organisation.
14504
14505         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14506
14507 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14508
14509         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14510         for wheel mice (buttons 4 and 5).
14511
14512 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14513
14514         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14515         drawables use just the pixel field in the foreground and
14516         background GdkColor of the GdkGC.
14517
14518         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14519         GdkColors containing uninitialized (red,green,blue) fields, and
14520         just the pixel field filled in, and furthermore in the
14521         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14522         It thus turns out that we really don't need to have the full
14523         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14524         it later to have just the pixel values.
14525
14526 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14527
14528         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14529
14530 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14531
14532         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14533         New question on GtkLabel background colors.
14534
14535         * docs/gtk_tut.sgml:
14536           - Correct the example code callback
14537             function definitions.
14538           - Update the gtkdial example code, from Frans van Schaik.
14539           - Update setselection.c to current API.
14540
14541         * examples/Makefile examples/*/*.c: Update to code
14542         listed in tutorial.
14543
14544 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14545
14546         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14547         subrange table (from the "Developing International Software for
14548         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14549         block... Get the loaded font's charset correctly.
14550
14551         (Note that this, and the other *-win32.c files, still really are
14552         the old ones, the win32 subdirectory is not ready for compilation
14553         yet after the reorg.)
14554
14555 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14556
14557         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14558         check.
14559
14560 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14561
14562         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14563         on results of XQueryDeviceState().
14564
14565 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14566
14567         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14568         we need to accesss only ->children. We need an accessor
14569         for the children.
14570
14571         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14572         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14573         to get rid of gdkx.h include.
14574         
14575         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14576         and random references to 'None'.
14577
14578         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14579         Get rid of unused #include <gdk/gdkx.h>
14580
14581         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14582         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14583         gdkconfig.h.
14584
14585 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14586
14587         * gdk/win32/gdkdraw.c
14588         * gdk/win32/gdkfont.c
14589         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14590         following yesterday's changes. (Unrelated to Owen's reorg.)
14591
14592 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14593
14594         * gdk/x11/gdkinput-gxi.c: Add missing include,
14595           fix GdkWindowPrivate => GdkDrawablePrivate.
14596
14597         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14598
14599         * gdk/x11/Makefile.am (xinput_sources): Add missing
14600         backslash to fix building with --with-xinput=none
14601
14602 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14603
14604         Move all X specific code into the x11/ directory.
14605         Aside from shuffling things around, did the following:
14606
14607        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14608          gdk_arg_context_* - a simple argument parsing system
14609          in the style of popt.
14610
14611        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14612          gdk/x11/gdkprivate-x11.h:
14613          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14614          add ->klass and ->klass_data fields. The klass_data
14615          field points to an auxilliary structure that is
14616          windowing system dependent.
14617
14618        * gdk/gdkfont.c: Make most of the measurement functions
14619          simply wrappers around gdk_text_extents().
14620
14621        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14622          _gdk_font_strlen() function that hides the weird
14623          behavior in gtk+-1.[02] where a string is interpreted
14624          differently for 8-bit and 16-bit fonts.
14625
14626        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14627          to store common code for synthesizing double/triple
14628          press events.
14629         
14630        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14631          Make all the function that modify an existing GC
14632          simply wrappers around gdk_gc_set_values().
14633          
14634        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14635          for throwing out later.
14636
14637        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14638          GdkImagePrivate and GdkColormapPrivate to have a
14639          windowing system dependent part (GdkFontPrivateX etc.)
14640          that "derives" from the system-independent part.
14641
14642        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14643          Got rid of the included-source-files for XInput in
14644          favor of automake conditionals. (Which didn't exist
14645          when XInput support was originally added.)
14646
14647        * gdk/gdkrgb.c: Remove the visual id from the debugging
14648          statements since that is X11 specific; print out
14649          type/depth info instead.
14650          
14651
14652 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14653
14654         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14655         loading duplicates of hashed fonts.
14656
14657         * gdk/gdk.c (gdk_keysym_convert_case): rename
14658         gdk_XConvertCase to gdk_keysym_convert_case, allow
14659         results to be NULL in the GTK+ style.
14660
14661         * gdk/gdkcompat.h: Started compatibility header
14662         for renames.
14663
14664 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14665
14666         * gdk/win32/gdkprivate.h: New font private structures, related to
14667         fontsets.
14668
14669         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14670         gdk_font_list_free(). On X11, will just be wrappers to
14671         XListFonts() and XFreeFontNames(). On Win32, the code previously
14672         in gtkfontsel.c is now here.
14673
14674         New function gdk_font_xlfd_create(). On X11 will get the FONT
14675         property of the font (for GDK_FONT_FONTs), or call
14676         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14677         builds a XLFD style name from the font information in the LOGFONT
14678         struct(s).
14679
14680         New function gdk_font_xlfd_free(), which correspondingly frees the
14681         string returned by gdk_font_xlfd_create().
14682
14683         Implement fontsets on Win32. Add a function that iterates over a
14684         wide char string and calls a callback function for each substring
14685         of wide chars from the same Unicode subrange (and thus probably
14686         available in the same real font).
14687
14688         Improve the XLFD emulation a bit.
14689
14690         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14691
14692         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14693         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14694         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14695         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14696         ImmGetCompositionStringW() to get the composed Unicode chars.
14697
14698         * gdk/win32/gdkgc.c
14699         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14700         struct changes.
14701
14702         * gdk/win32/gdk.def: Add the new functions.
14703
14704 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14705
14706         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14707         get the Platform SDK to get <dimm.h>.
14708
14709         * gdk/win32/gdkevents.c: More event handling fixes and
14710         simplification. Never generate motion events with is_hint true. We
14711         used to do that on bogus grounds earlier. Windows sends
14712         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14713         moved, ignore these.
14714
14715         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14716
14717         * gdk/win32/gdkglobals.c
14718         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14719         the TrackMouseEvent function, and use it.
14720
14721         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14722         char before calling WideCharToMultiByte in order to get a string
14723         for the window title.
14724
14725         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14726
14727         * gdk/win32/gdk.def: Remove obsolete functions.
14728
14729         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14730         /nodefaultlib and /defaultlib switches.
14731
14732         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14733
14734 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14735
14736         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14737         EuroSign).
14738
14739         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14740         same type as GdkWChar, especially on Win32.
14741
14742         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14743
14744         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14745         before passing to Windows GDI for drawing etc. Convert to the
14746         system default codepage before passing to Windows as window
14747         titles.
14748
14749         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14750         support changing input locale on the fly.
14751
14752         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14753         on-the-fly changes. Convert incoming characters from the current
14754         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14755         on the current input language. Use keysym<->Unicode mapping tables
14756         and functions borrowed from xterm sources.
14757
14758         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14759         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14760         Manager) if available. IMEs and the Active IMM are available under
14761         the disguise of Chinese, Korean and Japanese support for IE and
14762         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14763         support is present in all editions (as long as you install it).
14764
14765         Call DispatchMessage from gdk_events_queue() (and thus
14766         gdk_WindowProc()), instead of duplicating the code in
14767         gdk_WindowProc().
14768
14769         Reworked the grab handling and propagation code, factored out
14770         duplicated code snippets into separate functions. Other cleanups,
14771         too.
14772
14773         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14774         the <dimm.h> header describing the Active IMM.
14775
14776         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14777         just do the same as for "single" fonts.
14778
14779         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14780         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14781         the new keysyms from gdkkeysyms.h.
14782
14783         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14784         fontset, so that gtkentry uses wide characters.
14785
14786         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14787         GTk+'s system directory "gtk+", not "gtk".
14788
14789 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14790
14791         * docs/gtkfaq.sgml: FAQ update
14792
14793 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14794
14795         * gdk/win32/gdkprivate.h: Add more font private data.
14796
14797         * gdk/win32/gdkfont.c
14798         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14799         fonts and strings. Now works much better. You still have to
14800         have a correct font selected, though. No fontset emulation yet.
14801
14802 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14803
14804         * gtk/maketypes.awk: Use G_OS_WIN32.
14805
14806         * gtk/gtk.def: Add some missing entry points. Also some non-public
14807         ones, but PyGTK porter claims to need them.
14808
14809         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14810         built-in type generation.
14811
14812 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14813
14814         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14815         GDK_FONT_FONT fonts (which is all we have for now, we don't
14816         emulate fontsets). The X11 version uses plain XDrawString in that
14817         case, too. The string passed to gdk_draw_text_wc seems to be in
14818         fact (at least, when used by gtkentry and gtktext) either in a
14819         single-byte charset, or a DBCS. Not Unicode.
14820
14821         This fixes the problem in gtkfontsel, where even if you had
14822         selected a font with a non-Latin1 charset (windows-greek, for
14823         instance), the preview still used Latin-1 glyphs.
14824
14825         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14826         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14827         (gdk_font_load): Recognize the demibold etc weights, even if we
14828         don't have the corresponding constants in the headers.
14829         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14830         version. Should save font resources a bit, when we don't have
14831         multiple HFONTs for the same font.
14832
14833         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14834         version.
14835
14836 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14837
14838         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14839         X values
14840
14841 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14842
14843         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14844         layout support (as mentioned on
14845         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14846
14847 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14848
14849         * gtk/fnmatch.c
14850         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14851
14852 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14853
14854         * configure.in (ALL_LINGUAS): Added Galician (gl)
14855
14856 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14857
14858         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14859
14860         * gdk/win32/gdkcompat.c: New file, actually provide an
14861         implementation for the deprecated functions. (Just temporarily.)
14862
14863         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14864
14865         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14866
14867         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14868
14869 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14870
14871         * configure.in: Added "uk" to ALL_LINGUAS.
14872         
14873 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14874
14875         * configure.in: correct checking for BeOS check
14876
14877         * gdk/gdktypes.h
14878         * gtk/fnmatch.c
14879         * gtk/gtkfilesel.c
14880         * gtk/gtkitemfactory.c
14881         * gtk/gtkmain.[ch]
14882         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14883
14884 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14885
14886         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14887         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14888         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14889         by Bulgarian). 
14890
14891 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14892
14893         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14894         Fix a reference to window_private->destroyed.   
14895
14896         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14897         (ugly) setting of an internal GdkWindow member to use
14898         a _slightly_ cleaner macro.
14899
14900         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14901         GdkDrawablePrivate and GdkWindowPrivate.
14902         Add extra macros for accessing GDK_DRAWABLE_ components.
14903
14904         * *.[ch]: Massive adjustments for the above, use the
14905         new macros in a lot of places.
14906
14907 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14908
14909         * gdk/gdktypes.h: Make GdkDrawable the base type,
14910         not GdkWindow.
14911
14912 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14913
14914         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14915
14916 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14917
14918         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14919
14920 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14921
14922         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14923         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14924
14925         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14926
14927         * docs/gtk-config.1: Now autogenerated.
14928         * docs/Changes-1.4.txt: started
14929         
14930 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14931
14932         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14933         to #ifdef also here.
14934
14935         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14936         Owen did to the X11 backend.
14937
14938         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14939         ScrollWindowEx when blitting inside a window, it can't be correct
14940         in the general case.
14941
14942         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14943         WM_GETMINMAXINFO is easier.
14944
14945         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14946         depth equal to the bitspixel value, not the visual's depth.
14947
14948         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14949         to 24 even if the bitspixel value is 32.
14950
14951         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14952         need to check for depth==32 when bpp==32, depth will always be 24.
14953
14954 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14955
14956         * docs/Changes-1.4.txt: Started
14957         
14958         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14959
14960         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14961         
14962         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14963         into C file.
14964         
14965         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14966         header to gdkinputprivate.h.
14967
14968         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14969         unused since before 1.2.
14970
14971 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14972
14973         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14974         expand possible hex escapes in the font family (put there by
14975         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14976         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14977         On Win32, add hex escapes here, too.
14978
14979 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14980
14981         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14982         to #ifdef GDK_WINDOWING_X11.
14983
14984 [ Merges from gtk-1-2 ]
14985
14986 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14987
14988         * configure.in: fixed "GNU Make" check to pass with new make version
14989         3.77.95.
14990
14991 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14992
14993         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14994         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14995         AM_PATH_GTK() macros don't get confused by the -pre1.
14996
14997 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14998
14999         * configure.in (REBUILD): Change check for perl5
15000           to check explicitely for v >= 5.002. (5.001
15001           does not work with our scripts.)
15002
15003 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
15004
15005         * configure.in: evaluate $PERL for the perl version check. added
15006         --disable-rebuilds to give the user an option to completely disable
15007         any source autogeneration rules.
15008
15009 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
15010
15011         * configure.in: evaluate $ac_make when checking for GNU Make.
15012
15013 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15014
15015         * docs/Makefile.am: added generation.txt.
15016
15017         * Makefile.am: require automake 1.4, build README from README.in and
15018         INSTALL from INSTALL.in in dist-hook.
15019         
15020         * README.in:
15021         * INSTALL.in: new files to autogenerate README and INSTALL from.
15022
15023         * configure.in: figure whether we have GNU Make
15024
15025         * docs/generation.txt: minor additions/corrections.
15026
15027 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15028
15029         * docs/gtkfaq.sgml: FAQ Update
15030
15031 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15032         
15033         * configure.in: Fix autoconf warnings about cross compilation by
15034         trying to provide sane defaults for AC_TRY_RUN.
15035
15036 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
15037
15038         * ltconfig
15039         * ltmain.sh: upgrade to libtool 1.3.3
15040
15041 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
15042
15043         * INSTALL: Indicate that the --with-glib= configure
15044         time flag is unsupported.
15045
15046 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
15047
15048         * docs/generation.txt: Added a file that gives
15049         documenation about the autogeneration process for
15050         various autogenerated files.
15051         
15052 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15053
15054         * configure.in (LIBS): Look for libgmodule in the
15055         right location.
15056
15057 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
15058
15059         * docs/gtk_tut.sgml: Removed references to
15060         code examples in my directory on gtk.org as
15061         they should all be in the tutorial now.
15062
15063         * docs/gtk_tut.sgml: Added sources for dial-test
15064         and scribble-xinput programs that were previously
15065         missing.
15066
15067 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
15068
15069         * TODO: Added entry about menu keyboard navigation, removed
15070         some finished items.
15071
15072 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
15073
15074         * acinclude.m4: Standardize on func_dgettext
15075         not func_gettext, so that the checks for dgettext
15076         actually are paid attention to.
15077
15078 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
15079
15080         * configure.in (LIBS): Add $INTLLIBS into $LIBS
15081         directly, rather than repeating the checks for
15082         gettext.
15083
15084         * INSTALL: Added information about gettext and
15085         NLS support.
15086
15087         * acinclude.m4 (LIBM): Check for dgettext, not
15088         just gettext. This should hopefully fix things wrt
15089         systems with old versions of GNU gettext installed.
15090
15091 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15092
15093         * configure.in (LIBS): Look for libgmodule in the
15094         right location.
15095
15096 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15097
15098         * autogen.sh: add --enable-maintainer-mode
15099
15100         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
15101
15102 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
15103
15104         * docs/gtk-config.1.in:
15105           docs/Makefile.am:
15106           configure.in: gtk-config is now generated.
15107
15108         * docs/gtk-config.1: Removed, now generated.
15109
15110 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
15111
15112         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
15113         handle CreateNotify itself, still put out a debuging message for
15114         --gdk-debug=events. made the ReparentNotify debugging message more
15115         verbose.
15116         wrap xcoords translation for ConfigureEvents into an error trap,
15117         a destroy event may already be pending, and in that case, the
15118         actuall coordinate values are not at all critical.
15119
15120 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
15121
15122         * gdk/gdkcc.c: Stop leaking the color_hash all over
15123         the place. Simplify and improve the logic.
15124
15125 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15126
15127         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
15128         for prototypes and function implementations consistent (reported
15129         by Tomas Ogren).
15130
15131 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15132
15133         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15134         send_event set in debugging output.
15135         (gdk_compress_exposures): default initialize the event so we don't
15136         operate on bogus values (namely send_event).
15137
15138 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15139
15140         * gdk/gdkwindow.c: When we receive an unexpected
15141         destroy notify on one of our windows, don't just
15142         warn about it, also mark our windows as destroyed.
15143
15144 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15145
15146         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15147           name => font and name => fontset hashes. The 
15148           name => fontset hash is a _big_ win since we
15149           weren't previously caching fontsets at all and loading
15150           fontsets is expensive. The name => font hash
15151           is less of a win, but it does save us from doing
15152           repeated XQueryFont calls on the same font.
15153
15154         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15155           list so we can remove font/fontset from hash.
15156
15157 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15158
15159         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15160           and slightly confusing test. [ XInternAtom (,,TRUE)
15161           will never return None ].
15162
15163 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15164
15165         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15166           gdk/gdkwindow.c (gdk_window_set_hints):
15167
15168         Don't omit setting the properties if flags == 0 -
15169         there may be an existing set of properties there
15170         already. (Very old bug. Would it be better to
15171         delete the property instead?)
15172
15173         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15174           spelling error in comment.
15175
15176 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15177
15178         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15179           to avoid stomping over gdk_error_warnings.
15180
15181         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15182           as (bits_per_pixel + 7) / 8. This gives the same
15183           result as before for multiples of 8, but actually
15184           a "reasonable" value for 1bit or 4bit displays.
15185
15186 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15187
15188         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15189         GNU Make.
15190
15191 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15192
15193         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15194         discarding configure events.
15195
15196 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15197
15198         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15199         refcount is greater than zero.
15200
15201         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15202
15203         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15204
15205         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15206
15207         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15208
15209 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15210
15211         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15212         that format 32 => sizeof(item) == 4. It really is
15213         sizeof(long).
15214
15215 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15216
15217         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15218         core dump at all on X IO errors, only core dump
15219         if --enable-debug for X errors.
15220
15221 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15222
15223         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15224         unknown window:" message. disabled ConfigureNotify discarding code,
15225         because it led to events being processed out of order.
15226
15227 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15228
15229         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15230
15231         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15232         we export this function, supress error warnings and don't reset the
15233         error code in the first half of this function.
15234
15235         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15236         code (instead of just -1) so gdk_error_trap_pop() reveals something
15237         actually informative about the error that happened.
15238
15239         * gdk/*.c:
15240         don't rely on gdk_error_code being -1 if an error occoured, but just
15241         gdk_error_code != 0.
15242
15243 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15244
15245         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15246         pointer *before* invoking the filter function, so we at least don't
15247         crash if a filter is removed that is currently executed. window filters
15248         *really* need to be made truely reentrant at some point.
15249
15250 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15251
15252         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15253         PropertyNotify debug messages.
15254
15255 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15256         
15257         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15258         
15259         * gdk/gdkim.c: Fix cut-and-paste errors for 
15260         x/y and PreeditAttributes/StatusAttributes.
15261
15262 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15263
15264         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15265         G_MAXINT to 2^16 to alleviate overflow problems in
15266         various window managers.
15267
15268 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15269
15270         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15271         for fontsets.
15272
15273 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15274
15275         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15276         Initialize size_hints.x and size_hints.y because kwm
15277         brokenly pays attention to them.
15278         (Bug #1181 -  Lars Heete <hel@admin.de>)
15279
15280 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15281
15282         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15283         return value of gdk_list_visuals(). 
15284         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15285
15286 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15287
15288         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15289         XSetIMValues to (void *) when comparing to NULL, to workaround
15290         the problem of some compilers barfing since older X headers don't
15291         have the prototype for it.
15292
15293 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15294
15295         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15296         for pseudocolor where colormap->colors was double
15297         allocated.
15298
15299         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15300         color value in the hash table with the pixel filled
15301         in so when we do later hash table lookups, the color
15302         value is correct.
15303         
15304 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15305
15306         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15307         making the call
15308
15309 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15310
15311         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15312         pointed out by Morten Welinder <terra@diku.dk>.
15313
15314 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15315
15316         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15317           default filter from the list
15318
15319 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15320
15321         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15322           default filter from the list
15323
15324 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15325
15326         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15327
15328         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15329         g_strdup_printf instead of calcing the length separately
15330
15331 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15332
15333         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15334         that we don't do in many other places. (Fixing duplicate 
15335         #include of config.h)
15336
15337         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15338         Otherwise, #ifndef XINPUT_NONE check in the latter
15339         doesn't work. (Bug #546)
15340
15341 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15342
15343         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15344         "None" case insensitive.
15345
15346 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15347
15348         * gdk/gdkselection.c: 
15349         Add error traps so if the other end of the connection
15350         dies, we survive.
15351
15352 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15353
15354         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15355         dest_xid field into two fields - one for the window
15356         to send in messages, one to indicate the last looked
15357         up window for caching purposes. This is needed, so
15358         that Leave messages get the correct window.
15359
15360 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15361
15362         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15363         Fix warning created by people mucking around
15364         with the gsource API.
15365
15366         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15367         Change mapping between GIOCondition and GdkInputCondition
15368         to match the way the Linux kernel does it. This should
15369         fix problems where closed pipes were no longer signalling
15370         GDK_INPUT_READ on systems with a native poll().
15371
15372 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15373
15374         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15375         explicitly for the string "None" - it is in the XPM
15376         spec and some servers treat unknown colors in odd ways
15377         (like asking the user!)
15378
15379 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15380
15381         * gdk/gdkevents.c: made "->" into a "." of previous change so
15382         it compiles
15383
15384 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15385
15386         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15387         window field of the event structure before calling
15388         user filters.
15389
15390 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15391
15392         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15393         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15394
15395 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15396
15397         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15398         intermediate text property - prevents major memory
15399         leak when gdk_use_mb.
15400         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15401
15402 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15403
15404         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15405         gtk-a-higuti-990322-[0-3]
15406
15407         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15408         sizeof(wchar_t) != sizeof (GdkWChar)
15409
15410         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15411         that was causing -DX_LOCALE not to work.
15412
15413         * gtk/gtkrc.c (gtk_rc_init):
15414         X_LOCALE will never have LC_MESSAGES defined
15415
15416         * gdk/gdk.c (gdk_init_check):
15417         Remove --xim-preedit and --xim-status from argv properly.
15418
15419         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15420         that the client window is present on the X server
15421         before we pass it to the input method.
15422
15423 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15424
15425         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15426         if --display is specified on the command line, than
15427         the drag window will not be created on that display.
15428         
15429 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15430
15431         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15432         lookups with only_if_exists == TRUE were inserting
15433         bogus values into the atom cache.
15434
15435 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15436
15437         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15438         then reset it to NULL.
15439
15440         * gdk/gdkcolor.c:
15441         (gdk_colors_free): 
15442         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15443         key for g_hash_table_remove() in both functions, this prevents us
15444         from accessing possibly uninitialized portions of a GdkColor structure
15445         where we are only interested in its pixel value.
15446
15447 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15448
15449         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15450         font hash table, if we have a GdkFontPrivate entry for this font
15451         already, simply increment its reference count, provided by Olaf Dietsche
15452         <olaf.dietsche+list.gtk@netcologne.de>.
15453
15454 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15455
15456         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15457         just to be sure.
15458
15459         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15460         unused variables, leftovers from the X11 version.
15461
15462         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15463
15464         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15465         downcase fields on X11.
15466
15467 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15468         
15469         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15470         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15471
15472 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15473
15474         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15475
15476         * gtk/makefile.msc: Correct path to libintl.
15477
15478         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15479         use of gint vs. int, and gint vs. gboolean in headers and
15480         definitions. Use GtkType for the *_get_type functions. Note that
15481         these changes preserve binary compatibility.
15482
15483         * gdk/gdk.c
15484         * gdk/win32/gdk.c
15485         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15486
15487         * gtk/gtkmain.c
15488         * gtk/gtkclist.c
15489         * gtk/gtkmenufactory.c
15490         * gtk/gtknotebook.c
15491         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15492         vs. gboolean.
15493
15494         * gtk/gtkcolorsel.[ch]
15495         * gtk/gtkcombo.[ch]
15496         * gtk/gtkdrawingarea.[ch]
15497         * gtk/gtkgamma.[ch]
15498         * gtk/gtkhandlebox.[ch]
15499         * gtk/gtkhpaned.[ch]
15500         * gtk/gtkhruler.[ch]
15501         * gtk/gtkplug.[ch]
15502         * gtk/gtkpreview.[ch]
15503         * gtk/gtkruler.[ch]
15504         * gtk/gtksocket.[ch]
15505         * gtk/gtkstatusbar.[ch]
15506         * gtk/gtktoolbar.[ch]
15507         * gtk/gtkvbbox.[ch]
15508         * gtk/gtkvpaned.[ch]
15509         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15510         functions.
15511
15512         * gtk/gtkgamma.h: Fix bug, missing () in call of
15513         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15514
15515 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15516
15517         * gdk/gdkcolor.c (gdk_colormap_new)
15518         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15519         colormap->colors was allocated twice.
15520
15521         * gdk/win32/gdk.c: Remove some unused stuff.
15522
15523         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15524         colormap.
15525
15526         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15527         * gtk/gtklabel.h (gtk_label_get_type)
15528         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15529         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15530         in a couple of places, not guint.
15531
15532 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15533
15534         * configure.in,po/et.po: added Estonian language file
15535
15536 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15537
15538         * configure.in,po/da.po: added Danish file
15539
15540 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15541
15542         * docs/gtkfaq.sgml: Minor FAQ Update
15543
15544 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15545
15546         * docs/gtkfaq.sgml: FAQ update
15547
15548 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15549
15550         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15551         way to get window contents continually refreshed while resizing. I
15552         didn't like the effects myself, so it's not on by default.
15553
15554         * gdk/win32/gdkprivate.h: New flag variable
15555         gdk_event_func_from_window_proc, FALSE by default.
15556
15557         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15558         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15559         are passed --gdk-event-func-from-window-proc.
15560
15561         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15562         and we have am event_func, call it instead of enqueing the event.
15563
15564 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15565
15566         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15567         Kelley: Set expose_count in GdkEventExposes correctly.
15568
15569         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15570         MULTIPLE_WINDOW_CLASSES).
15571
15572         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15573         for bug in NT, apparently NT *does* draw the end pixel, too, in
15574         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15575
15576 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15577
15578         Improvements by Hans Breuer: 
15579
15580         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15581
15582         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15583         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15584         window contents while dragging" is turned on. Allocate at least
15585         one unique class for every GdkWindowType. If support for single
15586         window-specific icons is ever needed (eg. Dialog specific), every
15587         such window should get its own class.
15588
15589 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15590
15591         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15592         error that caused crashes.
15593
15594 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15595
15596         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15597         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15598         bugs when for instance part of the window was outside the
15599         display. Thanks to Philippe Colantoni for finding and fixing this.
15600
15601 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15602
15603         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15604         endpoint calculations which were totally wrong. (A little RTFMing
15605         helps a lot ;-)
15606
15607         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15608         from a separate directory, not from gettext, because of licensing
15609         issues (we want to use the LGPL version).
15610
15611         * README.win32: Mention the intl from glibc vs from gettext issue.
15612
15613 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15614
15615         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15616         in the key event handling: Now AltGr chars work again. Also,
15617         now Alt-digits are passed up as well as Control-digits.
15618         Pass keypad plus and minus as normal plus and minus.
15619
15620 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15621
15622         * docs/gtkfaq.sgml: FAQ Update
15623
15624 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15625
15626         * README.win32
15627         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15628         the Wintab SDK.
15629
15630         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15631         OK, but getting closer. Guard against bogus tilt data from Wacom
15632         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15633         enable easier building without Wintab.
15634
15635         * gdk/win32/gdkinput.h
15636         * gdk/win32/gdkevents.c 
15637         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15638         
15639         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15640         code. As we have just one visual on Win32, no sense to have it in a
15641         table, and no need for the hash table.
15642
15643         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15644         better on white background.
15645
15646 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15647
15648         * README.win32: Update gcc build instructions. Mention gettext is
15649         GPL.
15650
15651         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15652         supported cursor size with GetSystemMetrics.
15653
15654         * gdk/win32/gdkfont.c
15655         * gtk/gtkfontsel.c: Guard against some font weight and charset
15656         symbols being undefined (in mingw32 headers).
15657
15658         * gdk/win32/makefile.cygwin
15659         * gtk/makefile.cygwin
15660         * gtk/gtkthemes.c: No longer need to have differently named
15661         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15662
15663 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15664
15665         * docs/gtkfaq.sgml: Long awaited FAQ update.
15666
15667 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15668
15669         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15670         it. Obscure bit manipulation needed.
15671
15672         * gdk/win32/gdkevents.c: Logging.
15673         
15674         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15675         style (file name include compiler name) for theme engines.
15676
15677 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15678
15679         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15680
15681         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15682         events. The key.string wasn't zero-terminated, still we strdup'ed
15683         it in gdk_event_copy(). Synthesize crossing events for button
15684         events before possible propagation.
15685
15686         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15687
15688         * gdk/win32/makefile.cygwin
15689         * gtk/makefile.cygwin: Use new DLL naming style for the
15690         GCC-compiled ones.
15691
15692         * gdk/win32/makefile.msc
15693         * gtk/makefile.msc: Cosmetics mostly.
15694
15695         * gtk/gtk.def: Add missing entry points.
15696
15697         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15698
15699 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15700
15701         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15702         or height is zero. Don't print a warning if Pie or Arc fails, they
15703         always fail (?) for very narrow ellipses.
15704
15705         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15706         the part or the destination window corresponding to source area
15707         outside of the source drawable's boundary.
15708
15709         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15710         anything if less than two points.
15711
15712         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15713         return NULL. Gtk cut-and-paste inside a single program works
15714         better this way. (It always gets the clipboard contents from
15715         Windows, not from its own copy, which is cleared anyway. I can't
15716         say I fully understand what happens... Emulating the X selection
15717         and property stuff is a bit of a mess.)
15718
15719         * gdk/win32/gdkevents.c
15720         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15721
15722         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15723         that never got deleted). Revamp gdk_region_shrink.
15724
15725         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15726         after use.
15727
15728         * gtk/gtk.def: Add some missing entry points.
15729
15730         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15731         component.
15732
15733 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15734
15735         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15736         Control-digits specially.
15737
15738 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15739
15740         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15741
15742 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15743
15744         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15745         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15746         finding this.)
15747
15748 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15749
15750         * gtk+.spec.in: Corrected some typos in files section.
15751         
15752 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15753
15754         * README.win32: Mention using GNU gettext.
15755         * config.h.win32: Enable NLS stuff.
15756         * gtk/makefile.msc: Use GNU gettext.
15757         * gdk/win32/gdkdnd.c: Minor header reorg.
15758         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15759         cosmetics.
15760         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15761         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15762
15763 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15764
15765         * acinclude.m4
15766         * config.guess
15767         * config.status
15768         * ltconfig
15769         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15770
15771 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15772
15773         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15774         SafeAdjustWindowRectEx. Don't override all calls to
15775         AdjustWindowRectEx by it, but use it only in two places: When
15776         creating a new top-level window and when moving a top-level
15777         window.
15778
15779         Use screen coordinate rectangle, not client rectangle, in
15780         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15781         when we try to place a window so that the decoration (mainly,
15782         title bar) isn't visible.
15783
15784         These changes fix the bug that showed up for instance as the
15785         GIMP's saved top-level windows moving right and down (by an amount
15786         equal to the window decoration) for each session. This bug showed
15787         up also in testgtk's "Saved Position".
15788
15789         gdk_window_resize also redone a bit.
15790
15791 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15792
15793         * gtk/testgtkrc: Add (commented out) Windows-style theme
15794         include line.
15795
15796         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15797
15798 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15799
15800         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15801         gdkx.h to a gdk subdirectory, so that applications can include
15802         these with <gdk/*.h> without trouble.
15803
15804         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15805         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15806         have their bitmap destroyed.
15807
15808         * gdk/win32/gdk.def: Add gdk_root_parent.
15809
15810 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15811
15812         * configure.in
15813           gtk-config.in
15814           ltconfig
15815           ltmain.sh     
15816           gtk/Makefile.am: changes to compile nicely (with xlib) 
15817           on BeOS
15818
15819 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15820
15821         * acinclude.m4
15822         * config.guess
15823         * config.sub
15824         * ltconfig
15825         * ltmain.sh: upgrade to libtool 1.3
15826
15827 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15828
15829         * gtk/gtkclist.c:
15830         * gtk/gtkctree.c: merges from gtk-1-2
15831
15832 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15833
15834         Support added for building using a GNU toolchain on Win32,
15835         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15836
15837         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15838         * config.h.win32: Changes for gcc.
15839         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15840         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15841         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15842         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15843         Protect shl stuff unavaiilable with mingw32 headers.
15844         * gdk/win32/gdkevents.c: Fix typo.
15845         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15846         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15847         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15848         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15849         the mingw32 headers.
15850         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15851         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15852         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15853         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15854         Test for NATIVE_WIN32, not _MSC_VER.
15855         * gtk/gtkmain.c: No use warning about developer version on Win32,
15856         there aren't any non-developer versions anyhow.
15857         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15858         * gtk/makefile.msc: Use pthread from another directory. Minor other
15859         changes. 
15860
15861 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15862
15863         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15864           default filter from the list
15865
15866 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15867
15868         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15869          when gtk_widget_grab_default() is called for a widget that
15870          is not within a GtkWindow.
15871
15872 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15873
15874         * docs/gtk_tut.sgml, examples/clist.c: use a
15875           scrolled window in the clist example. Minor
15876           tutorial fixes.
15877
15878 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15879
15880         * docs/gtk_tut.sgml: Style check from David King
15881           <dking@youvegotmail.net>
15882
15883 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15884
15885         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15886         compile with unknown value of GDK_WINDOWING
15887
15888 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15889
15890         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15891         after the rule is fired.
15892         (install-exec-local): Install gdkconfig.h only if the contents are
15893         different from the currently installed gdkconfig.h.
15894
15895 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15896
15897         * gdk/Makefile.am (configexecincludedir): Rename from 
15898         configincludedir so that gdkconfig.h will be installed 
15899         as part of `make install-exec'. 
15900
15901 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15902
15903         * acinclude.m4
15904         * config.guess
15905         * config.sub
15906         * ltconfig
15907         * ltmain.sh: upgrade to libtool 1.2f
15908
15909         * autogen.sh: libtool is not required to autogen gtk+
15910
15911         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15912         needed)
15913
15914 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15915
15916         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15917         declaring gdk variables exported/imported from the DLL. New image
15918         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15919         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15920         GDK_DRAG_PROTO_OLE2.
15921
15922         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15923         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15924         declared only for the Win32 version, but could be in the X11
15925         version as well. (Needed for a Xlib-less gdk_imlib.)
15926         gdk_color_hash should have only one parameter. Declare
15927         gdk_threads_mutex with GDKVAR.
15928         
15929         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15930         just one parameter.
15931
15932         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15933         per pixel, not bits.
15934
15935         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15936         Fetch bpp (which means bits-per-pixel here) from another place on
15937         Win32. Accept also depth==32 (which we might get on Win32) with
15938         bpp==32.
15939
15940         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15941         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15942         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15943         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15944         in the backend-dependent directory, not in the common gdk
15945         directory.
15946
15947         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15948         headers.
15949
15950 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15951
15952         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15953         want to use the Gtk+ devel version (which is true, and yes - even i am
15954         currently working with the 1.2.x branch). so everyone reading this, you
15955         probably want to issue
15956         cvs checkout -r glib-1-2 glib
15957         and
15958         cvs checkout -r gtk-1-2 gtk+
15959         as your next two comands.
15960
15961 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15962
15963         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15964         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15965
15966         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15967         file. strongly deprecated the GTK_HAVE_* macros, we provide
15968         GTK_CHECK_VERSION() for people that need to check for certain
15969         Gtk+ versions.
15970
15971         * gtk/gtkcompat.h: removed this from CVS.
15972         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15973         idea right from the start, it just didn't seem like that back then.
15974
15975 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15976
15977         * merges from gtk-1-2:
15978
15979 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15980
15981         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15982         item factory class has been created.
15983         (gtk_item_factory_parse_rc): likewise.
15984
15985         * gtk/gtkmenu.c:
15986         keep proper references for old_active_menu_item.
15987         (gtk_menu_reparent): unset the usize of the new parent,
15988         so the menu can sanely be size requested and we don't get nasty screen
15989         artefacts upon next reparentation.
15990         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15991         enter notify. only synthesize enter notifies if the pointer really is
15992         inside the event window.
15993         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15994         (gtk_menu_popup): move the background setting stuff into
15995         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15996
15997         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15998         gtk_menu_shell_select_item() to select the new item.
15999         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
16000         do the right thing for deselection as well.
16001
16002 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
16003
16004         * gtk/gtkwidget.[hc]:
16005         (gtk_widget_accelerators_locked): return whether a widget's accelerators
16006         are locked.
16007
16008         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
16009         existing accelerators if the widget's accelerators are locked.
16010
16011 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
16012
16013         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
16014
16015         * gtk/gtkmenu.c: truely forward key press and key release events to
16016         the menu widget from the toplevel or tearoff window. we can't simply
16017         connect to that, we need to stop further processing of the events as
16018         well.
16019
16020 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
16021
16022         * gtk/gtkmenu.c:
16023         (gtk_menu_key_press): pass event->keyval, event->state to
16024         gtk_accelerator_valid, instead of event->keyval twice.
16025         refuse to install single letter accelerators for menus that use
16026         single letter shortcuts.
16027
16028         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
16029         gtk_menu_ensure_uline_accel_group().
16030
16031         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
16032         which will always return an uline accel group, made
16033         gtk_menu_get_uline_accel_group() return NULL if the group isn't
16034         yet created.
16035
16036 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
16037
16038         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
16039
16040         * gtk/gtkclist.c (gtk_clist_column_title_passive):
16041         Leave button sensitive, trap  button_press, button_release,
16042         motion_notify, enter_notify and leave_notify events instead.
16043         (gtk_clist_column_title_active): disconnect event handler.
16044         (gtk_clist_drag_data_get): fixed memory leak. Reported by
16045         Guillaume Laurent <glaurent@worldnet.fr>
16046
16047 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
16048
16049         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
16050         width/height mixups.
16051
16052         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
16053         if needed.
16054
16055 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
16056
16057         * gtk/testgtk.c (create_item_factory): unref the item factory after
16058         window's destruction.
16059
16060         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
16061         count on the menu shell around the menu item's activation, since the
16062         signal emission may cause menu shell destruction.
16063
16064         * gtk/gtkitemfactory.c:
16065         the previous code leaked one accel group per menu. we use
16066         gtk_menu_get_uline_accel_group() now to fix that, and with that
16067         also create the underline accelerator group of the menus only if
16068         required (i.e. an underline accelerator has been specified).
16069         (gtk_item_factory_construct):
16070         (gtk_item_factory_create_item): removed code that would create an
16071         extra accel group for the menu (and leak references).
16072         (gtk_item_factory_create_item): adapted the underline accelerator
16073         installation code to properly feature gtk_menu_get_uline_accel_group().
16074
16075         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
16076         menu->accel_group, this may return NULL if the accelerator group
16077         hasn't been set yet.
16078         added gtk_menu_get_uline_accel_group() to retrive the underline
16079         accelerator group of the menu, this will be created on demand
16080         and proper care is taken about its reference count.
16081
16082         * gtk/gtkitemfactory.h:
16083         * gtk/gtkitemfactory.c:
16084         dumped the approach of keeping a widgets by action list on the
16085         factory since the factory<->widget destroy negotiation didn't work
16086         and would be hard to get going at all. instead we keep a list of
16087         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
16088         persistant throughout a program's life time).
16089         also, i removed the static const gchar *key_* variables, and made
16090         them inline strings (they weren't actually used anyways).
16091         (gtk_item_factory_add_item): update ifactory->items.
16092         (gtk_item_factory_destroy): destroy ifactory->items (and remove
16093         the item factory pointer from the remaining ifactory widgets).
16094         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
16095         list to find the widget.
16096         (gtk_item_factory_get_item): new function that works around
16097         gtk_item_factory_get_widget() limitations, this function will only
16098         return menu items, even for <Branch> entries.
16099
16100 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16101
16102         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16103         font hash table, if we have a GdkFontPrivate entry for this font
16104         already, simply increment its reference count, provided by Olaf Dietsche
16105         <olaf.dietsche+list.gtk@netcologne.de>.
16106
16107         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16108         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16109
16110 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
16111
16112         * gtk/gtkcontainer.c:
16113         (gtk_container_add_with_args):
16114         (gtk_container_addv):
16115         (gtk_container_add): before adding a child to a conatiner, make sure
16116         it is (default) constructed, this is neccessary because under certain
16117         circumstances the child will get relized and mapped immediatedly, in
16118         which case it has to be constructed already.
16119
16120 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
16121
16122         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
16123         values > 1 as TRUE also.
16124
16125 1999-03-16  Tor Lillqvist  <tml@iki.fi>
16126
16127         * README.win32: New file.
16128                 
16129         * configure.in: Check for lstat.
16130
16131         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
16132         completeness.
16133
16134         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16135
16136         * gtk/gtk.def: Removed CRs.
16137
16138         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16139         ..\gdk\win32).
16140
16141         * gdk/win32/makefile.msc: Correct upwards relative paths.
16142         
16143 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16144
16145         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16146           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16147           it was connecting a void function to expose_event and the int
16148           returning function to the draw signal
16149
16150 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16151
16152         * configure.in:
16153         Use correct path to libgmodule.la when ref'ing uninstalled copy
16154         of glib.  (Already in stable branch, Bug #417)
16155
16156 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16157
16158         Win32 merge and general portability stuff:
16159                 
16160         * acconfig.h,configure.in: Check for <sys/time.h>.
16161
16162         * gdk/win32: New directory (actually, been there for a while).
16163         
16164         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16165         NATIVE_WIN32, and use these. Always case fold on Win32. No
16166         backslashed escapes on native Win32.
16167
16168         * gtk/{gtk.def,makefile.msc}: New files.
16169
16170         * gtk/Makefile.am: Add above new files.
16171         
16172         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16173         instead of <strings.h>.
16174
16175         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16176         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16177         <unistd.h> appropriately.
16178
16179         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16180         Use ABS() (from <glib.h>) instead of abs().
16181         
16182         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16183         of gtk (and thus glib) headers, so that WIN32 will be
16184         defined. With MS C, include <direct.h> for mkdir prototype.
16185
16186         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16187         some casts, needed by MS C.
16188
16189         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16190         implemented).
16191
16192         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16193         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16194         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16195
16196         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16197                 
16198         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16199         the event is not a hint, or its window is not the slider. Needed
16200         on Win32, at least.
16201
16202         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16203         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16204         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16205         a subdirectory of the Windows directory as gtk system
16206         configuration directory.
16207
16208         * gtk/gtkselection.c: No chunks on Win32.
16209
16210         * gtk/gtksocket.c: Not implemented on Win32.
16211
16212         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16213
16214         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16215
16216         * gtk/maketypes.awk: Declare variables with a macro that expands to
16217         necessary export/import magic in the case of Win32.
16218                 
16219         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16220
16221 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16222
16223         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16224         since those were meant only for gdki18n.h.  
16225         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16226         for widechar tests.
16227         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16228
16229 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16230
16231         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16232         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16233
16234         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16235         installed) to CFLAGS.
16236
16237         * gdk/Makefile.am: Add rules for gdkconfig.h.
16238
16239         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16240         APIs.
16241
16242         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16243         gdkx.h anyway when compiling for X11.
16244         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16245         general): Merge in Win32 version.
16246         
16247         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16248         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16249         expansion (if we don't have HAVE_PWD_H), allow for drive
16250         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16251         included code from Craig Setera's port to Win32 (the one that uses
16252         X11, and the cygwin dll), even if it probably will be abandoned.
16253
16254         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16255         the user entered one herself.  This way one can complete *.h and
16256         don't get matches on any .help files, for instance.
16257         
16258 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16259
16260         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16261         font hash table, if we have a GdkFontPrivate entry for this font
16262         already, simply increment its reference count, provided by Olaf Dietsche
16263         <olaf.dietsche+list.gtk@netcologne.de>.
16264
16265         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16266         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16267
16268 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16269
16270         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16271         the number of calls to gdk_draw_point() (and thus to X) by
16272         clipping the points by hand.
16273
16274         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16275         the clip parameter.
16276         (gtk_handle_box_paint): Only paint the handle if the expose area
16277         intersects it.
16278
16279 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16280
16281         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16282
16283 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16284
16285         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16286         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16287
16288 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16289
16290         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16291          textmode (O_TEXT) for OS/2 version.
16292
16293 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16294
16295         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16296         GtkSpinButton, "input" and "output", to make the output more flexible.
16297         The user has to provide a mapping between adjustment->value and the
16298         output string (and vice versa, if the spin button is editable). 
16299         See testgtk for examples.
16300
16301 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16302
16303         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16304         new one.
16305         
16306         * configure.in: set gtk+ version to 1.3.0.