]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
New function
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-05-22  Havoc Pennington  <hp@pobox.com>
2
3         * gtk/gtkbin.c (gtk_bin_get_child): New function
4
5 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
6
7         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
8         to ignore when doing compose processing.
9
10 2001-05-22  Joe Shaw  <joe@ximian.com>
11
12         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
13         Simplify as suggested by Havoc. Just get the last iter and work
14         backward to the tag instead of getting a line and working back from
15         there. Fixes passing in an invalid offset to
16         iter_init_from_byte_offset().
17
18 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
19
20         * gtk/gtktreeview*.h: 
21         * gtk/gtkcell*.h:
22         * gtk/gtk*store.h:
23         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
24         macros to all objects.
25
26 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
27
28         * gtk/gtkcellrenderertext.c
29         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
30         with very large (TM) amounts of text.  May be moved to
31         GtkCellRenderer in the future, though I'm not sure it wants to be
32         this accessible.
33
34         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
35         More sanity brought to this class.  I like it.
36
37         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
38         case.  Kids, don't try this at home.
39
40         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
41         convenience function.
42
43         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
44
45 2001-05-21  Alexander Larsson  <alexl@redhat.com>
46
47         * gtk/gtkfontsel.c:
48         Added properties. Based on patch by Lee Mallabone.
49
50         * gtk/gtkruler.c:
51         * gtk/gtkhruler.c:
52         * gtk/gtkvruler.c:
53         * gtk/gtktext.c:
54         * gtk/gtktextview.c:
55         Converted GtkArg to GParam. Based on patches by John Margaglione.
56
57         * tests/Makefile.am:
58         * tests/testtext.c:
59         Add a property editor to testtext.
60         
61 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
62
63         * gtk/gtk{h,v,}paned.c: Only show the separator if 
64
65         * configure.in: Fixed reversed conditional causing all image
66         libraries to be linked in.
67
68 2001-05-21  Joe Shaw  <joe@ximian.com>
69
70         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
71         that top_y needs to be >= 0.
72
73 2001-05-11  Havoc Pennington  <hp@pobox.com>
74         
75         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
76         losing connection to the X server.
77
78 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
79
80         * configure.in: Start checks for X from pangox/pangoxft
81         CFLAGS to avoid duplicate libraries.
82
83         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
84
85         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
86         to include gobject.
87         
88 2001-05-18  Alexander Larsson  <alexl@redhat.com>
89
90         * gtk/gtkspinbutton.c:
91         Convert GtkArgs to GParams. Based on patch by John Margaglione.
92         Also do size request reasonable for MAXDOUBLE. Previously it printed
93         the limits to a buffer and overran it. Instead do it using log10() and
94         limit the width to 10 digits.
95         
96         * gtk/gtkwidget.c (gtk_widget_get_property):
97         Correctly handle setting the parent property to NULL.
98
99 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
100
101         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
102         style attributes even if the widget isn't realized.
103
104         * demos/gtk-demo/main.c: Use a slightly smaller font.
105
106 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
107
108         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
109         This is something that only a widget writer would ever want
110         to change.
111
112         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
113         gtk_signal_emit_by_name().
114
115         * gtk/gtkviewport.c: Fix some warnings.
116
117         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
118         allowing the requisitions of multiple widgets to be grouped
119         together.
120
121         * tests/testgtk.c: Add GtkSizeGroup test
122
123         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
124
125         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
126         warnings.
127
128         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
129
130 2001-04-28  Martin Baulig  <baulig@suse.de>
131
132         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
133         to gtk_image_menu_item_set_icon() and made it work if there's already
134         an image.
135         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
136         (gtk_image_menu_item_new_with_label): New function.
137
138 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
139
140         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
141         highlighting code!!!!  The result is okay so long as you don't try
142         to stress it.  It also highlights a bug in the TextView so it's in
143         an unproportional font right now until it's fixed.
144
145         *demos/gtk-demo/*.c: Clean up code a bit to make it
146         ugly-parser(TM) friendly. (-:
147
148 2001-05-17  Joe Shaw  <joe@ximian.com>
149
150         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
151         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
152         if it is only partially onscreen.
153
154 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
155
156         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
157         not by characters.
158
159         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
160         are not zero or one; that is, when graphemes of multiple characters
161         are involved.
162
163         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
164         FIXME.
165
166 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
167         
168         * gtk/gtkbbox.c:
169         Add properties, based on patch by Lee Mallabone.
170
171         * gtk/gtknotebook.c:
172         * gtk/gtktoolbar.c:
173         Convert from GtkArg to GParam, based on patch by John Margaglione.
174         
175         * gtk/gtkhscale.c:
176         * gtk/gtkvscale.c:
177         * gtk/gtkhscrollbar.c:
178         * gtk/gtkvscrollbar.c:
179         * gtk/gtkrange.c:
180         Move adjustment property to GtkRange.
181
182         * gtk/gtklabel.c:
183         Setup mnemonics on property changes
184
185         * gtk/gtkwidget.c (gtk_widget_get_property):
186         GdkExtensionMode is an enum, not a flag. Set it with
187         g_value_set_enum ().
188
189         * tests/prop-editor.c:
190         Better propery editor.
191
192         * tests/testgtk.c:
193         Add new property test. Pass zero to the property editor to
194         get properties from all derived types.
195         
196 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
197
198         * autogen.sh (have_automake): Require libtool-1.4,
199         automake-1.4p1.
200
201         * acinclude.m4: Remove libtool macros.
202
203         * gdk-pixbuf/Makefile.am: Add dependencies to loade
204         modules.
205
206         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
207         for libgdk.
208
209         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
210         libgdk.la for libgtk.
211
212         * modules/input/Makefile.am: Make modules have full
213         dependencies.
214
215 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
216
217         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
218         #54699 where paths weren't being checked for correctness.
219
220 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
221
222         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
223         in any order you wan, whether or not the column is added to the
224         tree, or the tree is realized.  Yay!
225
226         * gtk/gtktreeviewcolumn.c
227         (gtk_tree_view_column_setup_sort_column_id_callback): handle
228         sorting columns a lot saner
229
230         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
231         new function to actually set wether or not a column is
232         reorderable.
233
234         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
235         if we have 'em.
236
237         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
238         Fix nasty bug where we were showing the button just before
239         realizing it.  As a result, the parent window was
240         tree_view->window instead of tree_view->priv->header_window.
241
242         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
243         to let you easily reorder a list or tree.
244
245 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
246
247         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
248         from args to properties.
249
250 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
251
252         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
253         from args to properties. (#51957)
254
255         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
256         calls to after ->set_property call.
257
258 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
259
260         * tests/prop-editor.c: Block against redundant changes.
261
262         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
263         properties.
264
265 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
266
267         * gdk/gdkpixmap.h: Remove creative formatting.
268
269 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
270
271         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
272         property API. (#51669)
273
274         * gtk/gtkscale.c: Patch from John Margaglione converting to
275         property API. (#51891)
276
277         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
278         to property API. (#50985)
279
280 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
281
282         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
283         buffering state across expose event, so we still call end_paint().
284
285 2001-05-11  Alexander Larsson  <alexl@redhat.com>
286
287         * gtk/gtkhsv.c (paint_triangle):
288         Expose the ring in the triangle at the correct place when
289         exposing just a part of the triangle.
290
291         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
292         Return FALSE, or window focusing will not work.
293
294 2001-05-11  Havoc Pennington  <hp@pobox.com>
295
296         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
297         #54144
298
299         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
300         bug #54330
301
302 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
303
304         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
305         propagate exposes to NULL child.
306
307         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
308         against not having one of the scrollbars.
309
310         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
311         we don't keep a mnemonic window if we have no mnemonic installed.
312
313 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
314
315         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
316         it has the _important_ side effect of initializing a class.
317
318 2001-05-10  Alexander Larsson  <alexl@redhat.com>
319
320         * gdk/linux-fb/gdkprivate-fb.h:
321         Make sure you can compile out the implementation/wrapper assert
322         macros.
323
324         * gdk/linux-fb/gdkdrawable-fb2.c:
325         Check implementation/wrappers, initialize type for pixmap dummys.
326
327         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
328         Hide the cursor if reading from the screen.
329
330         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
331         Fix sign bug in tiling code.
332
333         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
334         Handle background pixmaps.
335
336 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
337
338         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
339         function to let user control where columns are dragged.
340
341         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
342         Escape is pressed.
343
344 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
345
346         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
347         "columns_changed" signal.
348         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
349         motion code to draw arrows to the side if indicator is outside the
350         widget.
351         (gtk_tree_view_map_expanded_rows): Implement.
352
353 2001-05-07  Alexander Larsson  <alexl@redhat.com>
354
355         * demos/testpixbuf-save.c: 
356         * demos/testpixbuf-drawable.c:
357         Include gdkfb.h on linux-fb.
358
359 2001-05-07  Alexander Larsson  <alexl@redhat.com>
360
361         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
362         New function for getting toplevel window at position.
363         (gdk_drag_find_window): Use get_toplevel_window () instead
364         of gdk_window_get_pointer(). (gdk_drag_status): Use
365         correct context for getting window.
366
367         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
368         g_strdup the atom name.
369
370         * gdk/linux-fb/gdkwindow-fb.c:
371         Costmetic fix.
372
373         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
374         Add code for changing cursor on linux-fb backend (same as
375         win32).
376
377 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
378
379         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
380         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
381         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
382         report was not for the development branch of GTK+, but it applies
383         anyways).
384
385 2001-05-04  Havoc Pennington  <hp@redhat.com>
386
387         * configure.in: fix some shell typos
388
389         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
390
391         * gtk/gtkimage.c: handle animations
392
393         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
394         border_width * 2, not just border_width
395
396         * gtk/gtkscale.c: add "format_value" signal to allow people
397         to override the way values are drawn.
398         (gtk_scale_get_value_size): fix width/height mistake,
399         and compute size from actual displayed text, not 
400         from made-up text.
401
402         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
403         signal registration
404
405         * tests/testtext.c: Add "Remove all tags" menu item for testing
406
407         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
408
409         * demos/gtk-demo/main.c (main): add hack so we can find modules
410         without installing gtk
411
412         * demos/gtk-demo/textview.c (insert_text): demo font scaling
413
414         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
415         factor)
416         (gtk_cell_renderer_text_set_property): remove some bogus
417         g_object_notify
418
419         * gtk/gtktexttag.c: add "scale" property which is a font scaling
420         factor
421
422         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
423         to layout
424
425         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
426         gtk_text_iter_is_first
427
428 2001-01-06  Hans Breuer  <hans@breuer.org>
429
430         * gdk/gdk.def : updated exports
431
432         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
433         gdk won't compile anymore
434  
435         * gdk/win32/gdkevents-win32.c : initialize ret_val when
436         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
437         Improved gdk_flush () to not only do pending drawing operations
438         but also process all currently pending events. This should make
439         the behaviour more similar to the X11 version.  
440
441         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
442         option needs to be set even if there is no GDK_GC_BACKGROUND.
443         (gdk_win32_hdc_get) : use predraw_set_background () independent
444         of value_mask. This allows to draw dashed lines leaving the original
445         background intact.
446
447         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
448         after processing, because we can't reuse it as the X11 version does.
449
450         * gtk/gtk.def : updated exports
451
452         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
453         would like to get rid of this file again, and use straight
454         makefile.msc again, as the other Gtk+ subdirs do)
455
456         * test/makefile.msc (new file) : build the test apps here
457
458 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
459
460         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
461         strike-through setting
462         (gdk_draw_layout_line_with_colors): Render strike-through
463
464 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
465
466         * Release 1.3.5
467
468         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
469
470         * NEWS: Updated
471
472         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
473         Makefile breakage.
474
475 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
476
477         * demos/gtk-demo/images.c (progressive_timeout): Fix
478         typo in filename.
479
480         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
481         out FIXME warning; just too annoying.
482
483 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
484
485         * gdk/linux-fb/gdkcolor-fb.c:
486         Better error messages.
487
488         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
489         Initialize abs_x and abs_y.
490         
491         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
492         Correct handling of stipple offset.
493
494         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
495         Treat directcolor framebuffers as truecolor.
496         
497 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
498
499         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
500         dependency on Atk for accessibility support.
501
502         * configure.in **/Makefile.am: Major reworking of substituted
503         variables for CFLAGS/LIBS to make a lot more sane and 
504         keep the the compile/link lines a bit shorter.
505
506         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
507
508 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
509
510         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
511         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
512         use _gtk_boolean_handled_accumulator.
513
514 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
515
516         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
517         to fix things so clicking inside selection leaves cursor
518         at point where clicked. (#50324)
519
520         * gtk/gtksettings.c (gtk_settings_class_init): Restore
521         sane value for default double click time.
522
523         * tests/testtext.c (test_init): Really path to input modules.
524
525 2001-05-03  Sven Neumann  <sven@convergence.de>
526
527         * demos/testpixbuf-save.c: include target-specific headers as
528         done in testpixbuf-drawable.c
529
530 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
531
532         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
533         new_text_length appropriately when we run into the 
534         size limit for the entry. (#53445, reported by Jeff Franks)
535
536         * tests/testgtk.c (create_entry): Remove most of the
537         property toggle buttons. Replace with a "Props" button
538         that brings up a property editor.
539
540         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
541         Split the property editor code out for reuse, improve.
542
543 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
544
545         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
546         trap errors around calls to XSetInputFocus since we have
547         no way of knowing reliably whether we are viewable or
548         not. (#53947)
549
550 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
551
552         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
553         fix bug in dropping columns.  Moving columns now basically works
554         modula some fine tuning.
555
556 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
557
558         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
559         autoscroll support.  It mostly works, but could use some fine
560         tuning.
561         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
562         Actually move the column.
563
564 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
565
566         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
567           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
568           New default theme! A slighly improved version of the 2.0 Raleigh
569           theme, with Windows-esque focus/drawing default. 
570           (GtkWidget::interior_focus defaults to TRUE.)
571
572         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
573
574 2001-04-30  Havoc Pennington  <hp@pobox.com>
575
576         * tests/testtext.c (line_numbers_expose): fix to work with
577         gtk_paint_layout change
578
579 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
580
581         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
582           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
583           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
584           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
585
586         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
587           with GtkWidget::interior_focus = TRUE better.
588
589         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
590         ::default_outside_border for more flexibility.
591
592         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
593         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
594         change that had to be made with g_object_get.
595
596 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
597
598         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
599         (gtk_tree_view_move_column_after): Clean up interface. 
600
601 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
602
603         * gtk/gtkpacker.h:
604         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
605          to gtkenum.h.
606
607         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
608         handled in switch).
609
610         * gtk/Makefile.am:
611         (gtk.defs): generate enum portions with  glib-mkenums.
612         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
613         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
614         
615         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
616         addition.
617
618         * docs/Changes-2.0.txt: keep a note on signal handlers now
619         not getting emitted during the emission they were connected within.
620
621 2001-04-28  Havoc Pennington  <hp@pobox.com>
622
623         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
624
625 2001-04-24  Havoc Pennington  <hp@redhat.com>
626
627         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
628         (gtk_text_layout_move_iter_to_next_line): fix these two for
629         invisible text, lots of other stuff still hosed.
630
631         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
632         new function, replaces the get/set palette stuff. This function 
633         is intended for use by libgnomeui which should set the hook to a
634         thing which sets the palette in GConf, and we need the
635         GConf-to-xsettings proxy which will result in the change being
636         propagated back to the GTK app.
637
638         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
639         about unusable signals that it may be because the signal has 
640         parameters.
641
642         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
643         style, otherwise gtkrc.c won't know to create a new GtkStyle for
644         it.
645         (gtk_widget_modify_color_component): call
646         gtk_widget_modify_style() so the rc style will get copied.
647         (gtk_widget_modify_font): ditto
648
649         * gtk/gtkrc.c: make a couple variables static
650
651         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
652         help button by default, since it does nothing
653
654         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
655         around with UI
656
657         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
658         so we can have tooltips
659
660         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
661         can have tooltips
662
663         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
664         GDK_ENABLE_BROKEN, because its memory behavior is completely
665         hosed.
666
667         * gtk/gtknotebook.c: remove key press handler, replace with
668         binding set, add numeric keypad support
669
670         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
671
672         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
673
674         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
675         addition to plain Delete
676
677         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
678         GDK_KP_Enter in addition to GDK_Return
679
680         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
681         activate on entry instead of key press
682         (gtk_font_selection_on_clist_key_press): get
683         rid of this signal handler, not needed with new font sel.
684
685         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
686         no-longer-needed emit_stop_by_name(), just return TRUE
687
688         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
689         cruft, this widget is no longer focusable.
690
691         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
692         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
693         move_slider action signal, add binding set for vscale/hscale, in
694         the process support numeric keypad
695
696         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
697         make GDK_Return and GDK_KP_Enter activate the entry via 
698         binding set, instead of hardcoded.
699
700 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
701
702         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
703         code.  Some documentation added.
704
705 2001-04-27  Havoc Pennington  <hp@redhat.com>
706
707         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
708
709         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
710
711         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
712         line/para separators
713         (gtk_entry_create_layout): set single paragraph mode on the layout
714
715         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
716         spacing between the image and label; instead, inside a button box 
717         the button will get extra space that will go there, but if people 
718         configure button box for 0 chubbiness, then there's no spacing.
719
720         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
721         and min/max size style properties, so people can tune their
722         chubbiness.
723
724         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
725         functions
726
727         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
728         space_style, and button_relief into style properties, remove
729         functions for setting them
730         
731         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
732         it back down
733
734         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
735         types from gtk_widget_style_get
736
737         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
738         with a style property.
739
740         * gdk/x11/gdkevents-x11.c: namespace the settings
741
742         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
743
744         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
745         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
746         be used. Also, translate doc strings for settings. Also, namespace
747         the double-click-time property. Also, remove bell properties crap.
748
749 2001-04-27  Sven Neumann  <sven@gimp.org>
750
751         * Makefile.am: before creating links, check if pkg-config files
752         exist for the default target. Otherwise link to the pkg-config files
753         that got installed with this build.
754
755 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
756
757         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
758         dragging code.  Revealed some (potential) GdkWindow bugs.
759
760         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
761         _gdk_window_init_position to the end of reparent to fix the case
762         of reparenting when new_x != old_x and new_y != old_y.
763
764 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
765
766         * gtk/gtkentry.c (strstr_len): Fix optimization that
767         was correct for the use here, but completely incorrect
768         in general.
769
770 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
771
772         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
773         until patch adding gtk_window_set_size() is recommitted. 
774
775         * **Makefile.am configure.in gdk/x11/gdkim-11.c
776           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
777           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
778           (#10784)
779
780 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
781
782         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
783         window == NULL in a number of cases.
784
785         * tests/testdnd.c: Set module path for gdk-pixbuf.
786
787 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * gtk/Makefile.am xembed.h: File containing #defines
790         for XEMBED protocol.
791
792         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
793
794         - Change protocol from old plug/socket specific protocol
795           to XEMBED draft
796         - Various fixes to work with GTK+-2.0
797
798         Still quite a bit of work to do here to handle initiation
799         from the socket side (as specified by XEMBED), to handle
800         the more advanced features of XEMBED, and to figure out
801         a good way to handle same-app embedding with less overhead
802         than using full XEMBED.
803
804 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
805
806         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
807         track of whether the toplevel has the focus; only send
808         focus-in events to the focus widget when the window
809         actually has the focus.
810
811 2001-04-25  Havoc Pennington  <hp@pobox.com>
812
813         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
814         were still in the header
815
816 2001-04-24  Alexander Larsson  <alexl@redhat.com>
817
818         * gtk/gtkclist.[ch]:
819         * gtk/gtkctree.c:
820         When there is a row highlighted for D'n'D it must alse
821         be painted hightlighted on exposes. Otherwise exposes from
822         the icon being dragged will mess up the hightlight.
823
824         * gtk/gtkfontsel.c:
825         Don't recenter selected font when exposing the font family
826         clist. This means you can now actually scroll the font family
827         list.
828
829         * gtk/gtknotebook.c:
830         Fix focus movement on scrolling tabs that are placed on the left
831         and right.
832
833 2001-04-21  Havoc Pennington  <hp@pobox.com>
834
835         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
836         empty/invisible lines.
837
838         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
839         (gtk_text_iter_set_visible_line_index): new functions to set
840         indexes excluding invisible text
841
842         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
843         index
844
845         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
846         (gtk_text_iter_get_visible_line_offset): new functions to 
847         get indexes excluding invisible text
848
849         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
850         bunch of extra padding that served no purpose
851
852         * gtk/gtkdialog.c: Make all the spacings configurable via style
853         properties, for chubbiness configuration in themes
854
855         * tests/testtext.c: fix path to the immodules.
856         
857 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
858
859         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
860         got munched by #endif.
861
862         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
863
864         * gtk/gtktreeview.c: Refactored code to clean up a number of
865         events.
866
867         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
868         values to make consistent with other functions.  Spotted by Jeff
869         Franks <jcf@tpg.com.au>.
870
871         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
872         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
873
874 2001-04-23  Sven Neumann  <sven@gimp.org>
875
876         * gtk/Makefile.am
877         * gtk/gtkplug.c
878         * gtk/gtksocket.c: on request of Owen, reverted my last change 
879         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
880
881 2001-04-23  Sven Neumann  <sven@gimp.org>
882
883         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
884         compile for non-X11 targets again
885
886 2001-04-20  Alexander Larsson  <alexl@redhat.com>
887
888         * gtk/gtkcolorsel.[ch]:
889         API Change. Take GdkColor arguments instead of gdouble *.
890         Leave the old gtk_color_selection_set_color for compatibility,
891         but marked deprecated.
892         Do correct rounding when converting RGB <-> HSV.
893         
894         * gtk/gtkcolorseldialog.c:
895         * tests/testgtk.c:
896         Use new GtkColorSelection API.
897
898         * gtk/gtkhsv.c:
899         Fix problem selecting colors in triangle when Hue is 330.
900         Fix some black dots around the HSB triangle.
901         
902         * gtk/gtkfilesel.c:
903         return FALSE from the focus_in_event handler to fix focus problems.
904
905 2001-04-18  Havoc Pennington  <hp@redhat.com>
906
907         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
908         set, so keybindings are configurable    
909         (gtk_window_activate_default): Change to activate the focus widget
910         instead if there's a focus widget, to be consistent with the
911         behavior that previously existed in key_press_event
912
913 2001-04-18  Havoc Pennington  <hp@redhat.com>
914
915         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
916
917 2001-04-18  Havoc Pennington  <hp@redhat.com>
918
919         Close bug #50615:
920         
921         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
922         the layout
923
924         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
925
926         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
927
928         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
929         
930         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
931         to blue for base, in addition to bg
932         
933 2001-04-18  Havoc Pennington  <hp@redhat.com>
934
935         * tests/testgtk.c (create_image): allow shrinking the image window
936         to test that we clip to allocation.
937
938         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
939         #9845
940
941         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
942
943 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
944
945         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
946         mode on shm segments to 0600. We'll see who complains.
947
948         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
949         _gdk_windowing_window_destroy() AFTER recursing through
950         children.
951
952         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
953         testsocket_child on X.
954
955         * tests/testsocket[_child].c: Fix uses of
956         gtk_window_get_default_accel_group().
957
958         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
959
960         * gdk/gdkimage.c: (gdk_image_get):
961         Deal with the possibility that XGetImage() might return NULL.
962         Allocate the GdkImagePrivate structure only after XGetImage()
963         succeeds in order not to dereference a NULL ximage pointer.  This
964         prevents a core dump when XGetImage() fails - which is unlikely,
965         but can happen due to race conditions accessing the geometries of
966         drawables.  An x error will still be triggered, but the gdk image
967         wrapper at least wont seg fault.
968         
969 2001-04-18  Havoc Pennington  <hp@redhat.com>
970
971         * gtk/gtkimage.c: fix to properly queue resizes when the image is
972         set
973
974         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
975         if the insertion point isn't editable
976
977         * demos/gtk-demo/images.c: Added a GtkImage demo
978
979         * demos/gtk-demo/drawingarea.c: drawing area demo
980         
981         * demos/gtk-demo/menus.c (create_menu): cleanups
982
983 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
984
985         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
986           gdk/x11/gdkevents-x11.c: Introduce an extra child
987         of toplevel windows that serves to hold the focus to
988         avoid events being delivered to embedded windows.
989
990         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
991         some extra variables to clean up code and reduce the
992         number of casts.
993
994         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
995         guint for 1 bit bit fields, not gboolean.
996
997 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
998
999         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
1000         not TRUE. (Fixes #52925)
1001
1002 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
1003
1004         * Released 1.3.4
1005
1006         * NEWS: Updated
1007
1008         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
1009         use GTK_TYPE_ENUM.
1010
1011 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
1012
1013         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1014
1015         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
1016         names to compatibility #defines so docs work.
1017
1018         * gtk/gtkenums.h: Remove GtkMenuFactoryType
1019
1020         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
1021
1022         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
1023
1024         * tests/testgtkrc: No magenta cursors, please.
1025
1026         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
1027
1028         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
1029         
1030 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
1031
1032         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
1033         grabs, since they are no longer necessary.
1034
1035         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
1036         by signal_connect() and call gtk_button_pressed() rather
1037         than signal_connect_after().
1038
1039         * tests/testgtk.c: Restore radio menu items to combos 
1040         since they'll look OK with Raleigh, and it is easier
1041         than finishing the process of removing them that was
1042         started earlier.
1043
1044 2001-04-16  Hans Breuer  <hans@breuer.org>
1045
1046         * gdk/gdk.def :
1047         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
1048
1049         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
1050         we are interested in the functions return value not the function address
1051         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
1052
1053         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
1054
1055 2001-04-14  Hans Breuer  <hans@breuer.org>
1056
1057         * gdk/gdk.def :
1058         * gdk/makefile.msc : updated
1059
1060         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
1061         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
1062         (the testgtk::text backgound pixmap is drawn again)
1063         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
1064         Win32 Pango change
1065         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
1066
1067         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
1068         Not sure if the returned settings have the right unit, because I couldn't
1069         find any docs for the X version ...
1070
1071         * gtk/gtk.def :
1072         * gtk/makefile.msc.in : updated
1073
1074 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1075
1076         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
1077         wording problems. (Compared to version from Johannes Stezenbach to
1078         check correctness.)
1079
1080 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
1081
1082         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
1083         this to compile.
1084
1085 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
1086
1087         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
1088         not pixbufpos.
1089
1090         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
1091
1092         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
1093         are unsigned insts, therefore use g_value_set_uint.
1094         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
1095
1096 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
1097
1098         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
1099
1100         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
1101         GTK_TYPE_STRING.
1102
1103         * gtk/gtktreeview.c: New functions to allow initial column
1104         dragging work.
1105
1106         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
1107
1108         * tests/testtreefocus.c: give dave some love.
1109
1110         * tests/testtreesort.c: Modify test to check really long samples.
1111
1112 2001-04-11  Alexander Larsson  <alexl@redhat.com>
1113
1114         * gtk-2.0.m4: Pass pkg-config options
1115         before the other args so it works even if
1116         POSIXLY_CORRECT is set.
1117
1118 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
1119
1120         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
1121         0, interface 0).
1122
1123 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
1124
1125         * gtk/gtkcalendar.c (gtk_calendar_button_press):
1126         check for action_func != NULL
1127
1128 2001-04-04  Sven Neumann  <sven@gimp.org>
1129
1130         * tests/testgtk.c (test_init): corrected path to gtk.immodules
1131
1132 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
1133
1134         * Released Gtk+-1.3.3.
1135
1136 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
1137
1138         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
1139
1140 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
1141
1142         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
1143         files to/from source dir. (if we don't stay in builddir, we
1144         can't reach make-inline-pixbuf.
1145
1146         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
1147         deps.
1148
1149         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
1150         ages 0).
1151
1152 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
1153
1154         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
1155         moved to the GtkTreeSortable interface.
1156
1157         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1158         Make more efficient (fixes #50262).
1159
1160 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
1161
1162         * NEWS: Updated.
1163
1164         * configure.in: Remove support for uninstalled glib.
1165
1166         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
1167         so as not to stop emission.
1168
1169         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
1170         is no longer supported.
1171
1172         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
1173         into tests, change build order to build modules before
1174         gtk/.
1175
1176         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
1177         to here.
1178
1179 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
1180
1181         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
1182         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
1183         GPatternSpec. this is actually unlikely to cause breakage in
1184         third-party apps since except for gle, pretty much ever caller
1185         passes NULL here.
1186
1187         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
1188
1189         * *.c: use g_pattern_*() API.
1190
1191         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
1192
1193         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
1194         directions aren't passed in.
1195
1196         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
1197         functionality to be usable from gtkstyle.c as well, give precedence
1198         for conversion to user-supplied parsers.
1199         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
1200
1201         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
1202         _gtk_settings_parse_convert() for rcporperty value conversion.
1203
1204 2001-04-03  Alexander Larsson  <alexl@redhat.com>
1205
1206         * gdk/linux-fb/gdkevents-fb.c:
1207         Add empty gdk_setting_get().
1208
1209 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
1210
1211         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
1212         variable names.
1213         
1214         * gtk/makeenums.pl: touch this so enum files get remade.
1215
1216 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
1217
1218         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
1219         work again when not sorted.
1220
1221         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
1222         and "expand_row" signal, closing bug 52578.
1223
1224         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
1225         support.
1226
1227         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
1228         support.
1229
1230 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1231
1232         * gdk/gdkevents.h: Add GdkEventSetting event for notification
1233         of changes to system settings, gdk_setting_get() to retrieve
1234         a single system setting.
1235
1236         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
1237         to the draft XSETTINGS mechanism.
1238
1239         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
1240         XSETTINGS.
1241
1242         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
1243         of GDK settings changes to the GtkSettings object.
1244
1245         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
1246         double-click-timeout property to GDK.
1247
1248         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
1249         Define GDK boxed types here.
1250
1251         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
1252         gdk/gdkenumtypes.[ch] for enum definitions.
1253
1254         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
1255         * gtk/gtk-boxed.defs: Comment out GDK types
1256         * gtk/gtktypeutils.h: Remove GDK types
1257         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
1258
1259 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
1260
1261         * Applied patch from Ron Steinke to add signal accumulators
1262         so that signals with the convention 'TRUE return means
1263         handled' stop emission on a TRUE return.
1264
1265         * gtk/gtkmain.[ch]: Add private accumulator 
1266         _gtk_boolean_handled_accumulator, used throughout GTK+.
1267         
1268         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1269
1270         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1271         
1272         * gtk/gtkwidget.c: Add accumulators for event signals,
1273         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1274         for ::mnemonic-activate.
1275
1276         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1277
1278 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1279
1280         * gtk/gtkwidget.c: Add missing include.
1281
1282 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1283
1284         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1285         marshaller.
1286
1287         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1288         "changed" signal to "range_changed".
1289
1290         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1291         removing a tree from one model would remove all trees from that
1292         model.
1293         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1294         changed signal instead.
1295
1296 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1297
1298         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1299         chaining up to parent impl, since we have a INPUT_ONLY
1300         window.
1301
1302         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1303         foreground color for the cursor.
1304
1305 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1306
1307         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1308         param spec when caching property values, since we unref it
1309         later when we free the style.
1310
1311         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1312         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1313
1314 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1315
1316         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1317         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1318         stupidity.
1319
1320 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1321
1322         [ First pass at adding style properties. Still needs some definite
1323         fine-tuning. ]
1324
1325         * gtk/gtkbutton.c: Add ::default_spacing style property.
1326          
1327         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1328         ::indicator_spacing style properties.
1329
1330         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1331         style properties.
1332
1333         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1334         rather than a normal property.
1335
1336         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1337         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1338
1339         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1340         Honor ::interior_focus.
1341         
1342         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1343         TRUE.
1344
1345         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1346         Add ::slider_width, ::trough_border, ::stepper_size,
1347         ::stepper_spacing style properties.
1348
1349         * gtk/gtkscale.[ch] Add ::slider-length style property.
1350
1351 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1352
1353         * gdk/linux-fb/gdkwindow-fb.c:
1354         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1355         warnings that were spewed on startup.
1356
1357         * gtk/gtkwindow-decorate.c:
1358         gtk_window_reposition -> _gtk_window_reposition
1359
1360 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1361
1362         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1363         Add boxed type for GtkRequistion. Use it for ::size-request.
1364
1365         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1366         Add a new GtkBorder structure useful for geometry properties
1367         for widgets. Add corresponding GTK_TYPE_BORDER.
1368         
1369         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1370         Support automatic parser selection like
1371         gtk_settings_install_property_parser().
1372
1373         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1374         functionality for use by gtk_widget_class_install_style_property.
1375         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1376
1377 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1378
1379         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1380         g_param_spec_unichar(). 
1381
1382 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1383
1384         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1385         _NET window managers.
1386
1387         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1388
1389 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1390
1391         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1392         bad needs to be nuked, not just deprecated.
1393
1394         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1395         gtk_widget_popup().
1396
1397         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1398         
1399         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1400         widget.
1401         
1402         * docs/Changes-2.0.txt: updates.
1403         
1404 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1405
1406         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1407         for (i = 0; i < 100; i ++)
1408           g_print ("I will confirm it compile before committing\n");
1409
1410 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1411
1412         * gtk/gtktreestore.c: Initial work on implementing the
1413         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1414
1415 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1416
1417         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1418         reference counts around emissions where the widget is used afterwards.
1419         added freeze/thaws around multiple properties being notified.
1420         (_gtk_widget_get_aux_info): cleanups.
1421         
1422         * gtk/gtksettings.c (gtk_settings_install_property): provide
1423         default parsing functions for gdkcolor, enums and flags.
1424
1425         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1426         applied by owen.
1427         backed out gtk_window_get_location(), gtk_window_set_location(),
1428         gtk_window_get_size() and gtk_window_set_size(), these
1429         have to be sorted out wrg x/y/width/height/default_with/default_height
1430         properties.
1431         kept a flag in GtkWindowGeometryInfo to handle user
1432         resetting default sizes.
1433         cleaned up ZVT comments.
1434         bunch of assorted bug fixes, notification fixes.
1435         (_gtk_window_reposition): make this a really internal function.
1436         
1437         * gtk/testgtk.c: fixups.
1438         
1439 2001-03-31  Hans Breuer  <hans@breuer.org>
1440
1441         * config.h.win32.in : disable USE_MMX for msvc build cause
1442         the assembler doesn't fit and is out of my scope. Disable
1443         USE_GMODULE for msvc build as wel. The right way to share
1444         binaries on win32 would be to use libtiff.dll etc. To reduce
1445         installation hassles IMO it's better to include all fileformats
1446         builtin to gdk-pixbuf
1447
1448         * gdk-pixbuf/makefile.msc : new file
1449
1450         * gdk/gdk.def : updated
1451
1452         * gdk/win32/gdkevents-win32.c : don't erase the background if
1453         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1454         buttons
1455         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1456
1457         * gdk/win32/gdkwindow-win32.c : added three new functions like
1458         the X version. Only one is implemented, because the other two
1459         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1460         be default behaviour on win32 anyway ...
1461
1462         * gtk/gtk.def : updated
1463
1464         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1465         from where it was built and add an additional rule to automagically
1466         build gtkmarshal.[hc]
1467
1468         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1469         before array access for the current entry isn't finished
1470
1471         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1472         use g_return_val_if_fail
1473
1474         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1475         for the static array, but let the compiler calculate it. It
1476         makes me wonder if gcc isn't capable to catch bugs like this ...
1477
1478 2001-03-31  James Henstridge  <james@daa.com.au>
1479
1480         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1481         constant "-1" in the aux info structure.
1482
1483 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1484
1485         * gtk/gtkbutton.c (gtk_button_get_property):
1486         * gtk/gtklabel.c:
1487         Remove leaks.
1488         
1489         * gtk/gtkcontainer.c:
1490         * gtk/gtkhscale.c:
1491         * gtk/gtkhscrollbar.c:
1492         * gtk/gtklayout.c:
1493         * gtk/gtkmisc.c:
1494         * gtk/gtkprogress.c:
1495         * gtk/gtkprogressbar.c:
1496         * gtk/gtkrange.c:
1497         * gtk/gtktable.c:
1498         * gtk/gtkviewport.c:
1499         * gtk/gtkvscale.c:
1500         * gtk/gtkvscrollbar.c:
1501         * gtk/gtkwidget.c:
1502         Property patches, based on patches from John Margaglione and Lee Mallabone.
1503
1504 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1505
1506         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1507         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1508         inline API function docs.
1509         (gtk_spin_button_new_with_range): New convenience constructor.
1510         (gtk_spin_button_set_increments): New adjustment helper.
1511         (gtk_spin_button_set_range): New adjustment helper.
1512
1513         * gtk/testgtk.c : added test of the new convenince constructor and
1514         value_changed signals.
1515
1516 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1517
1518         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1519         listen to the reorder signal.
1520
1521 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1522
1523         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1524         to get the aux info structure fo the widget.
1525
1526         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1527         above function.
1528
1529         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1530
1531         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1532         to get the size of the window manager frame, basically the same
1533         code that gdk_window_get_root_origin() had
1534         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1535
1536         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1537         gdk_window_resize() if the window is realized and resizeable
1538
1539         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1540         typo so that setting gravity works
1541
1542         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1543         allocation if auto_shrink is on, even if the default size
1544         has not changed.
1545
1546         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1547         g_return_if_fail
1548
1549 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1550
1551         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1552         reordering/sorting work.  Now pretty much works.
1553
1554         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1555         reorder mostly work.  Still need to get the parity correct.
1556
1557         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1558         signal, so I can listen for the sort_column_changed signal so I
1559         can change my "sort_indicator" property.  Cool.
1560
1561 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1562
1563         [ Patch from Havoc Pennington, hp@redhat.com ]
1564
1565         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1566         Add functions gdk_window_begin_resize_drag/begin_move_drag
1567         to start resizing or moving a toplevel window. This
1568         is done either using the _NET_WM_MOVERESIZE protocol,
1569         or, if that isn't present, by emulation.
1570
1571         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1572         to export the above to GTK+-land.
1573
1574         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1575         
1576         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1577         Move this function into gdkwindow, since we need it
1578         when implementing fallback resizing.
1579
1580         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1581         Fix typo when setting gravity.
1582
1583         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1584         Add an optional (but on by default) resize grip for resizing 
1585         the parent window.
1586
1587 01-03-29  Alexander Larsson  <alexl@redhat.com>
1588
1589         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1590         Don't return TRUE from the event handler, that blocks all
1591         event signals on the tooltip widget. Now you can press buttons
1592         in toolbars again.
1593
1594 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1595
1596         * gtk/testtext.c (create_buffer): Add missing NULL on
1597         valist.
1598
1599         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1600         c-n-p problem with INCONSISTENT property.
1601
1602         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1603
1604         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1605         hook.
1606
1607         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1608         signal as a hook for extending the default popup menu
1609
1610         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1611         use radio menu items for the input method menuitems
1612
1613         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1614         inserted unicode from Ctrl-Shift-hex input method
1615
1616         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1617         validatation here, already done at GtkTextBuffer level.
1618
1619         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1620         popup_menu run action signal and Shift+F10 and Menu keybindings.
1621
1622         * gtk/gtkentry.c: implement a default handler for popup_menu
1623
1624         * gtk/gtktextview.c: implement a default handler for popup_menu
1625
1626         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1627         from a key event
1628         
1629         * gtk/gtklabel.c: remove "trailer" cruft
1630
1631 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1632
1633         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1634         handle reordering of trees.  Seems to mostly work w/ the exception
1635         of the parity flag.
1636
1637         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1638         signal.
1639
1640 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1641
1642         * gtk/gtkwidget.h: c++ fixes.
1643
1644 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1645
1646         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1647         memory.
1648
1649 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1650
1651         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1652         Nils Barth fixing event return values. (#51041)
1653
1654         * gtk/gtkwidget.c: Fix some return values for default
1655         functions.
1656
1657         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1658         return values for trough_keys functions.
1659
1660         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1661         value for add_accelerator (shoudl have been a void
1662         return.)
1663
1664         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1665         Fix return type of EVENT.
1666
1667         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1668         signal return a boolean.
1669
1670 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1671
1672         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1673         reordered signal.
1674
1675         * tests/testtreesort.c (main): fix spelling.
1676
1677 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1678
1679         * gtk/gtkliststore.c: More work on implementing sortable
1680         interface.
1681
1682 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1685         reference the widgets in the resulting list. (#11821)
1686         This makes this consistent with gtk_container_children.
1687
1688         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1689         uses of gtk_window_list_toplevels.
1690
1691 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1692
1693         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1694         a virtual function to set whether the IM context should use 
1695         the preedit string. (#51922)
1696         
1697 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1698
1699         * gdk/gdkpango.h: Remove stale FIXME comment.
1700
1701 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1702
1703         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1704         Fixed bug that returned NULL if a filename was selected.
1705
1706 2001-03-24  Havoc Pennington  <hp@pobox.com>
1707
1708         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1709         to contain the word "theme"
1710
1711 2001-03-24  Havoc Pennington  <hp@pobox.com>
1712
1713         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1714         slower but finer-grained
1715         (gtk_hsv_focus): get initial focus on the ring or triangle 
1716         according to tab direction
1717
1718         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1719
1720 2001-03-23  Havoc Pennington  <hp@pobox.com>
1721
1722         * gtk/gtkhsv.c: make this somewhat key-navigable
1723
1724         * gtk/gtkfontsel.c: mnemonics
1725
1726         * gtk/gtkgamma.c: mnemonics
1727
1728         * gtk/gtkcolorsel.c: add mnemonics to labels
1729
1730 2001-03-22  Havoc Pennington  <hp@pobox.com>
1731
1732         Applied big patch from Seth Lytle to fix event handler return
1733         values, slightly modified.
1734
1735         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1736         handled.
1737         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1738         select_day
1739
1740         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1741         (gtk_clist_button_release): return TRUE if handled
1742
1743         * gtk/gtkcolorsel.c (mouse_release):
1744         (palette_activate): 
1745         (palette_press): 
1746         (palette_new): 
1747         (mouse_press): 
1748         (get_screen_color): 
1749         fixed return type (void to gboolean), return TRUE,
1750         added GTK_SIGNAL_FUNC cast
1751
1752         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1753         (void to gboolean), and return TRUE
1754         (gtk_combo_button_release): changed return value to TRUE after
1755         gtk_grab_add on combo->popwin
1756
1757         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1758         collapse or expand
1759
1760         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1761         button/motion
1762
1763         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1764         press/release and motion that trigger act
1765
1766         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1767
1768         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1769         for GDK_Return
1770         
1771         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1772         (gtk_list_button_release): return TRUE if selection
1773
1774         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1775         press
1776
1777         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1778         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1779
1780         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1781         nothing triggered
1782         (gtk_notebook_button_release): return TRUE if we do anything
1783
1784         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1785         (gtk_spin_button_button_release): return TRUE or chained retval
1786
1787         * gtk/gtktext.c (gtk_text_button_press): 
1788         (gtk_text_button_release): return TRUE
1789         (gtk_text_key_press): remove redundant retval code
1790         
1791         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1792         and sensitive
1793         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1794         TRUE if sensitive
1795
1796         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1797         return TRUE
1798
1799 2001-03-23  Havoc Pennington  <hp@redhat.com>
1800
1801         * gtk/testgtk.c: fix warnings
1802
1803         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1804
1805         * gtk/gtktextview.c: fix warnings
1806
1807         * gtk/gtktext.c (find_cursor_at_line): fix warning
1808
1809         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1810
1811         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1812         of this function
1813
1814         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1815         fix warning
1816
1817         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1818
1819         * gtk/gtkfontsel.c: fix warning
1820
1821         * gtk/gtkcolorsel.c: fix warnings
1822
1823 2001-03-23  Havoc Pennington  <hp@redhat.com>
1824
1825         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1826
1827         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1828
1829         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1830         and deprecated gtk_check_menu_item_set_show_toggle().
1831         
1832         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1833
1834         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1835
1836         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1837
1838 2001-03-23  Havoc Pennington  <hp@redhat.com>
1839
1840         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1841         some docs
1842
1843 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1844
1845         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1846         this.
1847
1848         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1849         set_cell to set_value
1850
1851         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1852         set_cell to set_value
1853
1854 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1855
1856         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1857         fix braino.
1858         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1859         support.
1860
1861         * gtk/gtktreeview.c: Addition of initial sortable support.
1862
1863         * gtk/gtktreestore.c: Addition of initial sortable support.
1864
1865         * gtk/gtkliststore.c: Addition of initial sortable support.
1866
1867         * gtk/gtkmarshal.list: yet another marshaller.
1868
1869         * gtk/gtktreedatallist.[ch]: shared code between the store models
1870         for handling sorting headers.
1871
1872 2001-03-22  Havoc Pennington  <hp@redhat.com>
1873
1874         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1875         (gtk_container_unset_focus_chain): Add ability to override the 
1876         focus chain for a container explicitly
1877
1878 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1879
1880         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1881         added PROP_MNEMONIC_WIDGET.
1882
1883         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1884         (gtk_window_remove_mnemonic): 
1885         (gtk_window_add_mnemonic): fixed assertions.
1886         (gtk_window_activate_mnemonic): constrain modifier checks to those
1887         permitted by gtk_accelerator_get_default_mod_mask().
1888         got rid of gtk_window_get_default_accel_group().
1889
1890         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1891         activatable widgets either by focussing or a warning.
1892         added a signal accumulator to ::activate_mnemonic which stops the
1893         emission once a handler returned TRUE.
1894
1895 2001-03-22  Havoc Pennington  <hp@pobox.com>
1896
1897         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1898         the stock item label
1899
1900         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1901
1902         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1903
1904         * demos/gtk-demo/*.c: Add mnemonics all over the place
1905
1906         * gtk/gtklabel.h: mark parse_uline deprecated
1907
1908 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1909
1910         * gtk/gtkitemfactory.[ch]:
1911         Add support for stock and normal imagemenuitems.
1912         
1913         * gtk/testgtk.c:
1914         Add some tests for mnemonics, stock toolbars, stock
1915         and image menuitems in itemfactory and gdk_window_scroll.
1916
1917 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1918
1919         * gtk/gtkbutton.[ch]:
1920         * gtk/gtkdialog.c:
1921         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1922         removed accel_group argument. Renamed gtk_button_new_accel() to
1923         gtk_button_new_with_mnemonic() and removed accel_group argument.
1924
1925         * gtk/gtkcheckbutton.[ch]:
1926         New function gtk_check_button_new_with_mnemonic().
1927
1928         * gtk/gtkentry.c:
1929         Override activate_mnemonic and just grab focus.
1930
1931         * gtk/gtkitemfactory.c:
1932         Don't add menu uline accel group, instead use mnemonics support.
1933
1934         * gtk/gtklabel.[ch]:
1935         New support for mnemonics.
1936
1937         * gtk/gtkmarshal.list:
1938         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1939
1940         * gtk/gtkmenu.[c]:
1941         * gtkmenushell.c:
1942         Use mnemonics instead of accel groups for uline
1943         support in menu items.
1944         Removed gtk_menu_get_uline_accel_group() and
1945         gtk_menu_ensure_uline_accel_group().
1946
1947         * gtk/gtkmenuitem.c:
1948         Override activate_mnemonic to handle switching between
1949         menu items if there are collisions.
1950         
1951         * gtk/gtknotebook.c:
1952         Connect to activate_mnemonic on the tab_label, so that
1953         activating it switches to that notebook page.
1954
1955         * gtk/gtkwidget.[ch]:
1956         Add activate_mnemonic signal. New function
1957         gtk_widget_activate_mnemonic() to emit it.
1958         Default implementation does activate/grab_focus.
1959
1960         * gtk/gtkwindow.[ch]:
1961         Add support for mnemonics in windows.
1962         New functions:
1963         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1964         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1965
1966         * gtk/testgtk.c:
1967         Update to function name changes.
1968         
1969 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1970
1971         * gtk/gtkimagemenuitem.[c]:
1972         Add gtk_image_menu_item_new_from_stock()
1973
1974 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1975
1976         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1977         Fix buglet in meeting.
1978
1979 2001-03-19  Havoc Pennington  <hp@redhat.com>
1980
1981         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1982         add a bunch of accessor functions. This is because we have
1983         reasonable expectations of extending what fields it contains in
1984         the future.
1985
1986         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1987         changes
1988
1989         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1990         GtkIconSource   
1991
1992 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1993
1994         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1995         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1996
1997         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1998           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1999           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
2000           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
2001         Change float to double everywhere with the exception of 0<->1.0 alignment
2002         and GtkCurve.
2003
2004 2001-03-19  Tor Lillqvist  <tml@iki.fi>
2005
2006         * gdk/win32/gdkdrawable-win32.c
2007         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
2008         output.
2009
2010         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
2011         gdkwin32.h.
2012
2013 2001-03-18  Tor Lillqvist  <tml@iki.fi>
2014
2015         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
2016         print_event_state, print_event): Use preprocessor macro to make
2017         code more compact. Print also GDK_WINDOW_STATE events.
2018         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
2019         
2020         * gtk/gtk.def
2021         * gtk/makefile.mingw.in: Update.
2022
2023         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
2024         to catch also Cygwin.
2025
2026 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
2027
2028         * gtk/gtkspinbutton.[hc]: added rc-style argument
2029         GtkSpinButton::shadow_type.
2030         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
2031         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
2032         rc-style settings.
2033
2034         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
2035
2036         * gtk/gtkwidget.c: quark cleanups.
2037
2038         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
2039         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
2040         to create_rc_style() (we don't do cloning in standard OO sense).
2041         added per rc style properties.
2042         
2043         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
2044         property values and for caching those. some cleanups.
2045         
2046         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
2047         
2048         * gtk/gtksettings.[hc]: new file for global rc-file properties
2049         (at least currently, should get extended to support X properties
2050         and other communication mechanisms).
2051         
2052         * gtk/gtkwidget.[hc]: added style property support:
2053         (gtk_widget_class_install_style_property_parser): install style
2054         property pspec with parser function for rc-file values other
2055         than LONG, DOUBLE or STRING.
2056         (gtk_widget_class_install_style_property): same as above without
2057         parser (parsers are going to be needed quite infrequently).
2058         (gtk_widget_style_get_property): retrive style property value.
2059         (gtk_widget_style_get_valist): same as above with varargs support,
2060         has NOCOPY semantics.
2061         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
2062
2063 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
2064
2065         * demos/gtk-demo/main.c (row_activated_cb): modified to use
2066         "row_activated" signal.
2067
2068         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
2069         stupidity.  Lets actually pass in the row with this signal...
2070
2071 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
2072
2073         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
2074
2075         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
2076
2077         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
2078         everything into the ::destroy function, and freed a lot more.
2079
2080 2001-03-16  Havoc Pennington  <hp@redhat.com>
2081
2082         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
2083         instead of gint16, to avoid overflow issues, since sizes > 16-bit
2084         are now allowed.
2085
2086 2001-03-16  Havoc Pennington  <hp@redhat.com>
2087
2088         * Applied patch from Nils Barth (bug # 51041) to 
2089         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
2090         in various places.
2091
2092 2001-03-15  Havoc Pennington  <hp@redhat.com>
2093         
2094         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
2095         for properties to set on the tag.
2096
2097         * gtk/testtext.c: fixups to reflect create_tag change
2098         
2099         * gtk/gtktexttag.c (gtk_text_tag_set_property):
2100         background/foreground stipple are objects, not boxed.
2101
2102         * demos/gtk-demo/textview.c: intellihancing
2103
2104 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2105
2106         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
2107         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
2108
2109 2001-03-16  Alexander Larsson  <alexl@redhat.com>
2110
2111         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
2112         Fix sign error with queued region translations.
2113
2114 2001-03-15  HideToshi Tajima  <tajima@happy>
2115
2116         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
2117         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
2118         * gtk/gtkentry.c (update_im_cursor_location): 
2119         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
2120         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
2121         set_cursor_pos to set_cursor_location in GtkInputContext class
2122
2123 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
2124
2125         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
2126         the location of the cell relative to its area.
2127         * gtk/gtkcell*: modified for above change
2128         * gtk/gtktreeview.c: modified for above change.
2129
2130 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
2131
2132         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
2133          (gtk_tree_view_finalize): actually unref the model.  Thanks to
2134         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
2135
2136 2001-03-14  Havoc Pennington  <hp@redhat.com>
2137
2138         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
2139         
2140         * gtk/gtk.h: remove gtkdata.h
2141
2142         * gtk/Makefile.am: remove gtkdata
2143         
2144         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
2145         not "disconnect" on the adjustments.
2146         
2147         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
2148         GtkData
2149
2150         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
2151         not GtkData
2152
2153         * configure.in: handle case where X render exists, but Pango lacks
2154         Xft support.
2155
2156 2001-03-15 Alexander Larsson  <alexl@redhat.com>
2157
2158         * gtk/gtktoolbar.[ch]:
2159         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
2160         to add stock items to toolbars.
2161
2162         * gtk/Makefile.am:
2163         Remove ../gdk/gdkim.h from gdk_headers.
2164
2165 2001-03-15  Sven Neumann  <sven@gimp.org>
2166
2167         * gdk/gdkim.h: removed
2168         
2169         * gdk/gdkprivate.h
2170         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
2171
2172 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
2173
2174         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
2175         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
2176         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
2177         set_cursor_pos() virtual method
2178
2179         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
2180         (gtk_im_context_xim_set_cursor_pos): add implementation for
2181         set_cursor_pos() method
2182
2183         * gtk/gtkentry.c (recompute_idle_func): set current cursor
2184         position to input methods
2185
2186 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
2187
2188         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
2189         code a lot.
2190
2191         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
2192         g_mem_chunk.
2193         (_gtk_tree_data_list_alloc): use g_mem_chunk.
2194         (_gtk_tree_data_list_node_to_value): Fix to switch on
2195         G_TYPE_FUNDAMENTAL.
2196         (_gtk_tree_data_list_value_to_node): Fix to switch on
2197         G_TYPE_FUNDAMENTAL.
2198         (_gtk_tree_data_list_node_copy): Fix to switch on
2199         G_TYPE_FUNDAMENTAL.
2200
2201 2001-03-12  Havoc Pennington  <hp@redhat.com>
2202
2203         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
2204         to convert to new property API. Also, change default_width and
2205         default_height get_property to return 0 as the flag value for
2206         "unset"; -1 is not a valid value for these fields.
2207
2208 2001-03-12  Havoc Pennington  <hp@redhat.com>
2209
2210         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
2211         enum with registration for icon sizes, instead of strings.
2212
2213         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
2214         gtkwidget.c: Fix to reflect GtkIconSize
2215         
2216 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2217
2218         Make GtkFB compile and link.
2219         
2220         * gdk/linux-fb/gdkdrawable-fb2.c:
2221         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2222         
2223         * gdk/linux-fb/gdkwindow-fb.c:
2224         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2225         Added gdk_window_shape_combine_region.
2226         Added assorted placeholders for unimplemented new GdkWindow API calls.
2227
2228 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2229
2230         * gtk/gtkfilesel.c:
2231         Add more test when converting filenames from/to utf-8.
2232         Don't allow entering text in the filename entry which isn't allowed in
2233         a filename. Just beep instead.
2234
2235 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2236
2237         * gtk/gtkclist.c:
2238         Scroll using gdk_window_scroll(). Don't wait for exposes.
2239         Move the column headers in an order that makes them flash less.
2240
2241 2001-03-10  Hans Breuer  <hans@breuer.org>
2242
2243         * gdk/gdk.def : updated
2244
2245         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
2246         to offseting the clip_mask at the right place
2247
2248         * gdk/win32/gdkwindow-win32.c : don't create background brushes
2249         for all the gdkClasses, especially not for the input_only case.
2250         Otherwise flickering wont be avoidable, because we don't get
2251         WM_ERASEBKGND message for these windows.
2252
2253         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
2254         and fixed massive redraw problems apparently triggered by Alexanders 
2255         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
2256         but it seems to work quite well :-)
2257
2258         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
2259         prototype
2260
2261 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
2262
2263         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2264         (gtk_list_store_set_cell): Fix a stupid typo.
2265
2266 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2267
2268         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2269         select_all not work if you're in SINGLE mode (it doesn't make that
2270         much sense, anyway.)
2271
2272         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2273         handle types more sanely.
2274         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2275         (_gtk_tree_data_list_node_copy): handle types more sanely.
2276
2277         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2278         GValue better. Converts the type as well.
2279
2280         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2281         GValue better. Converts the type as well.
2282
2283 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2284
2285         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2286         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2287         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2288         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2289
2290         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2291         gdk_im/gdk_ic.
2292
2293 2001-03-09  Hans Breuer  <hans@breuer.org>
2294
2295         * gdk/gdk.def : updated
2296
2297         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2298         for their palette
2299
2300         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2301         removing
2302
2303         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2304         removing and implemented Havoc's GdkWindow state functions; 
2305         stick/unstick only as no-op, cause I don't know how to emulate 
2306         on win32 ...
2307
2308         * gtk/gtk.def : updated
2309
2310         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2311
2312         * gtk/gtktypeutils.c : #include <string.h>
2313
2314         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2315
2316 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2317
2318         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2319         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2320         not a boxed.
2321
2322 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2323
2324         * docs/Changes-2.0.txt:
2325         Document expose event->region change and that gtk_widget_event
2326         doesn't allow passing expose events.
2327
2328         * gdk/gdkevents.h:
2329         Add region to expose event.
2330         
2331         * gdk/gdkevents.c:
2332         Handle event->region in gdk_event_copy() and gdk_event_free().
2333
2334         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2335         Generate expose_event->region when creating expose events.
2336
2337         * gdk/x11/gdkevents-x11.c:
2338         Generate expose events with regions when translating X events.
2339
2340         * gtk/gtkcontainer.[ch]:
2341         Default expose handler that propagates expose events to NO_WINDOW
2342         children. New function gtk_container_propagate_expose()
2343
2344         * gtk/gtkwidget.[ch]:
2345         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2346         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2347         expose events. New function gtk_widget_send_expose() to send expose
2348         events. New function gtk_widget_region_intersect() to calculate
2349         window/region intersections.
2350         
2351         * gtk/gtkmain.c (gtk_main_do_event):
2352         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2353         Use gtk_widget_send_expose() to send expose events.
2354         
2355         * gtk/gtkbin.c:
2356         * gtk/gtkbox.c:
2357         * gtk/gtkfixed.c:
2358         * gtk/gtkimagemenuitem.c:
2359         * gtk/gtklist.c:
2360         * gtk/gtkpacker.c:
2361         * gtk/gtktable.c:
2362         * gtk/gtktree.c:
2363         Remove expose handler, using the default container implementation
2364         instead.
2365         
2366         * gtk/gtkbutton.c:
2367         * gtk/gtkcheckbutton.c:
2368         * gtk/gtkeventbox.c:
2369         * gtk/gtkfixed.c:
2370         * gtk/gtkhandlebox.c:
2371         * gtk/gtklayout.c:
2372         * gtk/gtklistitem.c:
2373         * gtk/gtkmenu.c:
2374         * gtk/gtkmenubar.c:
2375         * gtk/gtkmenuitem.c:
2376         * gtk/gtknotebook.c:
2377         * gtk/gtkoptionmenu.c:
2378         * gtk/gtkpaned.c:
2379         * gtk/gtkscrolledwindow.c:
2380         * gtk/gtktogglebutton.c:
2381         * gtk/gtktoolbar.c:
2382         * gtk/gtktreeitem.c:
2383         * gtk/gtkviewport.c:
2384         Chain expose handler to parent class handler. Use
2385         gtk_container_propagate_expose() to propagate exposes.
2386
2387         * gtk/gtkclist.c (check_exposures):
2388         * gtk/gtktext.c (process_exposes):
2389         Use gtk_widget_send_expose instead of gtk_widget_event.
2390
2391 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2392
2393         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2394
2395 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2396
2397         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2398         unref the nodes.   Fixes bug #50058.
2399
2400         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2401         "::ref_iter" to "::ref_node".
2402         (gtk_tree_model_unref_node): change "::unref_iter" to
2403         "::unref_node". Fixes bug #50064.
2404
2405 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2406
2407         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2408         support for invisible cells.
2409          (gtk_tree_view_bin_expose): ditto
2410
2411 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2412
2413         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2414         on gobjects.
2415
2416         * tests/testtreefocus.c (main): New test file.
2417
2418         * tests/testtreeview.c: update to latest glib changes.
2419
2420         * tests/testtreecolumns.c: update to latest glib changes.
2421
2422 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2423
2424         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2425
2426 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2427
2428         * *.c: added accumulator data argument to g_signal_newc()
2429         functions.
2430
2431         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2432         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2433         * gtk/treestoretest.c (make_window):
2434         s/g_signal_connect/g_signal_connectc/.
2435
2436         * gtk/gtktextbuffer.c: completed signal arg fixups,
2437         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2438
2439 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2440
2441         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2442         G_CONST_RETURN.
2443
2444         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2445         ::hierarchy-changed signal when a widget changes
2446         from anchored to unanchored or vice versa.
2447         (anchored means 
2448          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2449         Use a private flag to keep track of this efficiently.
2450
2451 2001-03-07  Havoc Pennington  <hp@redhat.com>
2452
2453         * gtk/testgtk.c (create_spins): uglify so that size request gets
2454         tested.
2455
2456         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2457         request on values for upper/lower, completes #6152
2458
2459 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2460
2461         * Makefile.am: Remove gtk-config-2.0 again.
2462         (Grrrr, pkg-config. And stops make loops.)
2463
2464 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2465
2466         * gtk/gtksignal.[hc]: removed old emission hook API.
2467         
2468         * docs/Changes-2.0.txt: fixed sections.
2469         
2470         * gtk/gtktextbuffer.c: signal arg fixups.
2471
2472 2001-03-07  Havoc Pennington  <hp@redhat.com>
2473
2474         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2475
2476         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2477         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2478         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2479         validation and the redraw which is higher priority than the
2480         validation.
2481
2482 2001-03-07  Havoc Pennington  <hp@redhat.com>
2483
2484         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2485         (gtk_entry_set_property): remove trailer
2486
2487         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2488         (gtk_entry_get_width_chars): new functions, to set size request to 
2489         a given number of characters
2490
2491         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2492
2493         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2494         (gtk_dialog_get_has_separator): new function
2495         (run_delete_handler): fix to not emit "response" signal
2496         because we already did in the delete event handler installed
2497         at dialog creation time.
2498         
2499         * gtk/gtkdialog.h: add a has_separator property,
2500         add GTK_DIALOG_NO_SEPARATOR flag
2501
2502 2001-03-07  Havoc Pennington  <hp@redhat.com>
2503
2504         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2505         off decorations for a window.
2506
2507         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2508         changes
2509
2510         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2511         to get location of PangoLayout inside the label, closes #51198
2512
2513         * gtk/testgtk.c (create_bbox): fix up button box usage
2514
2515         * gtk/testcalendar.c (create_calendar): fix up button box usage
2516
2517         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2518
2519         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2520
2521         * gtk/gtkhbbox.h: deprecations
2522
2523         * gtk/gtkvbbox.h: deprecations
2524
2525         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2526         emulate deprecated gtk_button_box_get_spacing
2527
2528         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2529         the "set global default" functions
2530         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2531         GtkBox base class
2532
2533         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2534
2535         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2536         render the icon, return the missing image icon.
2537
2538         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2539         image icon if the load fails.   
2540
2541         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2542         when no image is found; should be the Netscape "missing image"
2543         icon eventually but for now is a random image
2544
2545         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2546         role for the session manager
2547
2548         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2549
2550         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2551         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2552
2553         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2554
2555 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2556
2557         * gtk/*.c: marshaller fixes.
2558         
2559         * gtk/gtkmarshal.list: extreme cleanup.
2560
2561         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2562         param spec for now.
2563
2564         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2565         where appliable.
2566
2567         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2568         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2569         which are not reference counted:
2570         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2571         PangoFontDescription, GtkTreeIter and GtkTreePath.
2572
2573 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2574
2575         * gtk/gtktreeselection.h: 
2576         * gtk/gtktreemodel.c:
2577         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2578         file should be included directly, and gobject/gmarshal.h
2579         as well as gtk/gtkmarshal.h even can't be included directly.
2580
2581         * Makefile.am: grr, install gtk-config-2.0.
2582
2583         * gtk/testgtk.c:
2584         * gtk/simple.c:
2585         * gtk/gtkmenu.c:
2586         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2587         passing "*signal*::*" args to gtk_widget_set().
2588         
2589         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2590         
2591         * gtk/*.c: removed trailer arg from property setters and getters.
2592         macro fixups.
2593
2594 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2595
2596         * gtk/gtklabel.c (set_markup): Removed warning
2597
2598 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2599
2600         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2601         field to allow you to hide cell renderers.
2602
2603         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2604
2605         * gtk/gtktreeview.c: Add support for invisible cells.
2606
2607 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2608
2609         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2610         Add "clicked" signal back to columns.
2611
2612         * ChangeLog: remove conflict markers.
2613
2614 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gtk/gtkbutton.c: Add animation of activation by, on 
2617         activate, pressing the button, and adding a timeout that 
2618         releases the button after 250ms or on key release and
2619         emits ::clicked. (#51501)
2620
2621         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2622         action area, we connect to ::clicked instead of ::activate
2623         so the dialog stays up through the animation.
2624
2625 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2626
2627         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2628         check the ignore_enter flag for the menu shell that
2629         the item is actually a child of, not for attached
2630         submenus. (#51536)
2631
2632 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2633
2634         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2635         special key-press grab handling for widgets within
2636         GtkWindows. Otherwise, fall through to normal case.
2637
2638         This prevents key events being sent twice to GtkInvisible
2639         widgets, which can cause all sorts of mischief.
2640
2641 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2642
2643         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2644         widget is in effect, give the grab widget a first
2645         crack at KEY_PRESS/RELEASE events. (#424)
2646
2647 2001-03-06  James Henstridge  <james@daa.com.au>
2648
2649         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2650         offset for the window_state_event to point at window_state_event
2651         rather than no_expose_event.
2652
2653 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2654
2655         * gtk/gtkimmodule.h: fix busted /* comment */
2656
2657 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2658
2659         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2660         object properties.
2661
2662 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2663
2664         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2665         add object properties.
2666
2667         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2668         to add object properties.
2669
2670         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2671         object properties.
2672
2673         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2674         add object properties.
2675
2676         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2677         object properties.
2678
2679 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2680
2681         * gtk/gtktreemodel.c: renamed "child_toggled" to
2682         "has_child_toggled".
2683
2684         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2685         handle new signal name.
2686
2687         * gtk/gtktreestore.c: Updated to handle new signal name.
2688         * gtk/gtklisttore.c: Updated to handle new signal name.
2689         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2690
2691 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2692
2693         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2694         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2695
2696 2001-03-05  Michael Natterer  <mitch@gimp.org>
2697
2698         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2699         pixbuf-engine coincidentially also failed to make one of it's
2700         parent_class pointers static, causing overwriting of GtkLabel's
2701         parent_class pointer in pixbuf_style_class_init().
2702         (Will commit the fix to the pixbuf-engine too).
2703
2704 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2705
2706         * gdk/gdkwindow.h:
2707         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2708         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2709         gdk_window_set_icon_list for net wmspec functionality.
2710
2711         * gdk/x11/gdkwindow-x11.c:
2712         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2713         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2714         gdk_window_set_icon_list.
2715         Added gdk_wmspec_change_state helper function and used it in the code.
2716         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2717
2718         * gtk/gtkdialog.c (gtk_dialog_init):
2719         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2720
2721         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2722         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2723
2724         * gtk/gtkwindow.c:
2725         new function gtk_window_set_type_hint.
2726         On realize, set type hint and modal hint.
2727
2728         * gtk/gtkwindow.h:
2729         Added type_hint field and gtk_window_set_type_hint.
2730
2731 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2732
2733         * gtk/gtklabel.[ch]:
2734         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2735         New function gtk_label_get_accel_keyval () to get the underline accelerator
2736         of the label. Setting the label pattern overrides other attributes.
2737
2738 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2739
2740         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2741         Added missing initializers to gtk_rc_style_init().
2742
2743 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2744
2745         * gtk/gtktextview.c: fixed bug #51097 about setting 
2746         gtk_text_view_set_border_window_size() if the widget is 
2747         already realized.
2748
2749 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2750
2751         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2752
2753         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2754         comment. Won't do to have duplicated doc comments between
2755         the platform subdirs.
2756
2757 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2758
2759         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2760           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2761
2762         Detectable auto-repeat - make a repeating key generate
2763         press/press/press/release instead of press/release pairs.
2764
2765         If we have Xkb and XkbSetDectableAutoRepeat supports
2766         that, we do it that way. Otherwise, when we get
2767         a release event, we check ahead with XPending to see
2768         if the next key is a KeyPress with the same keycode
2769         and timestamp. (Not 100% reliable, but pretty close.)
2770           
2771 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2772         
2773         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2774         special key-press grab handling for widgets within
2775         GtkWindows. Otherwise, fall through to normal case.
2776  
2777         This prevents key events being sent twice to GtkInvisible
2778         widgets, which can cause all sorts of mischief.
2779  
2780 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2781  
2782         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2783         widget is in effect, give the grab widget a first
2784         crack at KEY_PRESS/RELEASE events. (#424)
2785  
2786 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2787
2788         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2789         to extend the selection. (Roughly based on patch
2790         from Jay Cox, #50939)
2791
2792         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2793         to properly handle previous GDK_BUTTON_PRESS. 
2794         (Patch from Jay Cox, #50938)
2795
2796         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2797         '\0' back along with the deleted text. (#51148)
2798
2799 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2800
2801         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2802         the group when extracting it from the X keyboard event.
2803
2804         * modules/input/Makefile.am modules/input/imipa.c: 
2805         Simple module for entering IPA. (Do we need a 
2806         gtk-stupid-input-tricks CVS module?)
2807
2808 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2809
2810         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2811         const.
2812
2813         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2814
2815         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2816         is no focus widget for the dialog currently, grab the focus as well
2817         as the default.
2818
2819         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2820         the action area's children to iterate through, not the
2821         dialog's children.
2822
2823 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2824
2825         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2826         Add plug-socket tests. (Won't work worth a darn until I commit
2827         the rest of the plug-socket changes, but no reason these
2828         can't go into CVS now.)
2829
2830 2001-03-02  Havoc Pennington  <hp@redhat.com>
2831
2832         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2833         _gdk_region_get_xrectangles()
2834
2835         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2836
2837         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2838
2839         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2840         function, contributed by Ron Steinke    
2841
2842         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2843         gdk_net_wm_supports
2844
2845         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2846         New function, contributed by Ron Steinke
2847
2848         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2849         used to line up the text in the entry when using the entry for
2850         editable sheet cell hacks
2851
2852         * gtk/testgtk.c (create_entry): test the activate_default setting
2853         on GtkEntry
2854
2855         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2856         cause the entry to activate the default button for a dialog when 
2857         activated
2858         (gtk_entry_get_activates_default): new function
2859
2860 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2861
2862         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2863         Hwang to move call to sync_selection() up a few lines
2864         to before the row list is modified, to fix crash when
2865         removing rows in the undo_selection list.
2866
2867         (Test case provided by Daniel Elstner:
2868
2869         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2870
2871 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2872
2873         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2874         of tree->root_tree in parent_set rather than _map(), 
2875         fixing #50892 in a bit better manner.
2876
2877 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2878
2879         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2880
2881 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2882
2883         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2884         gtk_default_draw_shadow.
2885
2886 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2887
2888         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2889         warning, make warnings more verbose, treat a error
2890         in shmat as permanent, and don't try again.
2891         (#51163, Ed Randall.)
2892
2893 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2894
2895         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2896         delay for the first click before starting to scroll.
2897         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2898
2899         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2900         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2901
2902 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2903
2904         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2905         cleanup to remove some references to unused
2906         ->xoffset, ->yoffset.
2907
2908 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2909
2910         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2911         mask. (#51039, fix from Martin Maierhofer)
2912
2913 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2914
2915         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2916         for unshifted + and shifted = for non-us keyboards.
2917         Make <Control>+ and <Control>- work as well as 
2918         <Control>KP_Plus, <Control>KP_Minus for recursive
2919         open/close.  (#2682, René Seindal)
2920
2921 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2922
2923         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2924         the active menu item before deactivating the menu,
2925         so gtk_menu_popdown doesn't change the history. (#50964)
2926         
2927 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2928
2929         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2930         draw lines with text_gc rather than black_gc.
2931         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2932
2933 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2934
2935         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2936         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2937         less interrelated then it was, but it still requires the
2938         GtkTreeView to map it.
2939
2940         * test/testtreecolumn.c: Now I can add a column to one view,
2941         remove it, add it to the another view, remove it, then re-add it
2942         to the first.  Nifty.
2943
2944 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2945
2946         * docs/tutorial/gtk-tut.sgml: Minor corrections
2947
2948 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2949
2950         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2951         GtkRowReference.
2952
2953 2001-02-28  Havoc Pennington  <hp@redhat.com>
2954
2955         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2956         draw_default
2957         (gtk_widget_draw_focus): remove this function; we could instead
2958         make it just gtk_widget_draw(), but in most cases I think the
2959         result would be broken user code, so think it's better to have
2960         that code not compile and get fixed
2961         (gtk_widget_draw_default): ditto
2962
2963         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2964         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2965         
2966         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2967         widgets lose/get the default, instead of calling draw_default
2968         
2969         * docs/Changes-2.0.txt: note about all this
2970
2971         Then fixed every widget in GTK, I won't list all the filenames.
2972
2973 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2974
2975         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2976         _gtk_tree_row_reference_deleted.
2977         (inserted_callback): Proxy out to
2978         _gtk_tree_row_reference_inserted.
2979         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2980         get around signal emission ordering problem.
2981
2982         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2983         fix to work with SINGLE 
2984         (_gtk_tree_selection_internal_select_node): Major sanitization on
2985         selections.  SINGLE now seems to work.
2986
2987         * tests/Makefile.am: add testtreecolumn.c:
2988
2989         * tests/testtreecolumn.c: New test.  Mostly points out selection
2990         bugs currently, but will test columns later.
2991
2992         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2993         selection bug.  I hate touching this code -- it's scary.
2994
2995 2001-02-26  Havoc Pennington  <hp@redhat.com>
2996
2997         * gtk/testgtk.c: test the window state stuff
2998
2999         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
3000         window come to the user's attention as if it were just created
3001         (gtk_window_iconify): new function
3002         (gtk_window_deiconify): new function
3003         (gtk_window_stick): new function
3004         (gtk_window_unstick): new function
3005         (gtk_window_maximize): new function
3006         (gtk_window_unmaximize): new function
3007
3008         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
3009
3010         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
3011
3012         * gdk/x11/gdkevents-x11.c: create window state events when
3013         appropriate
3014         (gdk_wmspec_supported): new function
3015
3016         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
3017         iconification before showing the window
3018         (gdk_window_deiconify): new function
3019         (gdk_window_stick): new function
3020         (gdk_window_unstick): new function
3021         (gdk_window_maximize): new function
3022         (gdk_window_unmaximize): new function
3023
3024         * gdk/gdkwindow.c: store the window state in the window; 
3025         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
3026         window->mapped.
3027         (gdk_window_get_state): return the current window state
3028
3029         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
3030         (gdk_event_get_state): handle GDK_WINDOW_STATE
3031         (gdk_synthesize_window_state): function to create the window state
3032         events
3033
3034         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
3035         event, for changes to "window state" such as maximized, sticky, 
3036         etc.
3037         
3038         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
3039         focuses a window
3040
3041         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
3042         finds out if we support a given WM spec hint
3043
3044 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
3045
3046         * docs/faq/gtk-faq.sgml: New question re memory leaks.
3047
3048 2001-02-25  Hans Breuer  <hans@breuer.org>
3049
3050         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
3051         cause we want to loose those prototypes only in the latter case
3052
3053         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
3054         GdkPixmapImplWin32 because it itsn't derived from it. Use the
3055         impl member variable instead
3056
3057         * gtk/gtk.def : updated
3058
3059         * gtk/gtklist.c : 
3060         * gtk/gtkmenus.c : include <string.h> for memset ()
3061
3062         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
3063         for everthing built here, but for gtk-x.x.dll only. This solves
3064         problem of indifferent gtk type definitions
3065
3066 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
3067
3068         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
3069
3070 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
3071
3072         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
3073         column that is exposed.
3074
3075         (_gtk_tree_view_update_size): Changed name from set_size, and
3076         changed function to do more work, and not force people calling it
3077         to figure out the size.  Simplifies a lot of code elsewhere.
3078
3079 2001-02-23  Alexander Larsson  <alexl@redhat.com>
3080
3081         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
3082         return solid masks for xpms that have no transparent color.
3083         This makes the ..._create_from_xpm... API backwards
3084         compatible.
3085
3086 2001-02-23  Tor Lillqvist  <tml@iki.fi>
3087
3088         * README.win32: Update. Mention the gtk-1-3-win32-production
3089         branch.
3090
3091         * gdk/win32/bdfcursor.c: New file. A program that generates
3092         xcursors.h. Thanks to Stefan Ondrejicka.
3093
3094         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
3095         compact format.
3096
3097         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
3098
3099         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
3100         function, uses xcursors.h.
3101         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
3102         cursor from inline data instead of using LoadCursor() to generate
3103         it from a resource.
3104
3105         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
3106         event, must check the Windows message for mouse button state, as
3107         the GDK event state might not have been built if it is
3108         undelivered. Remove one goto.
3109
3110         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
3111         SetCursor() if the current cursor as returned by GetCursor() is
3112         the window's previous cursor. The ChildWindowFromPoint() test
3113         apparently didn't work correctly.
3114
3115         * gdk/win32/rc/*.cur: Remove.
3116
3117         * gdk/win32/rc/gdk.rc.in: Remove cursors.
3118
3119         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
3120
3121         * gtk/makefile.{mingw,msc}.in: Updates.
3122
3123 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
3124
3125         * gtk/gtktreemodel.h: add functions for signal emission.
3126
3127         * gtk/gtktreestore.c: move to use above functions instead of
3128         g_signal_emit.
3129
3130         * gtk/gtkliststore.c: ditto
3131
3132 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
3133
3134         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
3135         GObject instead of GtkObject.
3136
3137         * gtk/gtkliststore.c: ditto.
3138
3139         * gtk/gtktreemodelsort.c: ditto.
3140
3141         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
3142         GtkTreeModelIface, instead of in each model.
3143
3144 2001-02-21  Havoc Pennington  <hp@redhat.com>
3145
3146         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
3147         unbreak this function
3148
3149         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
3150         properties
3151
3152         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
3153         properties
3154
3155         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
3156         properties
3157
3158         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
3159         mean unset the max length
3160
3161 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
3162
3163         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
3164         Changed name to be set_cell_data_func to make it clear what
3165         the functino does.  Close bug #51069.
3166
3167 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
3168
3169         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
3170         have memory actually freed.  Keeps box running longer.
3171
3172 2001-02-21  Alexander Larsson  <alexl@redhat.com>
3173         
3174         * gtk/gtkseparatormenuitem.[ch]:
3175         Added new menu separator item. The drawing and size handling
3176         is still done in GtkMenuItem, but the API is a bit more sane.
3177         
3178         * gtk/Makefile.am:
3179         Add gtkseparatormenuitem.[ch].
3180
3181         * gtk/gtk.h:
3182         Add gtkseparatormenuitem.h.
3183         
3184         * gtk/gtkentry.c:
3185         * gtk/gtkmenufactory.c:
3186         * gtk/gtktextview.c:
3187         Use the new API for menu separators.
3188         
3189         * demos/gtk-demo/menus.c (create_menu):
3190         Add some GtkSeparatorMenuItem demo code.
3191
3192 2001-02-20  Havoc Pennington  <hp@redhat.com>
3193
3194         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
3195         Lee Mallabone
3196
3197         * gtk/gtkarrow.c: Convert to new property API, patch from 
3198         Lee Mallabone
3199
3200 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
3201
3202         * tests/testtreeview.c (toggled_callback): fix to reflect change
3203         in GtkTreeModelStore.
3204
3205 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
3206
3207         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
3208         function to create an icon set from a pixbuf.
3209
3210 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3211
3212         * gtk/gtkcellrenderertext.[ch]:
3213         Add a "markup" property.
3214
3215         * gtk/treestoretest.c:
3216         Use the markup property, remove some leftover stuff from
3217         GtkTreeModelMapping.
3218
3219 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3220
3221         * gtk/gtklabel.c (gtk_label_set_selectable):
3222         Queue a redraw if the selectable setting was changed.
3223
3224 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3225
3226         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3227         Actually copy the whole gc, not just the public parts.
3228         
3229         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3230         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
3231         labels.
3232
3233 2001-02-19  Havoc Pennington  <hp@pobox.com>
3234
3235         * gdk/gdkwindow.c: docs
3236
3237         * gdk/gdkrgb.c: docs
3238
3239         * gdk/gdkregion-generic.c: docs
3240
3241         * gdk/gdkgc.c (gdk_gc_set_values): docs
3242
3243         * gdk/gdkdraw.c: docs
3244
3245         * gdk/gdkdrawable.h: deprecate drawable get/set data
3246
3247 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
3248
3249         * demos/gtk-demo/dialog.c: Add simple new demo.
3250
3251 2001-02-19  Havoc Pennington  <hp@redhat.com>
3252
3253         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
3254         insert_child_anchor signal, bug #50245
3255
3256         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
3257         from create_child_anchor, so the anchor is passed in
3258
3259         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
3260         (_gtk_widget_segment_new): have the child anchor object passed in, 
3261         instead of creating it.
3262
3263         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3264         to gtk_text_buffer_get_modified
3265
3266 2001-02-19  Havoc Pennington  <hp@redhat.com>
3267
3268         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3269         changed GLib without fixing GTK
3270
3271         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3272         functions to have an underscore in front. Most of them should 
3273         probably just go away, but for starters don't export them.
3274         Bug #50482
3275
3276 2001-02-19  Havoc Pennington  <hp@redhat.com>
3277
3278         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3279         excluded by default
3280
3281         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3282         clean up the old code a bit
3283
3284         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3285         inconsistent state
3286
3287         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3288         draw inconsistent state
3289
3290         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3291         (create_menu): add inconsistent test
3292
3293         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3294         new function
3295         (gtk_check_menu_item_get_inconsistent): new function
3296         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3297         state (using etched in for now)
3298
3299         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3300         draw inconsistent state
3301
3302         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3303         function, used when the user has selected a range of stuff in
3304         different states
3305         (gtk_toggle_button_get_inconsistent): accessor for that
3306         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3307         don't know what else to do)
3308
3309 2001-02-19  Hans Breuer <hans@breuer.org>
3310
3311         * gtk/gtk.def : updated exported symbols
3312
3313         * gtk/makefile.msc.in : updated
3314
3315         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3316         a colormap, when invoked from testgtk::entry. I'm not sure where
3317         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3318         avoids immediate crashing ...
3319
3320         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3321         any objections ?
3322
3323         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3324         0 parameter. At least msvc doesn't like macros with var args. 
3325         I simply removed the extra 0, was it a feature or a typo ?
3326
3327         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3328         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3329         because the value assignment to the internal struct wasn't working.
3330         I'm not absolutely sure. The problem could have been resolved by
3331         changing the "func" declartion in the struct, but was the pointer
3332         to the function pointer intended ?
3333
3334         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3335
3336         * gdk/gdk.def : updated exported symbols
3337
3338         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3339         only use SetDIBitsToDevice if there is a palette at the drawable
3340         and the image is GDK_VISUAL_PSEUDO_COLOR
3341
3342         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3343
3344         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3345
3346         * gdk/*/makefile.msc : updated
3347
3348 2001-02-19  Havoc Pennington  <hp@redhat.com>
3349
3350         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3351         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3352
3353         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3354         (gdk_key_repeat_restore): nuke
3355
3356         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3357         (gdk_init_check): no atexit func
3358
3359         * gdk/gdkrgb.h: mark some stuff deprecated
3360
3361         * gdk/gdkcolor.h: mark some stuff deprecated
3362         
3363         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3364
3365         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3366
3367 2001-02-16  Havoc Pennington  <hp@redhat.com>
3368
3369         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3370         scroll steps.
3371
3372         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3373         steps, and add Ctrl-arrow shortcuts for paging visually as with
3374         HScale, since Page Up and Page Down move logically.
3375
3376         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3377         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3378         
3379         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3380         steps
3381         (gtk_range_scroll): handle the visual steps
3382
3383         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3384         scroll steps
3385
3386         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3387         steps, not the logical ones.
3388
3389         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3390         (scroll_vertical): handle up/down steps
3391
3392 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3393
3394         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3395         Copy data and free data with free().
3396
3397         * gdk-pixbuf/gdk-pixbuf.c:
3398         * gdk-pixbuf/io-jpeg.c:
3399         * gdk-pixbuf/io-png.c:
3400         Use g_try_malloc/g_free instead malloc/free.
3401         
3402         * gdk-pixbuf/test-gdk-pixbuf.c:
3403         Must... initialize... gobject...
3404         
3405         * gdk-pixbuf/pixops/timescale.c:
3406         * gtk/gtkcalendar.c:
3407         Use g_malloc instead of malloc.
3408         
3409 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3410
3411         * gtk/testgtkrc:
3412         Comment out property assignments, these don't work yet.
3413
3414 2001-02-17  Havoc Pennington  <hp@pobox.com>
3415
3416         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3417         bit.
3418
3419 2001-02-17  Havoc Pennington  <hp@pobox.com>
3420
3421         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3422         shadowed variables that had broken size request in some cases,
3423         leading to bogus tooltips (#50996)
3424
3425 2001-02-06  Jon K Hellan  <hellan@acm.org>
3426
3427         Implement fast browsing of tooltips, bug #50619
3428         
3429         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3430         and last_popdown
3431         
3432         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3433         use_sticky_delay and last_popdown.
3434         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3435         time of popdown.
3436         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3437         is NULL.
3438         (gtk_tooltips_recently_shown): New static function.  Return true
3439         if < sticky_delay has elapsed since last popdown.
3440         (gtk_tooltips_event_handler): Display window after sticky_delay
3441         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3442         since last popdown.
3443         
3444 2001-02-17  Havoc Pennington  <hp@pobox.com>
3445
3446         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3447         instead of (). #6394
3448
3449         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3450         G_CONST_RETURN, make it return by reference, #50473
3451         
3452 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3453
3454         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3455         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3456         setup fields contain garbage (e.g. subwindow, breaking
3457         gdk_drawable_ref() upon event copy).
3458         (gtk_menu_stop_navigating_submenu_cb): same here.
3459
3460         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3461         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3462         * gtk/gtkclist.c (vertical_timeout): 
3463         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3464         default-zero-intialization for unions to memset(,0,), as unions are
3465         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3466         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3467
3468         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3469         g_closure_sink() warning.
3470
3471         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3472         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3473         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3474         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3475         
3476 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3477
3478         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3479         gtk_*_store_get, and moved to GtkTreeModel.
3480
3481         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3482
3483         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3484
3485         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3486
3487         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3488         set the func.
3489
3490         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3491         freeze/thaw notify between setting all the properties for a cell.
3492
3493         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3494
3495 2001-02-15  Havoc Pennington  <hp@redhat.com>
3496
3497         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3498         the X coordinates so they're with respect to the line, rather than 
3499         with respect to the layout.
3500
3501         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3502         Mallabone
3503
3504         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3505         and inverted test
3506
3507         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3508         #50806
3509
3510         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3511
3512         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3513         gtk_text_iter_is_end
3514
3515         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3516         rename gtk_text_buffer_get_end_iter
3517
3518         * gtk/testgtk.c (create_labels): Add test for selectable
3519
3520         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3521         the selection stuff. This code is kind of broken since it doesn't 
3522         use the theme engine.
3523
3524         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3525         fix infinite loop and y offset problem
3526         (gdk_draw_layout_line_with_colors): fix foreground color handling
3527
3528         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3529         that makes the label selectable.
3530         
3531         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3532         layout when the style is set, since fonts etc. could have changed.      
3533
3534 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3535
3536         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3537
3538         * gtk/gtktreemodelsimple.[ch]: removed.
3539
3540 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3541
3542         * gtk/gtktreemodelmapping.[ch]:
3543         New files. Implement GtkTreeModelMapping.
3544         
3545         * gtk/Makefile.am:
3546         Add gtktreemodelmapping.[ch].
3547         
3548         * gtk/gtk.h:
3549         Add gtktreemodelmapping.h
3550
3551         * gtk/treestoretest.c:
3552         Test the GtkTreeModelMapping
3553
3554 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3555
3556         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3557         have a demo, we might as well pass in real values.  Thanks to
3558         clahey for pointing this out.
3559
3560 2001-02-14  Havoc Pennington  <hp@pobox.com>
3561
3562         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3563         "static" to a private function
3564         (gtk_image_menu_item_class_init): remove destroy handler,
3565         add "image" object property
3566
3567 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3568
3569         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3570         Add a shortcut if the window and the current clip_region doesn't
3571         overlap. This is needed when there are a lot of windows in a
3572         window. The layout test in testgtk is a good test.
3573
3574         * gdk/linux-fb/gdkwindow-fb.c:
3575         Whitespace fix.
3576
3577 2001-02-13  Sven Neumann  <sven@convergence.de>
3578
3579         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3580
3581 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3582
3583         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3584         Don't reference last_cursor if it is null. Fixes crash when rotating
3585         the screen before having moved the mouse.
3586
3587         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3588
3589         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3590
3591         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3592         when using 90 or 270 degrees rotation.
3593
3594 2001-02-12  Havoc Pennington  <hp@pobox.com>
3595
3596         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3597         it always set the foreground, even if we were only using
3598         a stipple.
3599         (gdk_draw_layout_line_with_colors): new function, allow
3600         override colors
3601         (gdk_draw_layout_with_colors): new function, allow override
3602         colors
3603         (gdk_pango_layout_line_get_clip_region): function to get the clip
3604         region for a logical text range
3605         (gdk_pango_layout_get_clip_region): get the clip region for a
3606         logical text range
3607
3608         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3609         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3610         the right number of arguments.
3611
3612         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3613         enhance the function to check that node data corresponds to a 
3614         view still belonging to the tree.
3615
3616         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3617         GtkTreePath
3618         (gtk_tree_view_inserted): ditto
3619         (gtk_tree_view_child_toggled): ditto
3620
3621         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3622         simplify this code.
3623
3624         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3625         a PangoAttrList
3626
3627         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3628
3629         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3630
3631         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3632         size in the size request 
3633         (gtk_menu_bar_size_allocate): consider toggle size here
3634
3635         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3636         that displays a widget in the toggle slot
3637
3638         * gtk/testgtk.c: test GtkImageMenuItem
3639
3640         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3641         
3642         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3643         request and allocation
3644
3645         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3646
3647         * gtk/gtkcheckmenuitem.c
3648         (gtk_check_menu_item_toggle_size_request): ditto
3649         
3650 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3651
3652         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3653         reference.
3654
3655         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3656         and refuse to initialize GTK+ if they fail.
3657
3658 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3659
3660         * configure.in: Add check for gtk-doc version.
3661
3662 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3663
3664         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3665         where the xpad/ypad was only being used on one side!
3666
3667 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3668
3669         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3670         function, copied from X11 version.
3671
3672         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3673         DestroyCursor failures. The reason for the problem (despite the
3674         inconsistent messages from GetLastError()) was that
3675         DestroyCursor() cannot be called while a cursor is set in a
3676         window. Set the new cursor first and then destroy the old one.
3677         Thanks to jpe@archaeopteryx.com.
3678
3679         * gdk/win32/gdkcc-win32.c: Remove.
3680
3681         * gdk/win32/Makefile.am: Remove from here, too.
3682         
3683         * gdk/gdk.def
3684         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3685
3686         * gtk/gtk.def
3687         * gtk/makefile.mingw.in: Updates.
3688
3689 2001-02-08  Havoc Pennington  <hp@redhat.com>
3690
3691         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3692         add a widget to a bin that already has a child.
3693
3694         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3695
3696         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3697         
3698         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3699
3700         * gdk/gdk.h: remove gdkcc.h
3701
3702         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3703
3704         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3705         GdkPixbuf, since the previous implementation was GdkColorContext
3706         dependent.
3707
3708         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3709         
3710 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3711
3712         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3713         a sane value!
3714
3715 2001-02-08  Havoc Pennington  <hp@redhat.com>
3716
3717         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3718         lighten them.
3719
3720 2001-02-08  Havoc Pennington  <hp@redhat.com>
3721
3722         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3723         validation idle
3724
3725         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3726         cell renderer
3727
3728         * demos/pixbuf-demo.c (timeout): remove deprecated
3729         gtk_widget_draw
3730
3731         * demos/testpixbuf-save.c (main): remove deprecated
3732         gtk_drawing_area_size
3733
3734         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3735         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3736         at the start of the allocation.
3737         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3738         unsetup or NULL model.
3739
3740         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3741         even/odd/sorted cells in the tree view.
3742
3743         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3744         bugfixes
3745
3746         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3747         backgrounds with draw_flat_box using different detail for even/odd
3748         rows.
3749
3750         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3751         row, so we can draw the alternating colors thing
3752
3753         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3754         property from a synonym property, notify for the synonym.
3755         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3756         (gtk_text_tag_get_property): Always return the font, even if
3757         all its fields aren't set
3758
3759         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3760         store the attr list; it leaves us with no way to change attributes
3761         in _render according to the render flags, and no way to implement
3762         get_property. Instead store all the specific text attributes. 
3763         Separate whether an attribute is enabled from its value. Sync all
3764         properties with GtkTextTag, make them all consistent, etc.
3765
3766         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3767         renderers can highlight the sort row/column     
3768
3769         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3770         accessor functions to get values; this has the side effect of
3771         showing up which accessor functions were missing. Added those.
3772
3773         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3774         set_alignment, to be consistent with GtkLabel, GtkMisc
3775
3776         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3777         arrow.
3778
3779         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3780
3781         * gtk/gtktreesortable.h: updates in here
3782
3783 2001-02-07  Sven Neumann  <sven@convergence.de>
3784
3785         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3786         pango dimensions after painting the background. We used to draw
3787         gigantic flat boxes here.
3788
3789 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3790
3791         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3792         error introduced with earlier commit) (pointed out by
3793         Ollie Lho)
3794
3795 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3796
3797         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3798         which are no longer necessary.
3799
3800 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3801
3802         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3803
3804 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3805
3806         * gdk/gdk.def
3807         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3808         Provide dummy implementations.
3809
3810 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3811
3812         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3813
3814         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3815         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3816         deprecated this function.
3817
3818         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3819         argument.
3820
3821 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3822
3823         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3824
3825 2001-02-03  Havoc Pennington  <hp@pobox.com>
3826
3827         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3828         Mikael Hermansson with patch from Mikael (if there was a toggle
3829         start one after the first character in the range, this function
3830         was broken). Bug #50380
3831
3832 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3833
3834         * configure.in: Remove confusing comment about X11.
3835
3836 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3837
3838         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3839         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3840         
3841 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3842
3843         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3844         it breaks things on BSD. If you want to compile GTK+ with
3845         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3846         when configuring, since GTK+ simply can't be "pure ANSI" 
3847         in the header files it uses. (#8170, Greg Hudson)
3848
3849 2001-02-02  Havoc Pennington  <hp@redhat.com>
3850
3851         * gtk/gtkwindow.c: docs
3852
3853         * gtk/gtkwidget.c: docs
3854         (gtk_widget_set_colormap): add a reference to the colormap
3855         (gtk_widget_get_default_colormap): add a reference to the colormap
3856
3857         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3858
3859         * gtk/gtktextiter.c: docs
3860
3861         * gtk/gtkmain.c (gtk_propagate_event): docs
3862
3863         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3864         (gtk_paned_set_position): docs
3865
3866         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3867         sort interface, no implementation yet.
3868
3869         * demos/testpixbuf.c (new_testrgb_window): replace
3870         gtk_drawing_area_size() with gtk_widget_set_usize()
3871
3872         * demos/testpixbuf-drawable.c (main): ditto
3873         
3874         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3875
3876         * gtk/gtktextbuffer.c: docs
3877
3878         * gtk/gtkstock.c: docs
3879
3880         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3881
3882         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3883
3884         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3885         
3886         * gtk/gtkimage.c: add some docs in here
3887         (gtk_image_size_request): change name of
3888         gtk_widget_render_stock_icon
3889         (gtk_image_get_icon_set): don't dup returned string
3890         (gtk_image_get_icon_set): don't dup returned string
3891
3892         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3893         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3894         and gtkiconfactory.h functions
3895
3896         * gtk/gtkiconfactory.c: add some docs in here
3897
3898         * gtk/gtkmain.c (gtk_get_default_language): document
3899         (gtk_get_current_event): document
3900         (gtk_get_current_event_state): document
3901         (gtk_get_event_widget): document
3902
3903         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3904
3905         * gtk/gtkcontainer.c: Add some documentation
3906         (gtk_container_add): give a more explanatory warning on adding an
3907         already-parented widget, this is kind of a FAQ and also a common
3908         typo that's easier to debug with a nice warning 
3909
3910         * gtk/gtkcellrenderertoggle.c
3911         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3912         adding this, it's useless
3913         (gtk_cell_renderer_toggle_set_active): remove
3914         (gtk_cell_renderer_toggle_get_radio): add
3915
3916         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3917         the NULL cell renderer, that doesn't make any sense to me. 
3918
3919         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3920         demo code should never use deprecated features.
3921
3922         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3923         code should never use deprecated features.
3924
3925         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3926         gtk_widget_queue_clear_area deprecated
3927
3928         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3929         deprecated
3930
3931         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3932
3933         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3934         a GdkImage deprecated, replaced by new consistently-named
3935         functions       
3936
3937         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3938
3939         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3940
3941         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3942         deprecated
3943
3944         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3945         so it won't appear in docs and confuse people.
3946
3947         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3948
3949         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3950         macros deprecated. (can't mark the type itself deprecated, since
3951         GtkProgressBar is not deprecated and we need the type decl to use
3952         GtkProgressBar)
3953
3954         * gtk/gtkpixmap.h: Mark deprecated
3955
3956         * gtk/gtkoldeditable.h: Mark deprecated
3957
3958         * gtk/gtklist.h: Mark deprecated
3959
3960         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3961         for anything anymore.
3962
3963         * gtk/gtkctree.h: Mark deprecated
3964
3965         * gtk/gtkclist.h: Mark deprecated
3966
3967         * gtk/gtkpreview.h: Mark deprecated
3968
3969         * gtk/gtkpacker.h: Mark deprecated
3970
3971         * gtk/gtktipsquery.h: Mark deprecated
3972
3973         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3974
3975         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3976
3977         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3978
3979         * gtk/gtkruler.h: Add comment that it will move out of GTK
3980
3981         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3982
3983         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3984
3985 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3986
3987         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3988         gdk_colormap_sync private since it was never exported
3989         in a header file.
3990
3991         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3992         colormap->colors[] for StaticGray, StaticColor colormaps.
3993
3994         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3995         was being used as if it was image->bits_per_pixel.
3996
3997         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3998         for the image in the GdkImage structure since it isn't
3999         reconstructable, and we need it to handle packed types
4000
4001         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
4002         the assumption that on Win32 image->bits_per_pixel == image->depth,
4003         always.
4004
4005         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
4006
4007         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
4008         warning message if no converter can be found. 
4009
4010 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
4011
4012         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
4013         chars to isupper() / tolower(). (#567)
4014
4015         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
4016         to clear up 64-bit warnings. (#567)
4017
4018 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
4019
4020         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
4021         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
4022
4023         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
4024         since some people set $(libdir) separately. (#1290, David Kaelbling)
4025
4026 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
4029         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
4030         MAXPATHLEN, but the code here depends on a fixed value.)
4031         (#4524)
4032
4033 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
4034
4035         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
4036         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
4037
4038 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
4039
4040         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
4041         viewable there is no way that moving the node will cause the 
4042         focus row to become not viewable, so omit check on the visibility
4043         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
4044
4045 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
4046
4047         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
4048         selection before inserting new text.
4049
4050 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
4051
4052         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
4053         Make the sensitivity of the reparented child track that of
4054         the original parent menu item. (#34218, David Hodson)
4055
4056         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
4057         the case where the current item is destroyed properly.
4058
4059         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
4060         some edge cases with child-less menuitems.
4061         
4062 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
4063
4064         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
4065         key pop down window. (#12074, Jon K Hellan)
4066
4067 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
4068
4069         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
4070         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
4071         The solution here isn't perfect - you get an extraneous
4072         emission of "toggle", which could conceivably confuse an app,
4073         but better than the current situation. LXR search seems to
4074         indicate that no apps in GNOME CVS connect to "toggle".
4075
4076 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
4077
4078         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
4079         gtk_public_h_sources to directly here to avoid warning when
4080         building srcdir != builddir. (#9656)
4081
4082 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
4083
4084         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
4085         handlers in gtkrange.c return the proper values (TRUE == handled)
4086         (#10316).
4087
4088         This is just the tip of the iceberg, but gtkrange.c is the
4089         most common place where the propagation is problematical,
4090         and also a place where it is almost certainly safe to change
4091         this in the stable branch.
4092
4093         (You don't want right click popups on a range control or anything...)
4094
4095 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
4096
4097         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
4098         area on focus out, even if a background pixmap isn't set.
4099         (#13941)
4100         
4101 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
4102
4103         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
4104         to deal with setting the shape properly when scrolling arrows are
4105         turned on, but not visible because there is sufficient space.
4106         (#13432)
4107
4108 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
4109
4110         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
4111         items with submenus, destroy the item along with the submenu.
4112         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
4113         properly.
4114
4115         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
4116         later.
4117
4118 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
4119
4120         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
4121         the focus widget sometimes wasn't drawn with the default if there
4122         was no default widget.
4123
4124         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
4125         unreference pixmaps. 
4126
4127         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
4128         for some extra safety.
4129
4130 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
4131
4132         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
4133         the text of a cell to the old pointer value better, by
4134         copying the new text before freeing the old text. Some code
4135         cleanup. (#8079, Karl Nelson)
4136
4137 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
4138
4139         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
4140         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
4141
4142 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
4143
4144         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
4145         item from a menu, check to see if it matches 
4146         menu->old_active_menu_item, and if so, unref and clear
4147         old_active_menu_item (Patch from Pavel Cisler)
4148
4149         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
4150         menu_shell->active_menu_item, if it is the child being
4151         removed. (Patch based on that of Gene Ragan, #50337)
4152
4153 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
4154
4155         * gdk/linux-fb/gdkselection-fb.c: 
4156         * gdk/linux-fb/gdkcolor-fb.c: 
4157         * gdk/linux-fb/gdkdrawable-fb2.c: 
4158         * gdk/linux-fb/gdkfont-fb.c: 
4159         * gdk/linux-fb/gdkim-fb.c: 
4160         * gdk/linux-fb/gdkinput.c: 
4161         * gdk/linux-fb/gdkkeyboard-fb.c: 
4162         * gdk/linux-fb/gdkmain-fb.c: 
4163         * gdk/linux-fb/gdkrender-fb.c: 
4164         A bunch of whitespace cleanup.
4165         
4166 2001-01-30  Havoc Pennington  <hp@pobox.com>
4167
4168         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
4169         #ifdef GTK_ENABLE_BROKEN.
4170
4171         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
4172         GTK_ENABLE_BROKEN just before including the broken headers.
4173         
4174         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
4175         deprecated types registered.
4176
4177         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
4178         we have to test the broken stuff.
4179
4180         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
4181         
4182 2001-01-30  Havoc Pennington  <hp@redhat.com>
4183
4184         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
4185         here where prev pointer was set to the wrong thing
4186
4187         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
4188         (gtk_tree_path_is_descendant): new function
4189
4190         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
4191         cached length
4192         (gtk_list_store_get_iter): don't modify iter if we can't get the
4193         path.
4194
4195         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
4196         
4197         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
4198         GtkTreeDragDest
4199
4200         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
4201         was causing segfault
4202
4203         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
4204         pointer to NULL
4205
4206         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
4207
4208         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
4209         on returning FALSE
4210         (gtk_list_store_iter_children): ditto
4211         (gtk_list_store_iter_nth_child): ditto
4212         (gtk_list_store_iter_nth_child): ditto
4213         (gtk_list_store_iter_parent): ditto
4214
4215         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
4216         on iter->user_data != NULL instead of silently accepting it.
4217         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
4218         we are returning TRUE.
4219         (gtk_tree_store_iter_children): ditto
4220         (gtk_tree_store_iter_nth_child): ditto
4221         (gtk_tree_store_iter_parent): ditto
4222         (gtk_tree_store_insert): remove handling of parent->user_data ==
4223         NULL, replace with parent == NULL       
4224
4225         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
4226         and a comment explaining things
4227
4228         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
4229         interface support to GtkTreeStore.
4230
4231         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
4232         FALSE if no prev, fix
4233
4234         * gtk/gtktreeview.c (set_source_row): use a row reference
4235         (set_dest_row): use a row reference
4236
4237 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
4238
4239         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
4240         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
4241         (gtk_tree_selection_select_iter): The same as above.
4242
4243 2001-01-26  Havoc Pennington  <hp@redhat.com>
4244
4245         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
4246         which holds a handle to a specific row (particular set of values
4247         in the model, i.e. pointer-identity row).
4248
4249         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
4250         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
4251         Still need to use it for the src/dest row saved on the drag context.
4252
4253 2001-01-26  Havoc Pennington  <hp@redhat.com>
4254
4255         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
4256
4257         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
4258         not offset by TREE_VIEW_HEADER_HEIGHT
4259         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
4260         TREE_VIEW_HEADER_HEIGHT
4261
4262         * configure.in (included_loaders): for me, --with-included-loaders
4263         generates the error "the specified loader yes does not exist",
4264         i.e. the arg defaults to "yes", so change test for value ""
4265         to test for value "yes", and include all loaders in that case.
4266
4267         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4268
4269         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4270         handle TREE_VIEW_VERTICAL_SEPARATOR
4271         (gtk_tree_view_bin_expose): fix to consider the row offset as
4272         pointing halfway into vertical separator.       
4273         (gtk_tree_view_draw_node_focus_rect): ditto
4274
4275         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4276         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4277         (TRUE) to be called.
4278
4279         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4280         debug mode where the invalid region is colored in on invalidate,
4281         so you can see the flicker and know whether your redraw code is 
4282         doing a good job.
4283
4284         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4285         tree window coordinates (clip rect is in tree window coords)
4286
4287         * gtk/Makefile.am: add gtktreednd.[hc]
4288
4289         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4290
4291         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4292         drag-and-drop data operations on a model (so we can set up tree
4293         drag-and-drop automatically)
4294
4295         * gtk/testgtk.c: Add a window to change sensitivity in the
4296         GtkLabel test; add a way to change the entry frame in GtkEntry
4297         test
4298
4299         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4300         (gtk_entry_get_has_frame): new functions to remove the frame
4301         around an entry
4302         (gtk_entry_size_request): shrink requisition if no frame
4303         (gtk_entry_draw_focus): don't draw frame if no frame
4304
4305         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4306         checks inside a cell renderer
4307         (gtk_default_draw_option): ditto for options
4308
4309         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4310         children from the alignment, not the button
4311         (gtk_tree_view_column_init): ref/sink the column, to emulate
4312         GObject refcounting.
4313
4314         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4315         
4316         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4317         Use theme functions to draw the toggles 
4318
4319         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4320
4321         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4322         GdkPangoAttrEmbossed to use in rendering insensitive text
4323
4324         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4325
4326         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4327         using new GDK features
4328         
4329 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4330
4331         * gtk/gtkimage.c:
4332         Splitted gtk_image_clear into gtk_image_clear() and
4333         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4334         to avoid leaks.
4335
4336         * gtk/gtklabel.c (set_markup):
4337         Don't leak text.
4338
4339         * gtk/gtktextlayout.c:
4340         Always free display->shaped_objects.
4341
4342         * gtk/testgtk.c (create_clist):
4343         Don't leak custom style.
4344
4345 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4346
4347         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4348         Don't leak image. Simplify using gdk_colormap_query_color().
4349         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4350
4351         * linux-fb/gdkcolor-fb.c:
4352         Implemented gdk_colormap_query_color.
4353
4354 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4355
4356         * linux-fb/gdkcursor-fb.c:
4357         Don't leak built-in cursors.
4358
4359         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4360         Don't leak tmp_points.
4361
4362         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4363         Don't modify desc. Don't leak font if the PangoFont
4364         isn't found.
4365         
4366         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4367         Free dash_list.
4368
4369         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4370         Don't leak string.
4371         
4372 2001-01-20  Havoc Pennington  <hp@pobox.com>
4373
4374         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4375         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4376         me, matches Pango
4377
4378 2001-01-22  Havoc Pennington  <hp@redhat.com>
4379
4380         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4381
4382         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4383
4384         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4385         Remove, move back to gdk-pixbuf
4386
4387         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4388         to all the word functions
4389
4390         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4391         before doing anything on NULL layout or if we don't have the focus
4392
4393         * gtk/testtext.c (fill_example_buffer): "justification"
4394
4395         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4396         to be called "justification" not "justify"
4397
4398         * demos/gtk-demo/textview.c (create_tags): "justification"
4399         
4400         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4401
4402 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4403
4404         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4405         Don't leak visible_region. Use visible_region instead of region.
4406         
4407         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4408         Don't do extra gdk_drawable_ref(). This is not X.
4409         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4410         gdk_fb_focused_window is ref:ed.
4411         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4412         windows.
4413
4414 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4415
4416         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4417         Don't leak the PangoFontDescriptor.
4418
4419 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4420
4421         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4422         when not realized.
4423         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4424         (gtk_tree_view_realize): add scroll_to support
4425         (gtk_tree_view_finalize): add a finalize method.  Populate.
4426         (gtk_tree_view_insert_column): ref and sink the column.
4427         (gtk_tree_view_append_column): ref and sink the column.
4428         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4429         individual nodes.  Should make the code much more efficient, if
4430         actually used.
4431
4432 2001-01-19  Havoc Pennington  <hp@redhat.com>
4433
4434         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4435         byte_offset variable was being used to mean both "offset into
4436         layout" and "offset into buffer line" which was no longer true
4437         with addition of preedit string; fix
4438
4439 2001-01-19  Havoc Pennington  <hp@redhat.com>
4440
4441         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4442
4443         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4444         function
4445
4446         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4447         implement
4448
4449         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4450         scroll_to_cell, matches TextView scroll functions better
4451         (gtk_tree_view_tree_to_widget_coords): new function
4452         (gtk_tree_view_widget_to_tree_coords): new function
4453         (gtk_tree_view_get_visible_rect): new function
4454         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4455         (gtk_tree_view_draw_node_focus_rect): new function moved from
4456         draw_focus, also, use width of bin_window as width of the focus
4457         rect
4458         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4459         already-expanded rows
4460         (gtk_tree_view_get_cell_rect): new function
4461         (gtk_tree_view_get_path_at_pos): return the click position
4462         relative to the passed-in cell
4463         (gtk_tree_view_set_expander_column): new function
4464
4465         * configure.in: remove gtk-config-2.0 chmod
4466
4467         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4468         and properly handle drags with targets we don't understand
4469         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4470         scrolling anyway
4471         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4472         mark invisible
4473
4474         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4475         function
4476         (gtk_drag_dest_get_target_list): new function
4477         (gtk_drag_dest_set_target_list): new function
4478         
4479         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4480
4481         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4482         related to drag-and-drop
4483
4484 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4485
4486         * gdk/linux-fb/gdkprivate-fb.h:
4487         Define EMULATE_GDKFONT.
4488         Add extra pango_font stuff to GfkFontPrivate.
4489         
4490         * gdk/linux-fb/gdkdrawable-fb2.c:
4491         * gdk/linux-fb/gdkfont-fb.c:
4492         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4493         emulation using PangoFont.
4494
4495 2001-01-17  Havoc Pennington  <hp@pobox.com>
4496
4497         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4498         all the non-deprecated set_foo functions. Added missing object
4499         properties, and added g_object_notify() to setters. 
4500         Wrote docs.
4501         
4502 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4503
4504         * gtk/gtkmain.c
4505         * gtk/gtkrc.c: (Win32) Use the new
4506         g_win32_get_package_installation_(sub)directory() functions.
4507
4508         * config.h.win32.in: New file.
4509         
4510         * config.h.win32: Removed.
4511
4512         * configure.in: Output config.h.win32.
4513
4514         * Makefile.am: Add it to EXTRA_DIST.
4515
4516         * gtk/gtk.def: Update.
4517
4518 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4519
4520         * gtk/gtklabel.c (gtk_label_size_request): Set the
4521         attributes onto the PangoLayout even if they are newly
4522         created from label->pattern.
4523
4524 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4525
4526         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4527
4528         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4529         structures in functions. Fixes bug where gtk_dataset_*
4530         was accidentally still being used in one place, causing
4531         every dest side event to be treated independently.
4532
4533         * gtk/gtkdnd.c: Remove last vestages of handling
4534         ::draw (fixes warning)
4535         
4536         * gtk/gtkentry.[ch]: Add drag and drop support.
4537
4538         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4539         new function gtk_check_drag_threshhold() for checking
4540         to check if (dx,dy) has exceeded the threshhold for starting
4541         a drag and use it everywhere.
4542
4543 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4544
4545         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4546         add -I{includedir}/gtk-2.0.
4547
4548         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4549         gdk/gdk-pixbuf.h: Doc fixups.
4550         
4551         * gtk/gtkobject.h: Remove trailing , from enum
4552
4553 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4554
4555         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4556         Doh! Mixed up x and y.
4557
4558         * gdk/linux-fb/gdkglobals-fb.c:
4559         Removed gdk_fb_pointer_grab_window_events,
4560         added _gdk_fb_pointer_grab_owner_events and
4561         _gdk_fb_keyboard_grab_owner_events.
4562
4563         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4564         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4565         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4566         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4567         Send crossing events after ungrab finished.
4568         (gdk_keyboard_grab): Set ..._owner_events
4569         (type_masks): Move out of function.
4570         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4571         gdk_fb_keyboard_event_window): New functions, return the
4572         window an event should be targeted at. Handles grabs and
4573         event propagation. Can return NULL.
4574         (gdk_event_make): Remove event_mask checking. Now always
4575         returns an event.
4576                 
4577         * gdk/linux-fb/gdkkeyboard-fb.c:
4578         * gdk/linux-fb/gdkproperty-fb.c:
4579         * gdk/linux-fb/gdkselection-fb.c:
4580         Use new event_window/gdk_event_make() behaviour.
4581         
4582         * gdk/linux-fb/gdkmouse-fb.c:
4583         Use new event_window/gdk_event_make() behaviour.
4584         Only send motion events if in the same window.
4585         If grabbed, use cursor from window if sibling of grabbed
4586         window, and cursor from grabbed window otherwise.
4587
4588         * gdk/linux-fb/gdkprivate-fb.h:
4589         Update gdk_fb_window_send_crossing_events, gdk_event_make
4590         and grab varaible declarations. Add gdk_fb_*_event_window().
4591
4592         * gdk/linux-fb/gdkwindow-fb.c:
4593         Use new event_window/gdk_event_make() behaviour.
4594         Keep correct track of focus window.
4595         (gdk_window_set_events): Set all specific button motion masks
4596         if GDK_BUTTON_MOTION_MASK set.
4597
4598         * gtk/gtkdnd.c (gtk_drag_update):
4599         Free info->last_event if gdk_drag_motion returned FALSE.
4600
4601 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4602
4603         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4604         Eliminate redraws when input-only windows are shown or
4605         hidden. Thanks to jpe@archaeopteryx.com.
4606
4607 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4608
4609         * docs/faq/gtk-faq.sgml: FAQ update:
4610           - Update to bugzilla
4611           - Add GTK+ and security/SUID/SGID
4612           - Add DnD question
4613
4614 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4615
4616         * gdk/linux-fb/gdkdnd-fb.c:
4617         Some cleanups.
4618         
4619 2001-01-15  Havoc Pennington  <hp@pobox.com>
4620
4621         * tests/testtreeview.c: add test stuff for CellRendererToggle
4622
4623         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4624         accessor
4625
4626         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4627         only toggle on button press (would do release like GtkButton, but
4628         we'd need implicit grab code for treeview cells)
4629
4630 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4631
4632         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4633
4634         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4635         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4636
4637         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4638         to g_{locale,filename}_{to,from}_utf8 to match current API.
4639
4640         * gtk/makefile.msc.in (gtk_OBJECTS)
4641         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4642
4643         * gtk/gtk.def: Update.
4644
4645 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4646
4647         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4648         implementaion that more closely mimics the events that an X server
4649         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4650         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4651         with nested preview widgets, for instance, more responsive when
4652         you move the mouse quickly into them.
4653         (find_window_for_pointer_event): Make it actually compile.
4654         (gdk_event_translate): Set send_event to the value of
4655         InSendMessage (). This doesn't really mean the same as X11's
4656         send_event flag, but is close enough, says jpe@archaeopteryx.com
4657
4658 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4659
4660         * gdk/linux-fb/gdkdnd-fb.c:
4661         Implemented drag and drop.
4662         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4663         when it tries to free and then copy the same event (info->last_event).
4664         I am not sure about why this happens, but will continue looking.
4665
4666 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4667
4668         * gdk/linux-fb/gdkwindow-fb.c:
4669         Use gdk_window_invalidate_rect instead of
4670         gdk_window_invalidate_rect_clear to minimise flashing.
4671         When hiding windows you need to clear the root window though.
4672
4673 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4674
4675         * gdk/linux-fb/gdkdrawable-fb2.c:
4676         For optization, add an full_shapes argument to gdk_fb_clip_region.
4677         If this is false, only the cliprects of the shapes are used.
4678
4679         * gdk/linux-fb/gdkprivate-fb.h:
4680         Export gdk_fb_window_peek_shape.
4681         Add full_shapes to gdk_fb_clip_region.
4682
4683         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4684         When moving a window, don't clear everything under the it, just the
4685         root window. Makes stuff faster and flash less.
4686         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4687         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4688         offset of the shape.
4689         
4690
4691 2001-01-12  Havoc Pennington  <hp@redhat.com>
4692
4693         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4694         current invalid region, fixes redraw bug while scrolling the 
4695         text widget
4696
4697         * gtk/gtktextview.c, gtk/gtktextview.h:
4698         Rearrange the scrolling/validation/etc. code in a major way, 
4699         so it seems to make sense to me. Probably isn't genuinely that
4700         much better, but...
4701
4702         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4703         notifies
4704
4705         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4706
4707 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4708
4709         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4710         Hide mouse pointer while rotation. Show it afterwards.
4711
4712 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4713
4714         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4715         windows in consideration when generating clip region.
4716
4717         * gdk/linux-fb/gdkfb.h:
4718         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4719
4720         * gdk/linux-fb/gdkprivate-fb.h:
4721         Add shape to GdkWindowFBDatat.
4722         exported gdk_fb_window_get_abs_shape().
4723         removed gdk_fb_draw_lines declaration.
4724
4725         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4726         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4727         send focus changes when there is a grabbed window.
4728         (gdk_window_get_pointer): Handle shaped windows.
4729         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4730         (gdk_fb_window_peek_shape): Returns the shape for a window,
4731         handles GDK_FB_USE_CHILD_SHAPE.
4732         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4733         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4734         (gdk_window_shape_combine_mask): Implement.
4735
4736         * gtk/gtkwindow-decorate.c:
4737         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4738         setting the shape of a window makes the window transparent.
4739
4740 2001-01-11  Havoc Pennington  <hp@redhat.com>
4741
4742         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4743
4744 2001-01-10  Havoc Pennington  <hp@redhat.com>
4745
4746         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4747         add this function, bug 40251
4748
4749         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4750         of type macro   
4751
4752 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4753
4754         * acconfig.h:
4755         Added ENABLE_SHADOW_FB
4756
4757         * configure.in:
4758         Added --disable-shadowfb
4759
4760         * gdk/linux-fb/gdkcursor-fb.c:
4761         Update shadowfb when updating cursor
4762
4763         * gdk/linux-fb/gdkdrawable-fb2.c:
4764         Added wrappers for shadowfb that calls  the normal drawable
4765         methods, but calls gdk_shadow_fb_update(bounding box) when
4766         GdkWindows are drawed to.
4767         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4768         which also returns the bounding box.
4769
4770         * gdk/linux-fb/gdkfb.h:
4771         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4772
4773         * gdk/linux-fb/gdkgeometry-fb.c:
4774         Update shadowfb when scrolling window.
4775
4776         * gdk/linux-fb/gdkglobals-fb.c:
4777         Add _gdk_fb_screen_angle.
4778         
4779         * gdk/linux-fb/gdkkeyboard-fb.c:
4780         Test code for screen rotation. Shift-F2 in the xlate driver
4781         rotates the screen.
4782
4783         * gdk/linux-fb/gdkmain-fb.c:
4784         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4785
4786         * gdk/linux-fb/gdkmouse-fb.c:
4787         Use fb_width/height instead of modeinfo.xres/yres.
4788
4789         * gdk/linux-fb/gdkprivate-fb.h:
4790         Added fb_men, fb_width, fb_height & fb_stride. When using
4791         shadow fb these can differ from the framebuffer stuff.
4792         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4793         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4794         _gdk_fb_screen_angle. Removed CM, RP.
4795
4796         * gdk/linux-fb/gdkrender-fb.c:
4797         Added code for shadowfb handling and screen rotation using
4798         shadowfb.
4799
4800         * gdk/linux-fb/gdkwindow-fb.c:
4801         Use fb_mem, fb_stride, fb_width, fb_height.
4802         Added recompute_rowstride to reset the rowstride of all windows.
4803         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4804         window abs positions and window rowstrides. Usefull when the
4805         rotation has changed.
4806
4807 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4808
4809         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4810
4811 2001-01-10  Havoc Pennington  <hp@redhat.com>
4812
4813         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4814         where sibling == iter
4815         (gtk_tree_store_insert_after): handle sibling == iter
4816         (gtk_tree_store_prepend): remove stamp checks
4817         (gtk_tree_store_insert_before): ditto
4818         (gtk_tree_store_append): ditto
4819         (gtk_tree_store_get_path): ditto
4820         (gtk_tree_store_get_value): ditto
4821         (gtk_tree_store_iter_has_child): ditto
4822         (gtk_tree_store_iter_n_children): ditto
4823         (gtk_tree_store_iter_nth_child): ditto
4824         (gtk_tree_store_insert_after): ditto
4825         (gtk_tree_store_is_ancestor): ditto
4826         (gtk_tree_store_iter_depth): ditto
4827         (gtk_tree_store_insert_before): assert that sibling's parent is
4828         the same as the passed-in parent
4829         (gtk_tree_store_insert_after): assert that sibling's parent is
4830         the same as the passed-in parent
4831
4832         
4833         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4834         function to get the first iterator in a model
4835         
4836         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4837         conventionally the "root" in this sense is just NULL afaict.
4838
4839         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4840         where sibling == iter
4841         (gtk_list_store_insert_after): handle case where sibling == iter
4842
4843         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4844         automated tests for ListStore, TreeStore
4845
4846         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4847         (gtk_list_store_insert): update tail pointer, and fix it to work
4848         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4849         (gtk_list_store_append): use tail to be faster
4850         (gtk_list_store_prepend): fix it, update tail pointer
4851         (gtk_list_store_insert_after): fix it, update tail pointer
4852
4853         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4854         the list
4855
4856 2001-01-09  Havoc Pennington  <hp@redhat.com>
4857
4858         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4859         is NULL due to a pending resize
4860
4861         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4862         column width to values less than 1
4863
4864         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4865         width to be between min/max width, and still set the width 
4866         even if autosize is turned on, so the tree view can use this 
4867         function in order to autosize.
4868         (gtk_tree_view_column_init): set initial width to 1 not 0
4869
4870         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4871         setter function to modify column width, so we get notification
4872         (gtk_tree_view_insert_iter_height): ditto
4873         (gtk_tree_view_calc_size): ditto
4874         (gtk_tree_view_check_dirty): ditto
4875
4876         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4877         properties to change all the interesting attributes of the tree
4878         view column.
4879         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4880         (gtk_tree_view_column_get_clickable): add
4881         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4882         attributes; assume a cell renderer with equivalent object
4883         properties has been swapped in. Do g_object_notify().
4884         (gtk_tree_view_column_set_visible): g_object_notify
4885         (gtk_tree_view_column_get_sizing): rename from get_col_type
4886         (gtk_tree_view_column_set_sizing): g_object_notify
4887         (gtk_tree_view_column_set_width): add g_object_notify
4888         (gtk_tree_view_column_set_min_width): ditto
4889         (gtk_tree_view_column_set_max_width): ditto
4890         (gtk_tree_view_column_set_title): ditto
4891         (gtk_tree_view_column_set_clickable): ditto
4892         (gtk_tree_view_column_set_widget): ditto
4893         (gtk_tree_view_column_set_justification): ditto
4894
4895 2001-01-09  Havoc Pennington  <hp@redhat.com>
4896
4897         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4898         there are no rows in the model
4899
4900         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4901         NULL, then return the start of the list
4902
4903         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4904         if we can't get any rows from an empty model 
4905
4906         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4907         extraneous * after function pointer typedef usage
4908
4909         * Makefile.am: don't specify full path to cp and rm
4910
4911         * gtk/gtkcellrenderertextpixbuf.c
4912         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4913         NULL before dereferencing, fixes a segfault that happened from
4914         time to time
4915
4916         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4917         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4918         and reindent the function
4919         (gtk_cell_renderer_pixbuf_get_size): indentation
4920
4921         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4922         we quit it
4923         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4924         (gtk_dialog_set_default_response): New function, to set default
4925         button
4926         (gtk_dialog_set_response_sensitive): New function, to set 
4927         sensitivity of buttons
4928
4929         * gtk/gtkcellrendererpixbuf.c
4930         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4931         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4932
4933         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4934         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4935         also boxed types.
4936         (_gtk_tree_data_list_value_to_node): ditto
4937
4938         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4939         --gtk-debug=tree
4940
4941         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4942
4943         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4944
4945 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4946
4947         * gdk/win32/gdkevents-win32.c: Implement better mouse
4948         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4949         (find_window_for_pointer_event): New function.
4950         (gdk_event_translate): Use it when handling mouse events.
4951
4952 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4953
4954         * configure.in:
4955         Added --with-included-loaders option
4956
4957         * gdk-pixbuf/Makefile.am:
4958         * gdk-pixbuf/gdk-pixbuf-io.c:
4959         Add support for including selected gdk-pixbuf loaders only.
4960
4961         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4962         gtk_window_set_has_frame):
4963         Added inline documentation.
4964
4965         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4966         * docs/reference/gdk/tmpl/windows.sgml:
4967         Added inline documentation.
4968
4969 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4970
4971         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4972         realizing buttons that have already been realized.
4973
4974 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4975
4976         * tests/testtreeview.c (main): Show menu items before adding to
4977         option menu.
4978
4979         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4980         around if we kill them.
4981
4982         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4983         Return if we pass in a NULL model.
4984
4985 2001-01-08  Havoc Pennington  <hp@redhat.com>
4986
4987         * tests/testtreeview.c: hack on this some
4988
4989         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4990         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4991         list
4992         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4993
4994         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4995         functions
4996
4997 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4998
4999         * gtk/gtkwindow-decorate.[hc]:
5000         * gtk/Makefile.am:
5001         New files. Contains an implementation of a minimal WM for
5002         linux-fb.
5003
5004         * gtk/gtkwindow.h:
5005         Add the possibility for GtkWindows to specify a frame. This
5006         is used for the window decoration code, but could concievably
5007         be used for X programs too (xmms style windows).
5008         GtkWindow->frame is the toplevel window if the window is framed.
5009         The signal frame_event gets all events that are targeted to
5010         GtkWindow->frame.
5011         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
5012         
5013         * gtk/gtkwindow.c:
5014         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
5015         Call out to gtkwindow-decorate.c for WM support in linx-fb.
5016
5017 2001-01-08  Alexander Larsson  <alexl@redhat.com>
5018
5019         * docs/README.linux-fb:
5020         Correct filename ~/.pangoft2_aliases
5021
5022         * gdk/gdkwindow.h:
5023         Added new function gdk_window_get_decorations.
5024
5025         * gdk/linux-fb/gdkfb.h:
5026         Removed _gdk_window_get_decorations declaration.
5027         Renamed _gdk_window_set_child_handler to
5028         gdk_fb_window_set_child_handler.
5029
5030         * gdk/linux-fb/gdkwindow-fb.c:
5031         Renamed _gdk_window_set_child_handler to
5032         gdk_fb_window_set_child_handler.
5033
5034         * gdk/x11/gdkwindow-x11.c:
5035         New function gdk_window_get_mwm_hints().
5036         Implemented gdk_window_get_decorations.
5037
5038         * docs/reference/gdk/tmpl/windows.sgml:
5039         * docs/reference/gdk/gdk-sections.txt:
5040         Added gdk_window_get_decorations docs.
5041         
5042 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
5043
5044         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
5045         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
5046         gdk_fb_window_send_crossing_events):
5047         Possibly send focus events when the mouse moves from one
5048         window to another.
5049
5050 2001-01-07  Tor Lillqvist  <tml@iki.fi>
5051
5052         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
5053         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
5054         to match current API.
5055
5056         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
5057         environment variable is set, don't call g_error when on a
5058         palettized (PseudoColor) display. Some people want to use GTK+ 
5059         in 256-colour mode even though works only partially.
5060
5061         * gdk/gdk.def
5062         * gtk/gtk.def
5063         * gtk/makefile.mingw.in: Update.
5064
5065 2001-01-05  Havoc Pennington  <hp@redhat.com>
5066
5067         * tests/testtreeview.c: hack on this a bit
5068
5069         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
5070         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
5071
5072         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
5073         was spelled incorrectly
5074         (GTK_IS_TREE_MODEL_SIMPLE): ditto
5075
5076         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
5077         from gtk_tree_view_set_headers_active   
5078
5079         * gtk/gtktexttag.c:
5080         (gtk_text_tag_get_property): handle PROP_DIRECTION
5081         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
5082         properties, bug 40235
5083
5084         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
5085         forward_to_line_end
5086
5087 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
5088
5089         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
5090         modules/input/gtkimcontextxim.c: Adapt to new prototypes
5091         for unicode,locale,filename conversion functions.
5092
5093 2001-01-05  Havoc Pennington  <hp@redhat.com>
5094
5095         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
5096         broken if called on the first position in the buffer.
5097
5098         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
5099         forward_to_delimiters to be called only if we aren't already at
5100         the delimiters.
5101
5102 2001-01-05  Havoc Pennington  <hp@redhat.com>
5103
5104         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
5105
5106 2001-01-05  Alexander Larsson  <alexl@redhat.com>
5107
5108         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
5109         colormap in here. Sync from X port.
5110         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
5111         Sync from X port.
5112         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
5113         This happens now and then, and i don't think it is a bug.
5114         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
5115         != endpoint.
5116         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
5117         GDK_LINE_SOLID.
5118
5119         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
5120         some of the fields filled in at least.
5121
5122         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
5123         miLineArcD is no more, remove it from the function definition.
5124
5125 2001-01-04  Havoc Pennington  <hp@redhat.com>
5126
5127         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
5128         this
5129
5130         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
5131         user_data instead of tree_node
5132
5133         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
5134         TREE_VIEW_COLUMN_SIZE
5135
5136         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
5137         "size" field to "width" finishes bug 40061
5138
5139         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
5140         for bitfields, bug 40268
5141
5142 2001-01-04  Havoc Pennington  <hp@redhat.com>
5143
5144         Rename some stuff:
5145         
5146         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
5147
5148         s/GtkModelSimple/GtkTreeModelSimple/g;
5149         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
5150         s/gtk_model_simple/gtk_tree_model_simple/g;
5151         s/gtkmodelsimple/gtktreemodelsimple/g;
5152
5153         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
5154
5155         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
5156         s/column_set_col_type/column_set_sizing/g;
5157
5158         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
5159         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
5160
5161         s/GtkCellRendererType/GtkCellRendererState/g;
5162         
5163         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
5164         (gtk_cell_renderer_toggle_class_init): change "state" property to
5165         "active", to match GtkToggleButton
5166         (gtk_cell_renderer_toggle_get_active): new function, bug
5167         40269
5168         (gtk_cell_renderer_toggle_set_active): new function
5169         (gtk_cell_renderer_toggle_set_property): route changes to toggle
5170         state through gtk_cell_renderer_set_active
5171
5172 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
5173
5174         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
5175         temporarily until they work again.  Brought up to date with
5176         changes in the model.
5177         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
5178         model.
5179
5180 2001-01-04  Havoc Pennington  <hp@redhat.com>
5181
5182         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
5183         equal to the line length, then position iterator before paragraph 
5184         separators. Fixes crash reported by Mikael Hermansson when
5185         pressing left arrow from the start of a line.   
5186
5187         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
5188         about byte indexes off the end
5189         (iter_set_from_char_offset): add g_error about char offsets
5190         off the end
5191
5192 2001-01-03  Havoc Pennington  <hp@redhat.com>
5193
5194         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
5195
5196         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
5197         of private functions; remove inclusion of private headers.
5198
5199         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
5200         function, so we don't need private functions in gtktextdisplay.c
5201
5202         * gtk/gtktextiterprivate.h: underscore-ification
5203
5204         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
5205         to instead say "only useful to implement widgets"
5206
5207         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
5208         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
5209         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
5210
5211         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
5212         This function was completely broken
5213
5214         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
5215
5216         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
5217
5218         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
5219
5220         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
5221
5222         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
5223
5224         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
5225
5226         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
5227         gtk_paint_layout
5228
5229         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
5230         gtk_paint_layout
5231
5232         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
5233         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
5234         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
5235         which were not implemented.     
5236
5237         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
5238         insert_pixbuf signal. Rename delete_text to delete_range since it
5239         also deletes pixbufs and child anchors. This almost closes bug
5240         40245 (still need to deal with child anchors)
5241
5242         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
5243         insert_pixbuf, change signal names as appropriate, change types of
5244         signals taking marks/tags to have the specific type, not just
5245         G_TYPE_OBJECT
5246         
5247         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
5248         closes bug 40051
5249
5250         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
5251         unnecessary remove_contents() call
5252         (gtk_option_menu_class_init): add a "changed" signal, closes
5253         bug 40039
5254         (gtk_option_menu_update_contents): emit "changed" if the 
5255         active menu item changes
5256
5257         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
5258         cast to GtkObject, reported by Jonas Borgstrom
5259         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
5260         we can't do stuff with side effects in finalize. Instead, spew a
5261         warning if the loader isn't closed.
5262
5263         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5264         colormap in here, non-X ports probably need to sync to this change
5265
5266         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5267         assertion that colormap != NULL, you can set the colormap to NULL
5268         if you like.
5269         
5270         * Makefile.am: remove gtk-config-2.0
5271
5272         * configure.in: Use pkg-config to locate GLib. Remove
5273         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5274         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5275         Use pkg-config to locate Pango. Output correct Pango libs to
5276         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5277
5278         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5279         files
5280         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5281         X11 pc files
5282
5283         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5284         unref from here
5285
5286 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5287
5288         * configure.in:
5289         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5290
5291 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5292
5293         * gtk/gtktextlayout.c
5294         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5295         variable when moving back onto a single line.
5296
5297 2001-01-01  Havoc Pennington  <hp@redhat.com>
5298
5299         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5300
5301         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5302
5303         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5304         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5305
5306 2001-01-01  Havoc Pennington  <hp@redhat.com>
5307
5308         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5309
5310         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5311         GtkTextAttributes
5312
5313         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5314         #40246
5315         (gtk_text_attributes_copy_values): rename from 
5316         gtk_text_attributes_copy
5317         (gtk_text_attributes_copy): a more standard GTK copy function, 
5318         which returns a new object
5319
5320 2001-01-01  Havoc Pennington  <hp@redhat.com>
5321
5322         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5323         
5324         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5325         don't fill in tree_view->priv->selection, kind of an unexpected
5326         side effect
5327
5328         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5329         gtkintl.h
5330         
5331         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5332         gtkintl.h
5333         (gtk_cell_renderer_get_property): remove calls to g_value_init
5334
5335         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5336         gtkintl.h
5337
5338         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5339         and include gtkintl.h
5340         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5341         property names
5342
5343         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5344         GtkTreeSelection
5345         (_gtk_tree_selection_new_from_with_view): rename, return
5346         GtkTreeSelection
5347         (_gtk_tree_selection_set_tree_view): rename with uscore
5348         (gtk_tree_selection_get_selected): fill in the "model" out param
5349         first, so it gets filled in even if we return at the top of the 
5350         function
5351         (gtk_tree_selection_real_select_all): add a comment and an else{}
5352         to clarify this a bit
5353         (gtk_tree_selection_real_unselect_all): add the same else{}
5354
5355         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5356         set_tree_view to have underscore prefixes, move them to the
5357         private header, fix return type of new_with_tree_view
5358         (struct _GtkTreeSelection): mark struct
5359         fields private  
5360
5361         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5362         GtkTreeModelFlags, not a guint
5363         (gtk_tree_path_prev): return gboolean not gint
5364         (gtk_tree_path_up): return gboolean not gint
5365
5366         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5367         return GtkTreeModelFlags, not a guint
5368
5369         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5370         that child model is non-null before unrefing it
5371         (g_value_int_compare_func): make this a qsort compare func, not 
5372         a boolean predicate
5373
5374         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5375         (add -umn to the end), and mark it unimplemented
5376         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5377         I don't see what it's for - doesn't the model always sort itself?
5378         (gtk_tree_model_sort_set_compare): this had the wrong signature
5379
5380         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5381         Fix the docs to say that it destructively replaces existing
5382         attributes (previously said that it added attributes).
5383         (gtk_tree_view_column_set_visible): canonicalize bool before
5384         equality testing. Also, check for realization before
5385         hiding/showing the tree_column->window; if this window could exist
5386         before realization, then it's busted and needs fixing, we can't 
5387         create GDK resources pre-realization. Also, remove
5388         superfluous queue_resize(), since set_size() does that for us.
5389         (gtk_tree_view_column_set_col_type): check realization before 
5390         using tree_column->window
5391
5392         * gtk/gtktreedatalist.c: fix filename in copyright notice
5393
5394 2000-12-31  Havoc Pennington  <hp@pobox.com>
5395
5396         * gtk/gtktextview.c: Rearrange all the
5397         scroll-while-dragging-or-selecting code to be different, not
5398         necessarily better. ;-)
5399         (gtk_text_view_scroll_to_mark): Change this
5400         function to take within_margin as a fraction instead of a pixel
5401         value, and to take alignment arguments (indicating where to align 
5402         the mark inside the visible area)
5403         
5404         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5405         to GtkObject
5406
5407         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5408         behavior so that offsets past the end of the line are not 
5409         allowed, and an offset equal to the line length moves the iterator
5410         to the next line
5411         (gtk_text_iter_set_line_index): make parallel change
5412         (gtk_text_iter_get_bytes_in_line): add this function
5413         
5414         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5415         of byte indexes off the end of the line; byte index at the end of
5416         the line now returns FALSE and doesn't fill in the requested
5417         values, byte index past the end of the line is an error.  Also,
5418         don't allow -1 offset anymore, since its meaning is unclear.
5419
5420         This change exposes some bug in visual cursor motion, where we
5421         end up with a huge invalid byte index; needs fixing. Symptom of 
5422         bug is a crash when you hit up arrow.
5423         
5424         (_gtk_text_line_char_locate): match the change to byte_locate
5425
5426         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5427         from start of line properly. fixes bug reported by Mikael
5428         Hermansson where backspace would delete all text before the
5429         cursor.
5430
5431 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5432
5433         * gdk/win32/gdkwindow-win32.c
5434         (gdk_window_impl_win32_get_visible_region): New function, as in
5435         the X11 backend.
5436         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5437         instead of duplicating the same code here.
5438
5439         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5440         GDK_COLORMAP macro.
5441
5442         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5443         destroy function.
5444         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5445         access that.
5446
5447         * gtk/gtk.def: Update.
5448
5449         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5450
5451 2000-12-30  Havoc Pennington  <hp@pobox.com>
5452
5453         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5454         colormap on input only windows, to avoid special cases all over
5455         the code for these windows.
5456
5457 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5458
5459         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5460         we are on a palettized display ("PseudoColor" in X11), as the code
5461         for that doesn't work anyway, and never has.
5462
5463 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5464
5465         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5466         Don't use isprint() for chars > 255.
5467
5468 2000-12-21  Havoc Pennington  <hp@redhat.com>
5469
5470         * tests/testtreeview.c: more work
5471
5472 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5473
5474         * docs/README.linux-fb:
5475         Update the docs to the new pangoft2 way.
5476
5477 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5478
5479         * configure.in:
5480         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5481         pango version.
5482         Remove modules/linux-fb/Makefile.
5483
5484         * gdk/linux-fb/gdkdrawable-fb2.c:
5485         Render glyphs using freetype.
5486
5487         * gdk/linux-fb/gdkfb.h:
5488         Add new fb-specific functions needed for managing windows.
5489
5490         * gdk/linux-fb/gdkmain-fb.c:
5491         Remove gdk_font_init/fini() calls.
5492
5493         * gdk/linux-fb/gdkpango-fb.c:
5494         Remove old implementation. Use pangoft2 instead.
5495
5496         * gdk/linux-fb/gdkprivate-fb.h:
5497         Remove PangoFBFont and related stuff.
5498
5499         * gdk/linux-fb/gdkwindow-fb.c:
5500         Implement drawable->get_visible_region.
5501         Implement support for _gdk_window_set_child_handler () and
5502         _gdk_window_get_decorations().
5503
5504         * modules/Makefile.am:
5505         Remove linux-fb subdir.
5506
5507         * modules/linux-fb/*:
5508         Removed all.
5509         
5510 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5511
5512         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5513         calls, as they are no longer needed.
5514
5515         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5516         
5517         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5518         figure out how to emit a signal on an interface.
5519
5520 2000-12-20  Havoc Pennington  <hp@redhat.com>
5521
5522         * tests: new directory to contain tests, gtk/test* should move
5523         here sometime (with appropriate on-cvs-server hackery)
5524
5525         * tests/testtreeview.c, tests/Makefile.am: a test
5526         
5527         * configure.in (AC_OUTPUT): add tests/Makefile
5528
5529         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5530         and "invisible_set" which were missing
5531
5532         * gtk/gtkrbtree.h: some cheesy indentation fix
5533         
5534 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5535
5536         * gtk/gtkinvisible.c (gtk_invisible_realize):
5537         Attach the style to the window so that the style it is not
5538         leaked when unrealizing the window.
5539
5540 2000-12-18  Havoc Pennington  <hp@redhat.com>
5541
5542         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5543         begin/end user action where appropriate
5544         (gtk_text_view_commit_handler): add begin/end user action
5545
5546         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5547         bracket interactive operations with begin/end user action pair.
5548         
5549         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5550         "interactive" arg from insert_text and delete_text signals.
5551         Add begin_user_action, end_user_action signals
5552         (gtk_text_buffer_begin_user_action): 
5553         (gtk_text_buffer_end_user_action): New functions to delimit 
5554         a user-visible action
5555
5556         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5557         signals.
5558         
5559 2000-12-18  Havoc Pennington  <hp@redhat.com>
5560
5561         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5562         was pretty non-working.
5563
5564         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5565         by passing the length to g_utf8_validate().
5566
5567 2000-12-16  Havoc Pennington  <hp@pobox.com>
5568
5569         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5570         Port to GObject, can go back in gdk-pixbuf after setting up 
5571         a gdk-pixbuf-marshal.h header over there.
5572
5573         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5574         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5575         args
5576         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5577         set
5578         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5579         here, do it when we create the buttons later
5580         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5581         (gtk_tree_view_map): paranoia checks that column->button is shown 
5582         and unmapped
5583         (gtk_tree_view_size_request): only request visible children.
5584         Move header size calculation in here, for cleanliness, and 
5585         to maintain invariants for child widgets if we eventually 
5586         let users set different children inside the buttons
5587         (gtk_tree_view_map_buttons): factor out code to map buttons,
5588         since it was being called several times
5589         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5590         windows instead of just moving them; their height may change 
5591         if we allow random widgets in there, or the theme changes.
5592         (gtk_tree_view_size_allocate): move button size allocation 
5593         above emitting the scroll signals, to ensure a sane state when we
5594         hit user code
5595         (gtk_tree_view_button_release): remove queue_resize after
5596         tree_view_set_size(), set_size() will handle any resize queuing
5597         that's needed
5598         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5599         draw_focus goo
5600         (gtk_tree_view_focus): use gtk_get_current_event() and
5601         gdk_event_get_state()
5602         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5603         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5604         semicolon
5605         (gtk_tree_view_create_button): show the button here
5606         (gtk_tree_view_button_clicked): actually emit the clicked signal
5607         on the column
5608         (_gtk_tree_view_set_size): return right away if the size is
5609         unchanged, as a cheesy optimization
5610         (gtk_tree_view_setup_model): rename set_model_realized to 
5611         setup_model to match the flag that indicates whether we've 
5612         called it
5613         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5614         exist, because set_scroll_adjustment does that and it shouldn't
5615         matter what order you call these in
5616         (gtk_tree_view_get_vadjustment): ditto
5617         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5618         for paranoia
5619         (gtk_tree_view_set_headers_visible): call
5620         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5621         (gtk_tree_view_append_column): clarify whether the return value
5622         is the count of columns before or after, and do the increment 
5623         separately from the return statement so you can tell from the code.
5624         (gtk_tree_view_remove_column): ditto
5625         (gtk_tree_view_insert_column): ditto
5626         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5627         outside the existing range, the docs say that outside-range
5628         columns are allowed, so we handle them as documented. (Presumably
5629         this allows a nice loop with column != NULL as test.)
5630         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5631         mean (left/right/center etc.).
5632         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5633         (gtk_tree_view_expand_row): add docs
5634         (gtk_tree_view_collapse_row): add docs
5635
5636         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5637         function to emit the clicked signal on a column
5638         
5639         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5640         state of an event
5641         (gdk_event_get_time): don't treat GDK_SCROLL 
5642         as a button event, remove default case from switch so gcc 
5643         will whine if we don't explicitly handle all event types
5644
5645         * gtk/gtktreeselection.h: added some FIXME 
5646         
5647         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5648         "columns" to "n_columns" and "column" to "columns" for clarity
5649
5650 2000-12-16  Havoc Pennington  <hp@pobox.com>
5651         
5652         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5653         stuff. This should make e.g. the delete key work again in the
5654         text widget...
5655         (gtk_text_iter_forward_cursor_positions): handle negative count
5656         (gtk_text_iter_backward_cursor_positions): handle negative count
5657         (gtk_text_iter_forward_word_ends): handle negative count
5658         (gtk_text_iter_backward_word_starts): handle negative count
5659
5660         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5661         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5662         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5663         GObject. No doubt will cause breakage.
5664
5665         * demos/gtk-demo/textview.c: remove hacks around
5666         non-GObject-ification of the text objects
5667
5668         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5669         the text tag
5670         
5671 2000-12-14  Havoc Pennington  <hp@pobox.com>
5672
5673         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5674         that we have Xrender
5675
5676 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5677
5678         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5679         Add two virtualized functions gdk_drawable_get_clip_region - to
5680         get the clip region when drawing.
5681         
5682         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5683         use invalidate_region.
5684
5685         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5686         region.
5687
5688         * acconfig.h configure.in: Check for Xft. For now, assume
5689         that if Xft is found, Pango was compiled with Xft support
5690         as well.
5691
5692         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5693         gdk_colormap_query_color().
5694         
5695         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5696         with Xft if appropriate.
5697
5698         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5699         a pangoxft context if we have XFT and the environment
5700         variable GD_USE_XFT is set.
5701         
5702         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5703         and also possibly an XftDraw structure.
5704
5705         * gtk/gtkfontsel.c: Handle the case where the font from the
5706         style doesn't match any of the fonts a bit better.
5707         
5708         * gtk/testgtk.c: Add tabs between directional segments for
5709         hebrew/arabic test. (Not really necessary, just a little
5710         prettier.)
5711
5712 2000-12-14  Havoc Pennington  <hp@redhat.com>
5713
5714         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5715         reading a file
5716
5717 2000-12-14  Havoc Pennington  <hp@redhat.com>
5718
5719         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5720         unused call to get_last_line()
5721
5722         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5723         here until boxed is working (and maybe after that - we should
5724         really not gratuitously break old code)
5725
5726         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5727         specific types for font_desc and tabs args, move them to
5728         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5729         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5730
5731         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5732         use GTK_TYPE_POINTER for signal signatures as a hack-around
5733
5734         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5735         PangoTabArray
5736
5737         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5738         make static
5739         (line_display_index_to_iter): make static
5740
5741         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5742         to marshal a string not a boxed
5743
5744         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5745
5746         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5747         since the UTF-8 isn't validated yet
5748
5749         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5750         lines to end in '\n'
5751         
5752         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5753         forward_to_delimiters, and grapheme boundaries
5754         (gtk_text_view_delete_from_cursor): properly handle non-newline
5755         delimiters, and grapheme boundaries
5756
5757         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5758         to gtk_text_iter_forward_to_delimiters, and make it work properly
5759         if empty lines end with a character other than '\n'
5760
5761         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5762         position
5763
5764 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5765
5766         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5767
5768         * gtk/gtk.def
5769         * gdk/gdk.def: Update.
5770
5771         * gdk/win32/gdkmain-win32.c
5772         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5773         gdkmain-win32.c here.
5774
5775         * gdk/win32/makefile.mingw.in (all): No need to make
5776         gdk-win32res.o here, the makefile one step up will call us to make
5777         it.
5778
5779         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5780         gdkkeys-win32.
5781
5782         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5783
5784         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5785         call to g_source_add().
5786
5787         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5788         leak. Thanks to Andreas Kemnade.
5789
5790 2000-12-13  Havoc Pennington  <hp@pobox.com>
5791
5792         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5793
5794         * gtk/gtktext*.[hc]: update accordingly
5795         
5796 2000-12-13  Havoc Pennington  <hp@pobox.com>
5797
5798         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5799         header file
5800
5801         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5802
5803 2000-12-13  Alex Larsson  <alexl@redhat.com>
5804
5805         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5806         Add support for ps2 intellimouse.
5807
5808         * gdkkeyboard-fb.c:
5809         Move shift-F1 repaint handling to xlate handler only.
5810         
5811         * docs/README.linux-fb:
5812         Add imps2 to docs.
5813         Document the new refresh keys.
5814         
5815 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5816
5817         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5818
5819         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5820         ::position and ::padding.
5821
5822         * gtk/gtkcontainer.c: make ::border_width an INT property.
5823
5824         * gtk/gtkpacker.c: make ::position an INT property.
5825
5826         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5827         guard against NULL h/v scrollbars, since this is used at construction
5828         time.
5829
5830         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5831         internal gtk_clist_constructor().
5832
5833         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5834         gtk_ctree_constructor().
5835
5836         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5837         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5838
5839         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5840         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5841
5842         * gtk/gtkwidget.[hc]:
5843         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5844         and gtk_widget_get().
5845         (gtk_widget_new): use g_object_new_valist().
5846         (gtk_widget_set): use g_object_set_valist().
5847
5848         * gtk/gtkobject.[hc]:
5849         removed gtk_object_arg_get_info(), gtk_object_getv(),
5850         gtk_object_query_args(), gtk_object_newv(),
5851         gtk_object_class_add_signals(),
5852         gtk_object_class_user_signal_new(),
5853         gtk_object_class_user_signal_newv(),
5854         gtk_object_arg_set(), gtk_object_arg_get(),
5855         gtk_object_args_collect(),
5856         gtk_object_default_construct(),
5857         gtk_object_constructed(),
5858         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5859         removed nsignals, signals and n_args members from GtkObjectClass.
5860         (gtk_object_new): use g_object_new_valist().
5861         (gtk_object_set): use g_object_set_valist().
5862         (gtk_object_get): use g_object_get_valist().
5863         
5864         * gtk/gtkcompat.h: define gtk_object_default_construct().
5865         
5866         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5867         g_object_new().
5868
5869         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5870         fucntions, cleaned up method assignments (make sure your structures
5871         are setup properly before calling out). removed all GTK_CONSTRUCTED
5872         hacks ;)
5873
5874 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5875
5876         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5877         off-by-one error in checks. (Dave Lambert)
5878
5879 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5880
5881         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5882         Don't free gdk_fb_keyboard twice.
5883
5884 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5885
5886         * gtk/testgtk.c:
5887         (create_tooltips): 
5888         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5889         use GObject swapped_signal:: properties instead.
5890
5891         * gtk/gtkcellrenderertoggle.c: 
5892         * gtk/gtkcellrenderertextpixbuf.c: 
5893         * gtk/gtkcellrenderertext.c: 
5894         * gtk/gtkcellrendererpixbuf.c: 
5895         * gtk/gtkcellrenderer.c:
5896         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5897         missing warnings for invalid property ids, install properties
5898         with g_object_class_install_property() now.
5899         
5900         * gtk/gtksignal.c:
5901         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5902         
5903 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5904         
5905         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5906         to determine if a window is the focus widget within
5907         its toplevel.
5908
5909         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5910         to be boolean.
5911
5912         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5913         of the case where the container CAN_FOCUS to here instead
5914         of having it in each individual move-the-focus place.
5915
5916         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5917         focusing to be geometric in a much more obvious sense. Arrowing
5918         around is still non-intuitive because it isn't perfect and
5919         because entries, etc, grab the arrow keys, but it at least
5920         usually will do what you expect now.
5921         
5922         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5923         file.
5924
5925         * gtk/gtknotebook.c: Change tabs to be a single item in
5926         the focus chain. Make movement of focus on tabs with arrow
5927         keys wrap around.
5928         
5929         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5930         CHECK_FIND_CHILD macro to give informative error messages
5931         instead of silent returns.
5932
5933         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5934         flag since we handle GdkReturn on the tabs.
5935
5936         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5937         windows rather than sending expose events directly.
5938
5939         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5940         definition for GtkNotebookPage into .c file, since it is private.
5941
5942         * gtk/testgtk.c (create_notebook): Add option for 
5943         testing borderless notebook.
5944
5945         * gtk/testgtk.c (page_switch): Removed egregious poking
5946         around in GTK+ internals.
5947
5948         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5949
5950         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5951         properly through gtk_clist_focus. Make the title headers a
5952         single item in the tab-focus chain, and make left-right wrap
5953         around.
5954
5955         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5956         focus method so that wrapping around works properly.
5957
5958         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5959         that is handled for the widget now. 
5960
5961 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5962
5963         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5964         widgets as TOPLEVEL.
5965
5966         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5967         TOPLEVEL widgets are containers.
5968
5969         * gtk/gtkinvisible.h: Remove useless include.
5970
5971 2000-12-11  Havoc Pennington  <hp@redhat.com>
5972
5973         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5974         Handle chopping off \r\n and 0x2029 in addition to \n before
5975         passing to PangoLayout
5976
5977         * gtk/gtkimcontextsimple.c
5978         (gtk_im_context_simple_get_preedit_string): 
5979         return an empty string if no match is pending
5980
5981         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5982         assertion that the returned preedit string was sane
5983
5984         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5985         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5986         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5987
5988 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5989
5990         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5991         Fix up finalizer to chain to its parent.
5992
5993 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5994
5995         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5996         Clearified the difference between the keyboard types. Wrote a note
5997         about the magic sysrq key to get out of raw mode.
5998
5999 2000-12-09  James Henstridge  <james@daa.com.au>
6000
6001         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
6002         member to hold masks for detecting the start of a protocol packet.
6003         (mouse_devs): add packet start masks for ps2 and ms device types.
6004         Left the mask for fidmour blank, as I have no idea what it should
6005         be.
6006         (handle_mouse_io): skip bytes until we get to the start of a
6007         packet.  My Logitech mouse seems to be passing an extra NULL pad
6008         byte, and GPM does a similar thing here.
6009         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
6010         this is the ms mouse driver.
6011         (gdk_fb_mouse_ms_packet): fix up button handling, which was
6012         completely broken except for button1.  It was checking the wrong
6013         bit in the packet for the status of the right mouse button, and
6014         wrongly assuming right == button2 rather than 3.  I fixed that and
6015         also added support for middle button (button2).
6016
6017 2000-12-08  Havoc Pennington  <hp@redhat.com>
6018
6019         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
6020         that cause a segfault on text insertion
6021
6022         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
6023         warning
6024
6025         * gtk/gtktextiter.c (test_log_attrs): use
6026         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
6027
6028         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
6029         Get log attrs for a line, using a cache stored on the buffer
6030         
6031         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
6032         reported by Jeff Franks
6033
6034 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6035
6036         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
6037         /dev/ttyS0 -> /dev/mouse
6038
6039 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6040
6041         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
6042         Added dummy gdk_fontset_load.
6043
6044 2000-12-08  Alexander Larsson  <alexl@redhat.com>
6045
6046         * docs/README.linux-fb:
6047         * docs/Makefile.am:
6048         Initial GtkFB docs.
6049         
6050         * gdk/linux-fb/Makefile.am:
6051         Define GDK_DATA_PREFIX.
6052
6053         * gdk/linux-fb/gdkmain-fb.c:
6054         Fix typo.
6055         Change default display to /dev/fb0.
6056
6057         * gdk/linux-fb/gdkpango-fb.c:
6058         Add $(prefix)/share/fonts/ to font path.
6059         
6060 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
6061
6062         * gdk/linux-fb/gdkkeyboard-fb.c:
6063         New file containing the abstracted keyboard driver. Most code
6064         taken from gdkinput-ps2.c
6065
6066         * gdk/linux-fb/gdkinput-ps2.c:
6067         Removed file.
6068         
6069         * gdk/linux-fb/Makefile.am:
6070         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
6071
6072         * gdk/linux-fb/gdkcolor-fb.c:
6073         display->fb was renamed to display->fb_fd.
6074
6075         * gdk/linux-fb/gdkcursor-fb.c:
6076         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6077
6078         * gdk/linux-fb/gdkinput.c:
6079         Moved gdk_input_init here from gdkinput-ps2.c
6080
6081         * gdk/linux-fb/gdkmain-fb.c:
6082         display->fb was renamed to display->fb_fd.
6083         Now the tty and the console is opened here instead
6084         of in the keyboard driver. Also check GDK_VT to see what
6085         tty to open.
6086         Move gdk_beep () here from gdkinput-ps2.c
6087         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6088
6089         * gdk/linux-fb/gdkmouse-fb.c:
6090         Add header.
6091         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6092         Return correct keyboard modifiers.
6093         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
6094
6095         * gdk/linux-fb/gdkprivate-fb.h:
6096         Add tty and vt info to display.
6097         Add orignal modeinfo storage to display
6098         Update global functions
6099
6100         * gdk/linux-fb/gdkwindow-fb.c:
6101         Added gdk_fb_window_find_focus().
6102         gdk_mouse_get_info -> gdk_fb_mouse_get_info
6103
6104 2000-12-07  Havoc Pennington  <hp@pobox.com>
6105
6106         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
6107         function, noticed by Alex
6108
6109 2000-12-06  Elliot Lee  <sopwith@redhat.com>
6110
6111         * configure.in: Detect freetype properly
6112
6113         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
6114         above.
6115
6116 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6117
6118         * gdk/linux-fb/Makefile.am:
6119         Add gdkmouse-fb.c
6120         
6121         * gdk/linux-fb/gdkmouse-fb.c:
6122         New file. Abstracted the mouse drivers a bit.
6123
6124         * gdk/linux-fb/gdkcursor-fb.c:
6125         The cursor hide/show functions was moved here from gdkinput-ps2.c.
6126
6127         * gdk/linux-fb/gdkinput-ps2.c:
6128         Removed old mouse handling code. Moved cursor handling code
6129         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
6130         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
6131         gdk_mouse_get_info.
6132
6133         * gdk/linux-fb/gdkmain-fb.c:
6134         Pass NULL pointers for x,y in gdk_mouse_get_info call.
6135
6136         * gdk/linux-fb/gdkprivate-fb.h:
6137         Removed public gdk_fb_find_common_ancestor, added and renamed
6138         functions for the new mouse handling code.
6139
6140         * gdk/linux-fb/gdkwindow-fb.c:
6141         Moved gdk_fb_window_send_crossing_events here. added global
6142         variable gdk_fb_window_containing_pointer. made
6143         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
6144         renamed to gdk_mouse_get_info.
6145
6146 2000-12-06  Alexander Larsson  <alexl@redhat.com>
6147
6148         * gdk/linux-fb/gdkevents-fb.c:
6149         Update to match latest gmain/gsource changes.
6150
6151         * gdk/linux-fb/gdkinput-ps2.c:
6152         Bogus gdk_keymap_get_entries_for_keycode implementation so that
6153         it links. Will be implemented later.
6154
6155 2000-12-03  Havoc Pennington  <hp@pobox.com>
6156
6157         * gdk/Makefile.am: add gdkkeys.[hc]
6158
6159         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
6160         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
6161
6162         * acconfig.h, configure.in: add checks and command line options
6163         for XKB
6164
6165         * gdk/x11/gdkkeys-x11.c: Implement the above functions
6166         
6167         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
6168         and group in the key event
6169
6170         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
6171         field with the low-level hardware key code, and a group
6172         field with the keyboard group
6173
6174         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
6175         and declare a couple globals used for keymap handling
6176         
6177         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
6178         hold down Shift-Control and type a hex number to get a Unicode 
6179         character corresponding to the hex number
6180         (gtk_im_context_simple_get_preedit_string): Fix cursor position
6181         (return bytes not chars)
6182
6183 2000-12-05  Elliot Lee  <sopwith@redhat.com>
6184
6185         * gdk/gdkcolor.h: Make GdkColor specify element sizes
6186         to avoid waste on 64-bit platforms.
6187
6188 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
6189
6190         * INSTALL: Fix link to PNG home, remove reference
6191         to fribidi.
6192
6193         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
6194         
6195         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
6196         tested.)
6197
6198         * gtk/gtkcheckmenuitem.c: Permanently turn on
6199         always_show_toggle.
6200
6201         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
6202         be NULL. (Vladimir Klebanov, #26545)
6203
6204         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
6205         some signed/unsigned comparison problems. (#6510,
6206         David Kaelbling)
6207
6208         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
6209         return type to boolean (Oskar Liljeblad, #18648)
6210
6211 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6212
6213         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
6214         Remove bogus colormap setting.
6215
6216 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6217
6218         * gdk/linux-fb/gdkcolor-fb.c:
6219         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
6220
6221         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
6222         Must set colormap.
6223         
6224 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
6225
6226         * docs/tutorial/gtk-tut.sgml: DND updates
6227
6228 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
6229
6230         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6231         Remove old debug g_warning().
6232         (gdk_fb_draw_drawable): The src argument can be either a wrapper
6233         or an implementation, just pass the implementation to draw_drawable_2.
6234         
6235         * gdk/linux-fb/gdkprivate-fb.h:
6236         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
6237
6238         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6239         clear and invalidate area when window is destroyed.
6240         (send_map_events): Remove old commented out code.
6241
6242 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6243
6244         * gdk/linux-fb/gdkpango-fb.c:
6245         Use italic instead of oblique in font aliases.
6246         
6247         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
6248         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
6249         other unsupported functions.
6250
6251 2000-12-04  Havoc Pennington  <hp@redhat.com>
6252
6253         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
6254
6255         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
6256
6257         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
6258
6259         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
6260         hack to avoid infinite loops (synthetic expose event) - 
6261         Owen has more appropriate fixes in a branch he'll check in later.
6262
6263         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6264         separator, CR, and CRLF as line ends
6265
6266         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6267         into lines using pango_find_paragraph_boundary(); other bits of
6268         the widget are still going to be broken if the boundary isn't '\n'
6269         though
6270
6271 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6272
6273         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6274         multiply.
6275
6276         * gdk/linux-fb/gdkpango-fb.c:
6277         Copied some 26.6 scaling macros from pango to clean up the rounding.
6278         (pango_fb_font_get_glyph_info): Correct sign on x value.
6279
6280         * gdk/linux-fb/gdkprivate-fb.h:
6281         Removed unreferenced external functions.
6282
6283         * modules/linux-fb/Makefile.am: Use ` instead of '.
6284
6285         * modules/linux-fb/basic.c:
6286         Remove dead code. In particular the dummy lang engine which broke all
6287         pango layouts in GtkFB. Don't include tables-big.i anymore.
6288
6289         * modules/linux-fb/tables-big.i:
6290         Upgrade to latest version from pango. Left for reference, basic_ranges
6291         moved to basic.c.
6292         
6293 2000-12-04  Havoc Pennington  <hp@redhat.com>
6294
6295         Fix bugs Alex found:
6296         
6297         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6298         to "draw"
6299
6300         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6301
6302         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6303
6304         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6305         implementation in here, apparently the expose() implementation was
6306         dead code.
6307
6308 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6309
6310         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6311         Return positive descent.
6312
6313 2000-12-02  Havoc Pennington  <hp@pobox.com>
6314
6315         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6316         method and signal
6317         
6318         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6319         calls gdk_window_process_updates() to push the exposes through
6320         (gtk_widget_class_init): No more draw signal, no
6321         gtk_widget_real_draw()  
6322         
6323         * gtk/gtkbin.c (gtk_bin_draw): remove
6324
6325         * gtk/gtkbox.c (gtk_box_draw): remove
6326
6327         * gtk/gtkbutton.c (gtk_button_draw): remove
6328
6329         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6330
6331         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6332
6333         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6334
6335         * gtk/gtkclist.c (gtk_clist_draw): remove
6336
6337         * gtk/gtkentry.c (gtk_entry_draw): remove
6338
6339         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6340
6341         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6342
6343         * gtk/gtkframe.c (gtk_frame_draw): remove
6344
6345         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6346
6347         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6348
6349         * gtk/gtklayout.c (gtk_layout_draw): remove
6350
6351         * gtk/gtklist.c (gtk_list_draw): remove
6352
6353         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6354
6355         * gtk/gtkmenu.c (gtk_menu_draw): remove
6356
6357         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6358
6359         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6360
6361         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6362
6363         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6364
6365         * gtk/gtkpacker.c (gtk_packer_draw): remove
6366
6367         * gtk/gtkrange.c (gtk_range_draw): remove
6368
6369         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6370
6371         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6372
6373         * gtk/gtktable.c (gtk_table_draw): remove
6374
6375         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6376
6377         * gtk/gtktext.c (gtk_text_draw): remove
6378
6379         * gtk/gtktextview.c (gtk_text_view_draw): remove
6380
6381         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6382
6383         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6384
6385         * gtk/gtktree.c (gtk_tree_draw): remove
6386
6387         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6388
6389         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6390
6391         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6392
6393         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6394
6395         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6396
6397         * gtk/gtkwindow.c (gtk_window_draw): remove
6398
6399 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6400
6401         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6402         a GtkToggleButton is both insensitive and active, it was being
6403         drawn by the GtkButton draw handler which doesn't check the
6404         state. Now it's calling gtk_toggle_button_paint instead.
6405         
6406 2000-12-01  Havoc Pennington  <hp@redhat.com>
6407
6408         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6409         dangling pointers to the appearance attributes from the 
6410         line display
6411
6412         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6413         width/height to mean "full width/height of drawable"
6414
6415         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6416         click to select word/line
6417         
6418         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6419         when getting log attrs. Get a slice, so that pixmaps and stuff
6420         are properly handled.
6421
6422         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6423         paste into the selection (replaces selection now, previously
6424         crashed or added to selection). Reveals longstanding btree bug -
6425         select multiple lines, middle-click on the selection, boom. This
6426         isn't related to my changes though.
6427
6428         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6429         PangoLogAttrs changes
6430         (gtk_entry_move_backward_word): ditto
6431
6432         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6433         functions return bool whether the iter moved onto a
6434         dereferenceable position.
6435  
6436         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6437         functions for motion in terms of display lines.
6438
6439         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6440         get the buffer a mark is inside
6441         
6442 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6443
6444         * gdk/linux-fb/Makefile.am:
6445         * modules/linux-fb/Makefile.am:
6446         Freetype 2 final uses freetype-config
6447
6448         * gdk/linux-fb/gdkpango-fb.c:
6449         Upgrade to use Freetype 2 final.
6450         More flexible support for font aliases, this also fixes a bug with
6451         GtkFontSelector, as the aliases must be visible in the font/family list,
6452         or GtkFontSelector reads uninitialized memory.
6453
6454 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6455
6456         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6457         XGetIMValues to properly terminate variable argument list, and do
6458         NULL return check for ic_values and xim_styles.
6459
6460         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6461         Restore preedit state after XmbResetIC().
6462         
6463         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6464         XvaCreateNestedList() should take XvaNestedList, but not
6465         XvaNestedList*.
6466
6467         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6468         preedit_draw_callback, preedit_caret_callback): Match
6469         "preedit-changed" signal name to "preedit_changed" to be
6470         consistent to the spec.
6471
6472         * gtk/gtkimcontextsimple.c (check_table):
6473         Match "preedit-changed" to "preedit_changed" to be consistent
6474         to the spec.
6475
6476 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6477
6478         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6479         gc->clip_region == NULL>
6480
6481 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6482
6483         Changes by Hans Breuer:
6484         
6485         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6486         Dont't use negative width and height as max_hints. This fixes
6487         Owen's recent testgtk changes for win32.
6488
6489         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6490         gdk_win32_hdc_release): These are exported and may be called with
6491         other drawable types than our GdkDrawableImplWin32 (?).
6492
6493         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6494         so always #define USE_BACKING_STORE.
6495
6496         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6497         of printf for debugging output.
6498
6499         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6500         
6501         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6502
6503         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6504         declaration.
6505
6506         * gtk/gtktexttypes.h: Ditto.
6507
6508         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6509         (GDK_VoidSymbol) also if in case of arg check failure.
6510
6511         * gtk/gtkimcontextsimple.c
6512         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6513         position to the pointer, but to the variable it points to.
6514
6515         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6516
6517         * gtk/gtk.def: Updates.
6518
6519 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6520
6521         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6522         GTK_TYPE_TREE_MODEL.
6523
6524 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6525
6526         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6527         Set the size of the font from the description.
6528         (gdk_text_width): Gross hack that calculates the width
6529         of text by text_length * size/2. This is necessary because
6530         GtkLabel does some ugly gtk_string_width call to calculate
6531         an good size.
6532         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6533
6534 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6535
6536         * docs/tutorial/gtk-tut.sgml: DND updates
6537
6538 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6539
6540         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6541         If you pass width or height == 0 to gdk_window_clear_area they
6542         should be calculated from the window size.
6543
6544 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6545
6546         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6547         a grab, but no grab-cursor, use the cursor from the grabbed
6548         window. (gdk_fb_window_send_crossing_events): Send normal
6549         enter/leave notifications if grab and owner_events == TRUE.
6550
6551 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6552
6553         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6554         Do implicit button grabs, even if the window doesn't
6555         want the event.
6556         (gdk_fb_window_send_crossing_events): If there is a
6557         grab, only the grabbed window gets normal enter/leave
6558         notifications. On ungrab go from grabbed window to current.
6559         Don't send any notification to b when propagating from c -> b.
6560         If setting a grab on window, don't set prev_window.
6561         (handle_mouse_input): Send enter/leave events to the window the
6562         mouse is over, not the grabbed one.
6563         
6564 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6565
6566         * gdk/gdkregion-generic.c: Zap warning.
6567         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6568         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6569
6570 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6571
6572         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6573         The cursor should be hidden if it is part of either the
6574         source or destination region. Not only if it is in both.
6575         (gdk_window_set_transient_for): Silence warnings.
6576
6577 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6578
6579         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6580         The default mode in X is Pie Arcs, therefore that is
6581         what Gtk+ uses.
6582
6583 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6584
6585         * gdk/linux-fb/gdkinput-ps2.c:
6586         Implement correct EnterNotify/LeaveNotify:
6587         (gdk_fb_window_send_crossing_events): New function that sends
6588         all GdkCrossingEvents from the last mouse-window to the specified
6589         destination.
6590         (gdk_fb_window_visibility_crossing): Removed function.
6591         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6592         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6593         instead of gdk_window_get_pointer() for better readability.
6594
6595         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6596         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6597
6598         * gdk/linux-fb/gdkprivate-fb.h:
6599         removed gdk_fb_window_visibility_crossing, added
6600         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6601
6602         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6603         New function that finds the least common ancestor of two windows.
6604         (gdk_window_show, gdk_window_hide):
6605         Use gdk_fb_window_send_crossing_events.
6606         (gdk_fb_window_move_resize): Send configure events to toplevel
6607         windows. Use gdk_fb_window_send_crossing_events.
6608
6609 2000-11-27  Havoc Pennington  <hp@redhat.com>
6610
6611         * gtk/gtkprivate.h (enum): Remove a trailing comma
6612
6613 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6614
6615         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6616         the "changed" callback of the adjustment.  We need to redraw the
6617         spin button's arrows when the adjustment's range changes.
6618         (adjustment_changed_cb): Draw the arrows.
6619         (gtk_spin_button_value_changed): Draw the arrows.
6620
6621 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6622
6623         * gdk/linux-fb/gdkselection-fb.c:
6624         Initial selection implementation.
6625
6626         * gtk/gtkselection.c:
6627         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6628         requestor in gtk_selection_request.
6629         
6630         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6631         Added gdk_selection_property atom.
6632
6633         * gdk/linux-fb/gdkprivate-fb.h:
6634         Export _gdk_selection_window_destroyed.
6635         Removed mask_off_x/y from GdkCursorPrivateFB.
6636         Removed hbearing, added top, left to PangoFBGlyphInfo.
6637
6638         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6639         Call _gdk_selection_window_destroyed
6640         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6641         the root window has been created.
6642         (static_dx_hack, static_dy_hack, compare_draw_rects,
6643         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6644         in region. They are already sorted. Instead just traverse them in
6645         reverse if draw_direction < 0.
6646         
6647         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6648         Double-clicks must be sent after the normal button_press.
6649         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6650         
6651         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6652         Pass _gdk_fb_screen_gc instead of NULL.
6653
6654         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6655         Initialize gdk_selection_property.
6656         (gdk_event_make): Remove unused code.
6657
6658         * gdk/linux-fb/gdkcursor-fb.c:
6659         Make the pixmap for the cursor the same size as the mask. Also remove
6660         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6661         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6662         Now the whole cursor is visible.
6663
6664         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6665         Fix bug where xdest+height instead of ydest+height was used
6666         to calculate if the source and dest overlapped. This fixes the
6667         redraw bug when the main window in testgtk was scrolled when
6668         partially covered by a tall window.
6669         Copy rectangles in region in order depending on draw_direction.
6670         Also moved the draw_direction flipping of start_y and end_y into
6671         the gc functions, as this might not be what all of them want.
6672         (gdk_fb_draw_lines): Support dashed lines.
6673         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6674         so that the text is positioned correctly (was 1 pixel high).
6675
6676         gdk/linux-fb/gdkgc-fb.c:
6677         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6678         all lines were drawn a pixel to short. Also checked the default of
6679         the rest of the values, and they're the same as X now.
6680
6681         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6682         Clean up pixel positioning of the glyphs. Just use bgy->top and
6683         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6684         to all divisions to get correct rounding behaviour.
6685
6686         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6687         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6688         Moved start_y/end_y flip into draw_drawable implementations.
6689         Flip also x rendering when draw_direction < 0.
6690         Remove unneccesary multiply with draw_direction.
6691
6692 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6693
6694         * docs/tutorial/gtk-tut.sgml:
6695           - get rid of gtk_toggle_button_toggled FUD
6696           - start DND section - needs work - based on:
6697                 http://wolfpack.twu.net/docs/gtkdnd/
6698
6699 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6700
6701         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6702         Correct calculation of font metrics. Now GtkEntrys have sane
6703         size.
6704
6705 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6706
6707         * gdk/gdktypes.h:
6708         Add new type GdkSpan
6709         
6710         * docs/reference/gdk/gdk-sections.txt,
6711         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6712         gdk/gdkregion.h:
6713         Implement and document gdk_region_spans_intersect_foreach.
6714
6715         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6716         Add new file gdkrender-fb.c which contains all core
6717         rendering code.
6718         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6719         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6720         (optimized rectangle fillers).
6721
6722         * gdk/linux-fb/gdkdrawable-fb2.c:
6723         Move all rendering code to gdkrender-fb.c.
6724         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6725         Use the new span intersection functions in gdk_fb_fill_spans.
6726         gdk_fb_draw_rectangle() clips filled rectangles and calls
6727         gc->fill_rectangle with the result.
6728         gdk_fb_fill_spans() gets extra argument "sorted".
6729
6730         * gdk/linux-fb/gdkevents-fb.c:
6731         Remove unused includes and defines.
6732         New function gdk_fb_get_time() to get correct time for events.
6733
6734         * gdk/linux-fb/gdkinput-ps2.c:
6735         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6736         Make sure to set the time of all events.
6737
6738         * gdk/linux-fb/gdkmain-fb.c:
6739         Use gdk_fb_get_time ().
6740
6741         * gdk/linux-fb/gdkprivate-fb.h:
6742         New virtual GC calls: fill_span & fill_rectangle.
6743         Export gdk_fb_get_time().
6744         gdk_fb_fill_spans() gets extra argument "sorted".
6745
6746         * gdk/linux-fb/mi*.c:
6747         Use GdkSpan instead of GdkRectangle.
6748         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6749         from XFree 4 source)
6750         
6751 2000-11-22    <jrb@redhat.com>
6752
6753         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6754         reversing the order in an if statement will do.  Doing so managed
6755         to make the treemodelsort half work.  Other half will follow after
6756         I get the insert function fully fixed.
6757
6758 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6759         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6760         more than 2 bits. Besides, I need to implement an evil hack. :)
6761
6762 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6763
6764         * docs/tutorial/gtk-tut.sgml: minor corrections
6765
6766 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6767         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6768           convert to and from relative path's and iters.
6769
6770         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6771           testing sorting functions a bit better.  Currently broken -- will
6772           fix in morning.
6773
6774 2000-11-20  Havoc Pennington  <hp@redhat.com>
6775
6776         * gtk/gtkwidget.c: Documented a bunch of functions in here
6777         (gtk_widget_realize): Warn if you try to realize
6778         a widget with no parent that isn't a toplevel
6779         (gtk_widget_intersect): return a gboolean
6780
6781 2000-11-20  Havoc Pennington  <hp@redhat.com>
6782
6783         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6784         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6785         scrolling to be implemented in GDK to finish. Also, right now
6786         we just size_allocate all children on every layout change,
6787         which is pretty lame. Test commented out of testtext.c, 
6788         until it works better.
6789
6790 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6791
6792         * gdk/linux-fb/gdkdrawable-fb2.c:
6793         Removed unused arguments from gdk_fb_drawable_get_pixel().
6794
6795         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6796         Renamed fidur specific mouse packet data in MouseDevice to
6797         generic. Used it in ps2 mouse handling code to avoid blocking
6798         reads.
6799
6800 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6801
6802         * demos/gtk-demo/main.c: Changed to have the list become
6803         non-italic when the demo window is destroyed through an external
6804         event (like a close button).  Doing so found three bugs in the
6805         widget.
6806
6807         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6808
6809         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6810         we actually set the cell.
6811
6812         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6813
6814         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6815         free a leaked path.  Thanks memprof.
6816
6817 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6818
6819         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6820         off-by-one error when destroying allocated segments
6821         on failure. (Elliot)
6822
6823 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6824
6825         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6826         memleaks found by Evan Martin.
6827
6828 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6829
6830         * Released 1.3.2
6831         
6832         * NEWS: Updates for 1.3.2
6833
6834 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6835
6836         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6837         but in general for window system specific events.
6838
6839         * gtk/gtk.def
6840         * gtk/makefile.mingw.in
6841         * gtk/makefile.msc.in: Update.
6842         
6843         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6844
6845 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6846
6847         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6848         distribute gtk.immodules.
6849
6850         * gtk/Makefile.am (install-data-local): Don't install the
6851         gtk.immodules file created for the uninstalled modules;
6852         instead run gtk-query-immodules after install
6853
6854 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6855
6856         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6857         -rpath to the right install location.
6858
6859         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6860         -export-dynamic.
6861
6862         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6863         properly.
6864
6865 2000-11-15  Havoc Pennington  <hp@pobox.com>
6866
6867         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6868         patch from Mikael Hermansson to temporarily stop blinking while
6869         the user is using the keyboard to type or navigate. 
6870
6871         Also, when blinking, stay on for longer than we stay off. Also,
6872         return from start_cursor_blink if !cursor_visible, to save
6873         checking that flag all over the place before we call
6874         start_cursor_blink.
6875
6876 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6877
6878         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6879         only contain a "fontset" line, which is now ignored.
6880
6881         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6882         double-click-to-select-word work.
6883         
6884 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6885
6886         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6887         Don't move back one char when we are actually at the end of the 
6888         paragraph.
6889
6890 2000-11-15  Robert Brady  <robert@suse.co.uk>
6891
6892         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6893         'o' < 'p'.
6894         
6895         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6896         bind_textdomain_codeset.
6897
6898         (gtk_init_check): Make the warning about translating default:LTR
6899         sterner.
6900         
6901 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6902
6903         * **/Makefile.am : remove unecessary rules for win32-specific
6904         config-substituted targets. If you want these rules, use
6905         --enable-maintainer-mode (called automatically by autogen.sh).
6906         Stops a lot of unneccessary make-time warnings.
6907
6908         * gtk/gtktext{layout,display}.c: Factor in total width as
6909         well as screen when figuring alignment for word-wrap as well as
6910         no wrap; this is necessary to handle lines that cannot be wrapped
6911         at all.
6912
6913 2000-11-15  Havoc Pennington  <hp@redhat.com>
6914
6915         * gtk/testtext.c: Implement essential color cycling feature
6916
6917 2000-11-15  Havoc Pennington  <hp@redhat.com>
6918
6919         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6920         when we invalidate the main window.
6921
6922         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6923         GtkTextView will now invalidate the side windows for us when text
6924         changes.
6925
6926 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6927
6928         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6929         unconditionally, since we may need to update the horizontal
6930         scrollbars even if the height didn't change.
6931
6932         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6933         the extra attrs, since some of them affect size.
6934
6935         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6936         x_offset correctly.
6937
6938 2000-11-15  Havoc Pennington  <hp@redhat.com>
6939
6940         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6941         don't move the first line out into the margin, instead move the
6942         whole paragraph in order to make space for the first line within 
6943         the margin
6944
6945 2000-11-15  Havoc Pennington  <hp@redhat.com>
6946
6947         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6948         xoffset in addition to yoffset, so horizontal scrolling doesn't
6949         break redraws
6950
6951 2000-11-15  Havoc Pennington  <hp@redhat.com>
6952
6953         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6954         from the cursor
6955         (render_layout_line): fix reversed test that caused weird
6956         underlines to get drawn
6957
6958 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6959
6960         * gdk/linux-fb/gdkprivate-fb.h:
6961         Fix debug macros.
6962         
6963 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6964
6965         * gdk/linux-fb/gdkprivate-fb.h:
6966         Added virtual functions set_pixel, get_color,
6967         fill_span and draw_drawable to the GC.
6968         Added global _gdk_fb_screen_gc to use instead of
6969         NULL when drawing to the screen.
6970         Added _gdk_fb_gc_calc_state() prototype.
6971
6972         * gdk/linux-fb/gdkgc-fb.c:
6973         Call _gdk_fb_gc_calc_state() on any gc state change.
6974
6975         * gdk/linux-fb/gdkglobals-fb.c:
6976         Add _gdk_fb_screen_gc
6977                 
6978         * gdk/linux-fb/gdkdrawable-fb2.c:
6979         _gdk_fb_gc_calc_state() calculates best functions
6980         for the GC state and depth.
6981         Moved bpp specialized code to separate functions.
6982         Added optimized 24 bpp AA draw_drawable.
6983
6984         * gdk/linux-fb/gdkevents-fb.c:
6985         Silence gcc warning.
6986
6987         * gdk/linux-fb/gdkimage-fb.c:
6988         Use _gdk_fb_screen_gc
6989
6990         * gdk/linux-fb/gdkwindow-fb.c:
6991         Init and use _gdk_fb_screen_gc
6992
6993         * gdk/linux-fb/mitypes.h:
6994         Remove unused types.
6995
6996 2000-11-14  Havoc Pennington  <hp@pobox.com>
6997
6998         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6999         to pixels
7000
7001 2000-11-14  Havoc Pennington  <hp@pobox.com>
7002
7003         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
7004
7005         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
7006         unknown char, no real reason we were using a variable. 
7007         Remove gtk_text_unknown_char variable. Fix all the text widget
7008         files accordingly.
7009
7010         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
7011         since the Unicode spec seems to prefer that character for our
7012         purposes.
7013
7014 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
7015
7016         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
7017         value of g_getenv() isn't freeable, so g_strdup it.
7018
7019         * modules/input/inuktitut.c: Inuktitut input method.
7020
7021         * modules/input/Makefile.am: Build this.
7022         
7023 2000-11-14  Elliot Lee  <sopwith@redhat.com>
7024
7025         * gtk/Makefile.am: Install gtk.immodules, needed for operation
7026         of gtk programs.
7027
7028 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
7029
7030         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
7031         reversed > that was causing Home to go to end of previous line.
7032
7033         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
7034         modified-keypresses (leave for bindings.)
7035
7036         * modules/input/Makefile.am: Remove useless -export-dynamic
7037         from module LDFLAGS.
7038
7039 2000-11-14  Havoc Pennington  <hp@redhat.com>
7040
7041         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
7042         higher.
7043
7044         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
7045         account. Also, render rise, underline, background, etc. for
7046         pixbufs as well as text. Also, draw underlines one pixel higher.
7047
7048         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
7049         PangoAttribute for the rise, so it gets drawn properly. Also,
7050         add the GtkTextAppearance attribute for pixbuf/widget segments
7051         as well; we should go ahead and have rise, underline, background,
7052         stipple work for those
7053
7054         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
7055         Pango
7056
7057 2000-11-15  Tor Lillqvist  <tml@iki.fi>
7058
7059         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
7060
7061         * gtk/gtk.def: Update.
7062
7063         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
7064         included.
7065         (gtk_rc_get_im_module_file): Use run-time installation directory
7066         on Win32.
7067
7068         * gdk/win32/rc/gdk.rc: Remove.
7069         * gdk/win32/rc/gdk.rc.in: New file.
7070         * gdk/win32/rc/Makefile.am: New file
7071         * gdk/win32/Makefile.am: Corresponding changes.
7072
7073         * gtk/gtk.rc: Remove.
7074         * gtk/gtk-win32.rc.in: New file.
7075         * gtk/Makefile.am: Corresponding changes.
7076
7077         * configure.in: Corresponding changes.
7078
7079         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
7080         has a built gtkcompat.h. Developers using CVS code on Win32 can
7081         hand-edit it from gtkcompat.h.in.
7082
7083         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
7084         gtkcompat.h from gtkcompat.h.win32.
7085
7086 2000-11-14  Havoc Pennington  <hp@redhat.com>
7087
7088         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
7089         to default to GDK_ACTION_MOVE if the drag is within a single
7090         widget. Defaults to GDK_ACTION_COPY between widgets.
7091
7092 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
7093
7094         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
7095
7096         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
7097
7098         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
7099         srcdir != builddir
7100
7101         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
7102
7103         * configure.in (GTK_VERSION): Up to 1.3.2
7104
7105         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
7106         gtkimcontextxim.h
7107
7108         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
7109         missing doc comment.
7110
7111 2000-11-14  Alexander Larsson  <alexl@redhat.com>
7112
7113         * modules/linux-fb/basic.c:
7114         Use the glib iconv wrappers.
7115
7116 2000-11-13  Havoc Pennington  <hp@pobox.com>
7117
7118         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
7119         still more bugs.
7120
7121         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
7122         scroll the GdkWindows before realization.
7123
7124 2000-11-13  Havoc Pennington  <hp@redhat.com>
7125
7126         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
7127         where GC didn't always get updated properly
7128
7129         * demos/gtk-demo/textview.c (create_tags): Use subattributes
7130         of fonts instead of setting the entire font
7131
7132         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
7133         setting entire font
7134
7135         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
7136
7137         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
7138         a bunch of individually-settable font attributes. You can still 
7139         use the "font" and "font_desc" args, they just set all the font
7140         attributes at once.
7141
7142 2000-11-13 Elliot Lee <sopwith@redhat.com>
7143
7144         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
7145
7146 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
7147
7148         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
7149         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
7150
7151         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
7152         work better.
7153
7154 2000-11-13  Havoc Pennington  <hp@redhat.com>
7155
7156         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
7157         the module file.
7158
7159         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
7160         dest->language
7161
7162         * gtk/testtext.c: Test pixels above/below/inside paragraphs
7163         settings
7164
7165         * gtk/gtktextview.c: Implement object args and setters/getters for
7166         all the aspects of the GtkTextAttributes that are not set from
7167         GtkWidget attributes. This is spacing, justification, margins,
7168         etc.
7169
7170         (gtk_text_view_set_arg)
7171         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
7172         args
7173         (gtk_text_view_class_init): Add args for justify, left_margin,
7174         right_margin, indent, and tabs
7175         
7176
7177         * gtk/gtktextlayout.c (set_para_values): fix to display indent
7178         attribute properly
7179
7180         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
7181         replace with indent attribute
7182
7183         * gtk/gtktextlayout.c (set_para_values): multiply indent by
7184         PANGO_SCALE
7185
7186         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
7187         rearranging code to do that
7188         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
7189         i.e. don't subtract the top_margin first, just to keep
7190         all margin-futzing in one place.
7191
7192         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
7193
7194         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
7195         special case of last line, Pango now handles this itself.
7196         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
7197         Y coordinate
7198         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
7199         (find_display_line_above): wasn't moving the byte index as it
7200         iterated over lines, so always returned byte 0. Also, port to use
7201         PangoLayoutIter.
7202         (find_display_line_below): same problem as
7203         find_display_line_above. Also, port to use PangoLayoutIter.
7204
7205 2000-11-13  Alexander Larsson  <alexl@redhat.com>
7206
7207         * gdk/linux-fb/*.[ch]:
7208         Massive reindent to gtk+ standard. My hands hurt.
7209
7210         * gdk/linux-fb/gdkcolor-fb.c:
7211         Move GdkColorPrivateFB from inherited to windowing_data
7212
7213         * gdk/linux-fb/gdkcursor-fb.c:
7214         _gdk_cursor_new_from_pixmap made static
7215
7216         * gdk/linux-fb/gdkdnd-fb.c:
7217         GdkDragContextPrivate moved to windowing_data
7218
7219         * gdk/linux-fb/gdkdrawable-fb2.c:
7220         Removed endian.h, use glib endianness macros instead
7221         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
7222         and GDK_DRAWABLE_IMPL_FBDATA
7223
7224         * gdk/linux-fb/gdkfont-fb.c:
7225         Add empty gdk_font_load(). Needed for linking of Gtk+.
7226
7227         * gdk/linux-fb/gdkimage-fb.c:
7228         Removed endian.h, use glib endianness macros instead
7229         Moved GdkImagePrivateFB to windowing_data
7230         gdk_image_new_bitmap didn't always allocate enough
7231         memory.
7232
7233         * gdk/linux-fb/gdkinput-ps2.c:
7234         Added semi-working support for MS serial mice.
7235
7236         * gdk/linux-fb/gdkprivate-fb.h:
7237         s/GdkWindowPrivate/GdkWindowObject/
7238         Removed GdkWindowPrivate typedef
7239         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
7240         Removed GDK_DRAWABLE_P
7241         Move GdkColorPrivateFB from inherited to windowing_data
7242         Moved GdkImagePrivateFB to windowing_data
7243
7244         * gdk/linux-fb/gdkvisual-fb.c:
7245         Removed some unused debug code.
7246
7247         * gdk/linux-fb/gdkwindow-fb.c:
7248         Use stock cursors instead of including X headers.
7249         s/GdkWindowPrivate/GdkWindowObject/
7250
7251         * gdk/linux-fb/mitypes.h:
7252         Removed unused types.
7253
7254         * modules/linux-fb/basic.c:
7255         Use the pango fribidi wrappers.
7256
7257 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7258
7259         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
7260         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
7261         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
7262         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7263         GEqualFunc where applicable.
7264         
7265         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7266         pango_font_description_equal as changed in pango.
7267         
7268         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7269
7270         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7271
7272         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7273
7274         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7275
7276         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7277
7278         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7279
7280         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7281         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7282
7283         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7284         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7285
7286 2000-11-12  Havoc Pennington  <hp@pobox.com>
7287
7288         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7289         dir to datadir/gtk+-2.0/demo
7290
7291         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7292         sorts of text widget and Pango font bugs. Urgh.
7293
7294         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7295
7296         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7297         tree that you should double click to see the demo. Fix 
7298         types of variables to reflect changed return values from 
7299         GtkTreeStore and GtkTreeViewColumn constructors.
7300
7301         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7302         newly-created buffer to prepare for GObject semantics
7303
7304         * gtk/testtext.c: don't leak the buffer with GObject semantics
7305
7306         * gtk/testtextbuffer.c: ditto
7307         
7308 2000-11-12  Havoc Pennington  <hp@pobox.com>
7309
7310         Rename this testgtk to gtk-demo to avoid confusion, and 
7311         install it so people can use it as a supplement to 
7312         the documentation.
7313         
7314         * demos/gtk-demo: Moved from demos/testgtk
7315
7316         * demos/testgtk: Removed
7317
7318         * configure.in: make Makefile in gtk-demo
7319         
7320         * demos/gtk-demo/Makefile.am: Install sample source to 
7321         datadir/gtk-demo (maybe there's a better place?), and 
7322         rename the binary to gtk-demo
7323         
7324         * demos/gtk-demo/main.c (load_file): Load installed sample
7325         source if source isn't found in pwd.
7326
7327 2000-11-09  Havoc Pennington  <hp@pobox.com>
7328
7329         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7330         argument to set the char displayed when visibility == FALSE
7331         (gtk_entry_create_layout): If !entry->visible, replace 
7332         all chars with the "invisible char"
7333
7334         * gtk/testgtk.c: Test the invisible_char deal
7335         
7336 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7337
7338         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7339         can't get a native font in the right encoding.
7340
7341 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7342
7343         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7344         respectively.
7345
7346 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7347
7348         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7349         Fix warning when moving between paragraphs.
7350
7351         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7352         delete => delete_from_cursor, insert => insert_at_cursor
7353
7354 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7355
7356         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7357
7358         * modules/input/imthai-broken.c: A Thai input method for use if
7359         Thai keys are really generating Latin1 keysyms.
7360
7361         * modules/input/Makefile.am: Build these.
7362
7363 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7364
7365         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7366         g_filename_{to,from}_utf8 now takes an extra parameter.
7367
7368         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7369         strftime into UTF-8.
7370
7371         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7372         calendars.
7373
7374         (gtk_calendar_paint_day_names): Draw day names in the right 
7375         place.
7376         
7377 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7378
7379         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7380         problem with using result of g_get_charset() backwards -
7381         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7382
7383         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7384         negative min_width/height and max_width/height to
7385         mean "requisition"; this allows setting a window
7386         to be user-resizable in only one direction easily.
7387
7388         * gtk/testgtk.c (create_main_window): Remove hard-coded
7389         usize - set a default size in the vertical direction.
7390
7391 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7392
7393         * gtk/gtkrange.c: Add some missing casts. Support 
7394         2 and 3 button clicks on the arrows to mean 
7395         "move by pages" and "jump to end". (Like gtkspinbutton)
7396
7397 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7398
7399         * gdk/win32/makefile.msc : reflect build module changes
7400
7401         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7402         from GdkPixmap*, cast implementation member instead.
7403
7404         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7405         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7406         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7407         more Gdi functions return value checking. 
7408         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7409         GdkImagePrivateWin32 *.
7410
7411         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7412         menus useable again. Add #pragma message to keep reminded on this issue.
7413         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7414         windows. This allows to enable backing store on Win32!
7415
7416         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7417         in drawable is of impl type. Correct specific type checks appropriate.
7418  
7419         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7420         GDK_WINDOW_DESTROYED before allocating new resources.
7421
7422         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7423
7424         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7425         (gdk_window_foreign_new) initialize parent handle.
7426         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7427
7428         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7429         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7430         problems (e.g. main buttons in testgtk). 
7431
7432 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7433
7434         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7435         gtk_widget_activate for GDK_Return.
7436
7437         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7438         of preedit cursor position.
7439
7440 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7441
7442         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7443         static.
7444
7445 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7446
7447         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7448         out support for multiple locales; that simple doesn't
7449         work reliably with current Xlib
7450
7451         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7452         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7453         Add support for positioning the cursor within the preedit string.
7454
7455 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7456
7457         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7458         at XIM input method module.
7459
7460         * gtk/gtktextview.c: Check for bindings after passing
7461         events to im context filter.
7462
7463 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7464
7465         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7466         empty attribute lists properly.
7467
7468 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7469
7470         * gtk/queryimmodules.c (main): Return non-zero exit
7471         status if errors were encountered querying any
7472         modules.
7473
7474         * modules/input/Makefile.am (moduledir): remove
7475         leftover bin program target.
7476
7477         * docs/make-todo: Fix typo in error message.
7478
7479 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7480
7481         * configure.in: Add modules/input/Makefile
7482
7483 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7484
7485         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7486         don't include gtkthemes.h.
7487
7488         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7489         to point
7490
7491         * gtk/Makefile.am: Add new .c and .h files, build 
7492         gtk-query-immodules and use it to create a gtk.immodules
7493         file for use of test programs.
7494
7495         * gtk/gtkpreview.c: remove extra blank line.
7496
7497 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7498
7499         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7500         Add the ability to add extra tables beyond the default
7501         one, and also the ability to have compose sequences 
7502         that are prefixes of other compose sequences. 
7503
7504         * gtk/gtkimcontextsimple.c: Export a preedit string which
7505         consists of possible candidates for keystrokes that have
7506         been entered but not yet committed.
7507
7508         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7509         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7510
7511         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7512         Add a function to add input-method switching menu items
7513         to a menu.
7514
7515         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7516         when switching input methods.
7517
7518         * gtk/gtkimcontextsimple.[ch]: Change the format of
7519         the compose table to allow compose tables of different
7520         lengths / sequence.
7521
7522 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7523
7524         * gtk/gtkimmodule.[ch]: Support routines for loading
7525         GtkIMContext implementations dynamically at runtime.
7526
7527         * modules/input/imcyrillic-translit.c: A sample input
7528         method (based on GtkIMContextSimple with an extra table),
7529         which demonstrates preedit strings and the module
7530         system for input modules
7531
7532         * gtk/queryimmodules.c: Program to query the available
7533         input modules and write the results into a file.
7534          
7535         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7536         extra config options "im_module_file" (cache file for
7537         input method modules), and "im_module_path" - path
7538         to look for modules when generating cache file.
7539
7540         This doesn't scale.
7541
7542 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7543
7544         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7545         generic code from gtkthemes into a new abstraction
7546         GtkModule which has the logic for implementing
7547         a loadable module which implements a number of 
7548         GObject types.
7549
7550 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7551
7552         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7553         a class into an interface  
7554         
7555         * gtk/gtkoldeditable.[ch]: Move the old editable
7556         implementation into here, so legacy widgets can
7557         still rely on the implemenation. GtkOldEditable
7558         exports GtkEditable. Make selection handling
7559         code use new text conversion functions (and
7560         handle UTF-8 as a side-effect). Use GtkClipboard
7561         for CLIPBOARD.
7562
7563         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7564         Adopt to match above changes.
7565
7566         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7567         avoid GtkOldEditable implementation. Restructure
7568         to reduce number of places that modify state directly.
7569         Move to GtkBindingSet. Display the preedit string.
7570         Queue recomputation of PangoLayout and scroll position
7571         to improve effiency of doing complex changes naively.
7572         Add a menu with cut/copy/paste and input method selection.
7573
7574 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7575
7576         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7577         to set preedit string and attributes; display preedit string by
7578         inserting string and attributes at cursor when creating the
7579         GtkTextLineDisplay.
7580
7581         * gtk/gtktextlayout.c: Move all conversions between byte
7582         positions in PangoLayout and GtkTextIter into new functions
7583         line_display_iter_to_index/index_to_iter that properly
7584         handle the preedit string.
7585
7586         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7587         it to return const char * (eventually will end up
7588         as GCONST char *, most likely.)
7589
7590         * gtk/gtktextview.[ch]: Handle the preedit string, call
7591         gtk_im_context_reset() as necessary, add a menu to switch
7592         input methods.
7593         
7594         * gtk/gtktextlayout.[ch]: Remove useless
7595         gtk_text_layout_get_log_attrs() function.
7596
7597 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7598
7599         * gdk/gdk.def
7600         * gtk/gtk.def: Update.
7601
7602         * gdk/win32/*.c: Add last argument to g_type_register_static()
7603         calls.
7604
7605         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7606
7607         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7608         generated by older wheel mouse drivers. Get the correct y
7609         coordinate from WM_MOUSEWHEEL messages.
7610
7611         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7612         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7613         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7614         Debugging functions.
7615
7616         * gdk/win32/gdkprivate-win32.h: Declare them.
7617
7618         * gdk/win32/gdkinput-win32.h: Add declaration for
7619         gdk_input_window_destroy().
7620
7621         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7622
7623 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7624
7625         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7626         function to help handle keeping things in sync.
7627
7628 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7629
7630         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7631         BOXED marshallers.
7632
7633         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7634         (gtk_list_store_class_init): use the new BOXED marshallers.
7635
7636         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7637         new_with_values to new_with_types.
7638         (gtk_tree_store_get_column_type): add this.
7639         (gtk_tree_store_class_init): use the new BOXED marshallers.
7640
7641         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7642         mirror some POINTER marshallers.
7643
7644 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7645
7646         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7647         allow more interesting iterators.  Also, made the lifecycle of
7648         iterators more explicit.
7649
7650         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7651
7652         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7653         types.
7654
7655 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7656
7657         * demos/testgtk/menus.c:
7658         Changes to make the new testgtk compile after
7659         gtk_menu_append was removed.
7660
7661         * gdk/linux-fb/gdkdrawable-fb2.c
7662         (gdk_fb_get_depth, gdk_fb_get_visual,
7663         gdk_drawable_impl_fb_class_init): Implement
7664         these drawable functions. Now GtkImages work again.
7665
7666         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7667
7668         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7669         
7670         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7671         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7672         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7673         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7674
7675 2000-11-08  Havoc Pennington  <hp@pobox.com>
7676
7677         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7678         visible_set args, don't know where these had gone, I thought they
7679         used to be there
7680
7681         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7682         now we can test the feature and see that it's totally broken.
7683
7684 2000-11-08  Havoc Pennington  <hp@pobox.com>
7685
7686         Make DND copy pixbufs and tags when source and target share a 
7687         tag table.
7688         
7689         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7690         in-process GTK_TEXT_BUFFER_CONTENTS target
7691         (gtk_text_view_drag_data_received): Paste from
7692         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7693
7694 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7695
7696         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7697         API changes.
7698
7699         * gtk/gtkmenu.c: Add support for scrolling menus.
7700         Remove gtk_menu_append/prepend/insert, these have been moved to
7701         gtkcompat.h as #defines.
7702
7703         * gtk/gtkcompat.h.in:
7704         Add compatibility #defines for gtk_menu_append/prepend/insert
7705
7706         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7707         GtkMenuPositionFunc gets an extra argument push_in.
7708         gtk_menu_append/prepend/insert removed.
7709         
7710         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7711         positioning behaviour to fit to scrolling menus.
7712
7713         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7714         into menuitem->submeny. That is wrong, and broke torn
7715         off submenus of torn off menus, since they were unrealized
7716         when the first menu was unrealized.
7717
7718         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7719         gtk_menu_shell_select_item() since these need to be overridden in
7720         GtkMenu.
7721
7722         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7723         positioning behaviour to fit to scrolling menus.
7724         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7725         the current item so that it is prelighted when the menu pops up.
7726         This is a workaround to the fact that the menu doesn't get the
7727         initial enter event (due to grabs).
7728
7729         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7730         s/gtk_menu_append/gtk_menu_shell_append/
7731
7732         * gtk/gtknotebook.c:
7733         s/gtk_menu_insert/gtk_menu_shell_insert/
7734
7735         * gtk/testgtk.c (create_menu, create_menus):
7736         Create the first menu with 50 items so that menu scrolling
7737         can be tested.
7738         
7739         
7740         Patch from Jonathan Blandford  <jrb@redhat.com>
7741
7742         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7743         system to handle size requests.  First, we ask what the size of
7744         the toggle is.  Then, when allocating the size, we allocate the
7745         toggle_size first.  This way we can have multiple menu-item
7746         classes w/o needing a seperate class for each.
7747
7748         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7749         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7750
7751         * gtk/gtkcheckmenuitem.c
7752         (gtk_check_menu_item_toggle_size_request): New function to handle
7753         the toggle size-request.
7754
7755 2000-11-07  Havoc Pennington  <hp@redhat.com>
7756
7757         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7758         Half-ass somewhat fix this function, so that scrolling to the
7759         insertion point works. Pango hacking is in the future to really
7760         fix it.
7761
7762         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7763         length of data, no longer used.
7764
7765         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7766         method contents in here, get rid of destroy method
7767         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7768         that were backward. Remove debug spew.
7769         (cut_or_copy): Make the clipboard work with insert_range to
7770         preserve tags and pixbufs, not just the primary selection.
7771
7772 2000-11-07  Havoc Pennington  <hp@redhat.com>
7773
7774         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7775         to gtk_text_mark_get_visible
7776
7777         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7778         bug that was generating an invalid iterator
7779
7780         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7781         ensure_char_offsets() in front of code placing the iter in an
7782         invalid state.
7783
7784         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7785         make override_location arg const
7786         (paste): Replace the selection if we paste into the 
7787         current selection
7788
7789         * gtk/gtkselection.h: Remove "GtkSelectioData"
7790         (struct _GtkSelectionData): move the definition here.
7791
7792         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7793         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7794
7795         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7796
7797         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7798         (gtk_text_buffer_insert_range_interactive): implement
7799         (gtk_text_buffer_get_tags): Remove, replaced by
7800         gtk_text_iter_get_tags()
7801
7802         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7803         limit parameter, to avoid infinite linear scan.
7804         (gtk_text_iter_backward_search): Add search limit
7805         (gtk_text_iter_forward_find_char): Add search limit
7806         (gtk_text_iter_backward_find_char): Add search limit
7807
7808 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7809
7810         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7811         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7812         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7813         gdk/linux-fb/gdkwindow-fb.c:
7814         use g_object_new() instead of g_type_create_instance() which
7815         is a private function for fundamental type implementations.
7816
7817         * gdk/linux-fb/gdkinput-ps2.c:
7818         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7819         instead just store the current modifier state. Add a (somewhat broken)
7820         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7821         Rename exported function gdk_input_ps2_get_mouseinfo to
7822         gdk_input_get_mouseinfo.
7823
7824         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7825         gdk/linux-fb/gdkwindow-fb.c:
7826         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7827         
7828
7829 2000-11-02  Havoc Pennington  <hp@redhat.com>
7830
7831         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7832         use stock buttons. Should be 100% source compatible, appropriate
7833         filesel fields now point to dialog->vbox and dialog->action_area.
7834         On the bizarre side, dialog->action_area and filesel->action_area
7835         are not the same widget.
7836         (gtk_file_selection_init): Put some padding around the selection
7837         entry, so it isn't touching the GtkDialog separator.    
7838
7839         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7840         use stock buttons, etc. Should also be source compatible.
7841         Set the dialog default title in _init not _new().
7842         
7843         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7844         Use stock buttons; don't put a button box inside the existing
7845         dialog button box. Don't bother with push/pop colormap anymore.
7846
7847         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7848         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7849         for message dialog, and necessary for the font selection and color
7850         selection with help and apply buttons.
7851         
7852         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7853         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7854         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7855         between buttons, put less padding around the action area.
7856         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7857         This will also exit the loop if the widget is hidden.
7858         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7859         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7860         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7861         special-case delete event.
7862
7863         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7864         formatting
7865         
7866 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7867
7868         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7869         button to temporarily disable position recording in the
7870         "saved position" test.
7871
7872 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7873
7874         * gtk/gtkthemes.c: added compat code that temporarily implements
7875         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7876         going to be revamped by owen's upcoming GtkModule patches, but
7877         untill then people want gtk to build, right? ;)
7878
7879 2000-11-04  Havoc Pennington  <hp@pobox.com>
7880
7881         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7882         list
7883
7884         * docs/Changes-2.0.txt: Add note about
7885         gtk_container_get_toplevels()
7886
7887         * gtk/gtktextview.h: formatting
7888         
7889         * gtk/gtktextview.c: don't start descriptions with "Returns",
7890         confuses gtk-doc
7891
7892 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7893
7894         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7895         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7896
7897 2000-11-03  Havoc Pennington  <hp@redhat.com>
7898
7899         * gtk/gtktexttagtable.c: Docs
7900         (gtk_text_tag_table_size): return a signed int
7901
7902         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7903         (gtk_text_tag_event): make the event_object a GObject
7904
7905         * gtk/gtktextview.c: Write API docs for all functions.
7906
7907         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7908         for gtk_text_view_get_window_type() called on one of the private
7909         windows.
7910
7911         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7912         directly, call get_buffer() which demand-creates a default
7913         buffer. So gtk_text_view_new() can be used to create a view with a
7914         default buffer in it, if you just want an empty text box users can
7915         put data in. Useful for GUI builders also.
7916
7917 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7918
7919         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7920         the charset encodign portion MUST be in lowercase.
7921         * gtk/gtkrc.az: added file for Azeri language
7922
7923 2000-11-03  Havoc Pennington  <hp@redhat.com>
7924
7925         Get widgets working on the btree/buffer side. Display of them 
7926         still doesn't work.
7927         
7928         * gtk/gtktextview.c: start implementing child widget stuff
7929
7930         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7931
7932         * gtk/gtktextlayout.c: handle embedded widgets
7933
7934         * gtk/gtktextdisplay.c: handle embedded widgets
7935
7936         * gtk/gtktextchild.c: Implement all the child anchor goo
7937
7938         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7939         function
7940
7941         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7942         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7943         creating a child anchor or a pixbuf segment.
7944         (gtk_text_btree_create_child_anchor): new function
7945         (gtk_text_btree_unregister_child_anchor): new function
7946
7947         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7948         allocate_child signal on GtkTextLayout
7949
7950         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7951         values
7952         (gtk_text_iter_get_child_anchor): new function
7953
7954         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7955         default handler for the changed signal, which calls
7956         gtk_text_buffer_set_modified(), instead of just always emitting
7957         changed then calling set_modified() manually. I guess this is
7958         maybe more flexible. It seems logical.
7959
7960 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7961
7962         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7963         now.
7964
7965         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7966
7967 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7968
7969         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7970         been marked static.
7971
7972 2000-11-02  Havoc Pennington  <hp@redhat.com>
7973
7974         * gtk/testgtk.c (create_labels): had a test backward
7975
7976         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7977         fields, so the dest GC ends up with the correct clip origin, 
7978         etc. Fixes a bug where colored labels didn't redraw 
7979         properly.
7980
7981 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7982
7983         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7984         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7985         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7986         Add last argument to t_type_register_static call.
7987         
7988         * gdk/linux-fb/gdkdrawable-fb2.c:
7989         Add last argument to t_type_register_static call.
7990         export the get_image drawable virtual function.
7991
7992         * gdk/linux-fb/gdkimage-fb.c:
7993         Add last argument to t_type_register_static call.
7994         rename gtk_image_get to _gdk_fb_get_image and
7995         export it for use by gdkdrawable-fb2.
7996
7997         * gdk/linux-fb/gdkprivate-fb.h:
7998         export _gdk_fb_get_image.
7999
8000         * gdk/linux-fb/gdkselection-fb.c:
8001         Add new api call stubs.
8002
8003         * gtk/Makefile.am:
8004         Missing ( in linux-fb part.
8005
8006         * modules/linux-fb/Makefile.am:
8007         Must link with gdk_pixbuf or get unresolved symbol.
8008
8009 2000-11-01  Havoc Pennington  <hp@pobox.com>
8010
8011         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
8012         GTK_TYPE_TEXT_ITER and BOXED marshallers
8013
8014         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
8015
8016         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
8017         
8018         * gtk/gtk-boxed.defs: add GtkTextIter
8019
8020         * gtk/gtkmarshal.list: Add marshallers for text widget that 
8021         properly use OBJECT and BOXED
8022
8023 2000-11-01  Havoc Pennington  <hp@redhat.com>
8024
8025         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
8026
8027         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
8028         before returning it. 
8029         
8030 2000-11-01  Havoc Pennington  <hp@redhat.com>
8031
8032         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8033         Clip the rectangle to be rendered to the drawable, since
8034         get_from_drawable() requires a region within the drawable
8035
8036 2000-11-01  Havoc Pennington  <hp@redhat.com>
8037
8038         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
8039         from coordinates.
8040
8041 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
8042
8043         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
8044         it isn't NULL.
8045
8046 2000-11-01  Havoc Pennington  <hp@pobox.com>
8047
8048         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
8049         on a label
8050         (gtk_label_finalize): unref the attr list if any.
8051
8052         * gtk/testgtk.c (create_get_image): close test on second click
8053         (make_message_dialog): close dialog if it exists
8054
8055         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
8056
8057         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
8058         gdk-pixbuf
8059
8060         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
8061         from Pango markup format
8062         (gtk_label_set_markup_with_accel): ditto but with accelerator
8063         parsing
8064
8065         * gtk/gtkimage.c (gtk_image_expose): reformatting.
8066
8067         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
8068         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
8069         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
8070         call gdk_window_get_origin().
8071
8072         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
8073         implement GDK_PIXBUF_ALPHA_FULL
8074         
8075 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
8076
8077         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
8078         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
8079         g_signal_handlers_disconnect_matched to block/unblock and disconnect
8080         multiple handlers respectively, instead of only treating the
8081         first handler found (bug reported by owen).
8082
8083 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
8084
8085         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
8086
8087         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
8088
8089         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
8090         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
8091         gtk/gtktreeviewcolumn.h: Fixed inline docs.
8092
8093         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
8094         widget.  Needs writing someday.
8095
8096         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
8097         the docs.
8098
8099 2000-10-30  Havoc Pennington  <hp@redhat.com>
8100
8101         * gtk/gtktextview.h, gtk/gtktextview.c:
8102         Rename delete_at_cursor delete_from_cursor, and 
8103         move to move_cursor.
8104
8105 2000-10-30  Havoc Pennington  <hp@redhat.com>
8106
8107         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
8108         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
8109         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
8110         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
8111         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
8112         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
8113         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
8114         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
8115         gtktexttypes.h, gtktextview.c, gtktextview.h:
8116
8117         Massive reindentation and reformatting. Arg alignment and comments
8118         still need fixing in various places.
8119
8120 2000-10-30  Havoc Pennington  <hp@redhat.com>
8121
8122         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
8123         to be named insert_at_cursor and delete_at_cursor so C++ can
8124         handle them.
8125
8126 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8127
8128         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
8129         to get a double directory separator in case the home directory
8130         ends with one. This would cause trouble especially on Windows,
8131         where the path will be confused with the syntax for an an UNC
8132         (network share) path \\server\share\path.
8133         (gtk_rc_add_initial_default_files): Ditto.
8134
8135 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
8136
8137         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
8138
8139         * gtk/gtktextview.c: Use correct marshallers.
8140
8141 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
8142
8143         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
8144         use new iter stuff, and added all the appropriate signals et al.
8145
8146         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
8147         code is internal to gtk only.
8148
8149 2000-10-28  Tor Lillqvist  <tml@iki.fi>
8150
8151         * gtk/gtk.def
8152         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
8153         glib-genmarshal etc.
8154
8155 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
8156
8157         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
8158         parallel builds.
8159
8160 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
8161
8162         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
8163
8164 2000-10-27  Robert Brady  <robert@suse.co.uk>
8165
8166         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
8167         en_GB (British), ia (Interlingua).
8168
8169 2000-10-26  Havoc Pennington  <hp@redhat.com>
8170
8171         * gtk/gtktextiter.c (my_strrstr): fix constness warning
8172
8173         Fixed output of:
8174         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
8175         
8176         * gtk/gtktextsegment.c (char_segment_new): rename
8177         (_char_segment_new_from_two_strings): rename
8178         (_toggle_segment_new): rename
8179         
8180         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
8181         (make_clipboard_widget): make it static
8182         (text_get_func): static
8183         (text_clear_func): static
8184
8185         * gtk/gtkcolorsel.c (adjustment_changed): make this function
8186         static
8187         (hex_changed): make it static
8188         (hsv_changed): make it static
8189         (opacity_entry_changed): make it static
8190
8191         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
8192         (toggle_segment_check_func): rename with _gtk
8193
8194         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
8195         (_widget_segment_new): rename
8196         (_widget_segment_add): rename
8197         (_widget_segment_remove): rename
8198         (_widget_segment_ref): rename
8199         (_widget_segment_unref): rename
8200
8201         * gtk/gtktextmark.c (_mark_segment_new): Rename
8202         _gtk_mark_segment_new   
8203
8204 2000-10-26  Havoc Pennington  <hp@redhat.com>
8205
8206         * gtk/gtkmarshal.list: add new marshallers used by the text widget
8207         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8208         types
8209
8210         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
8211         marshaller types
8212
8213         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
8214         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
8215         license on these files.
8216
8217         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
8218         work.
8219
8220         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
8221         runtime random number different for each tree, instead of 
8222         a constant I made up.
8223
8224 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
8225
8226         * gtk/Makefile.am: buncha cleanups, kludged build sources
8227         dependencies with a Makefile: oldest-source-stamp dependancy
8228         for the moment. automake is really fighting us here, with
8229         intentionally not allowing user-defined rules or dependancies
8230         prior to it's -include $(DEP_FILES) statement. sucks rocks!
8231
8232         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
8233         to public headers. tehy have a comment stating that they are
8234         "semi-public" aren't included by gtk.h and if enums popup there,
8235         they can be /*< skip >*/-ed.
8236
8237         * gtk/gtktextlayout.h: 
8238         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
8239         added LGPL... <SIGH>
8240
8241 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
8242
8243         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
8244         GtkTreeIter.  Added iterators everywhere.
8245
8246         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
8247
8248         * gtk/gtktreeviewselection.c: Changed to use the iterators.
8249
8250         * gtk/gtktreestore.c: Changed to use the iterators.
8251
8252         * gtk/gtkliststore.c: Commented out the code.  Will convert to
8253         iterators tomorrow.
8254
8255         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
8256         iterators tomorrow.
8257
8258         * gtk/treestoretest.c: Changed to use iterators.
8259
8260         * demos/testgtk/main.c: Moved to use the new iterator system.
8261
8262 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8263
8264         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8265         localization misbehaviour.
8266
8267         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8268         a useless type without copy/free.
8269
8270         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8271         of GTK_TYPE_CTREE_NODE.
8272
8273 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8274
8275         * gtk/gtksignal.c:
8276         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8277         applicable.
8278
8279         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8280         gtk_selection_data_copy and gtk_selection_data_free
8281         do GtkSelectionData work as params in signals.
8282
8283 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8284
8285         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8286         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8287         couldn't they at least give it a non-standard name?
8288         
8289         * gtk/gtktextlayout.c: arg! yet another implementation of
8290         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8291
8292         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8293         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8294         home. now i know this _is_ a conspiracy.
8295
8296         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8297         ::state-changed.
8298
8299         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8300         (gtk_accel_group_create_add): marshaller signature fixups.
8301
8302         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8303         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8304
8305         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8306         anymore.
8307
8308 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8309
8310         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8311         due to the signal system changes, it wouldn't build currently. to
8312         be fixed soon.
8313
8314         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8315
8316         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8317         so it needs gtk_marshal_VOID__ENUM() instead of
8318         gtk_marshal_NONE__UINT().
8319
8320         * gdk/gdk*.c: adapted type registration functions.
8321
8322         * gtk/gtkbindings.c:
8323         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8324         gone.
8325
8326         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8327
8328         * gtk/gtkobject.c:
8329         (gtk_object_destroy):
8330         (gtk_object_shutdown): fixed recursion guards. basically we have to
8331         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8332         is called during ::destroy, and avoid recursion there.
8333
8334         * gtk/gtktypeutils.c:
8335         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8336         boxed_copy/boxed_free. this needs a more general solution based on a
8337         publically installed code-generator utility.
8338
8339         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8340         glib's gobject has support for that now.
8341         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8342
8343 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8344
8345         * gtk/gtksignal.[hc]:
8346         * gtk/gtkmarshal.[hc]:
8347         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8348         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8349         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8350         care of that.
8351
8352         * *.c: marshaller name fixups.
8353
8354         * gtk/gtkmarshal.list: added a comment briefing the format.
8355
8356 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8357
8358         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8359         compatibility macros here now. more specifically, most of
8360         the API is preserved (yes, _most_, nonwithstanding the
8361         following exceptions listed, the API is stil lHUGE ;)
8362         things that got removed completely:
8363         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8364         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8365         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8366         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8367         gtk_signal_remove_emission_hook().
8368         non-functional functions variants:
8369         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8370         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8371         not supported anymore.
8372         (gtk_signal_compat_matched): new internal function to aid
8373         implementation of the compatibility macros, it  provides
8374         functionality to block/unblock/disconnect handlers based
8375         on func/data.
8376
8377         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8378
8379         * *.c: adaptions to new type registration API signatures.
8380
8381 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8382
8383         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8384
8385 2000-10-25  Robert Brady  <robert@suse.co.uk>
8386
8387         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8388         gdk_property_delete): If window == NULL, assume the root window.
8389         (restoring the behaviour that was in 1.2).
8390         
8391         * gtk/testtext.c (save_buffer): Allow creation of new files when
8392         saving.
8393
8394         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8395         calls to read().
8396
8397 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8398
8399         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8400
8401         * gdk/win32/gdkdrawable-win32.c
8402         * gdk/win32/gdkimage-win32.c
8403         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8404         X11 backend.
8405
8406         * gdk/win32/gdkcc-win32.c
8407         * gdk/win32/gdkcolor-win32.c
8408         * gdk/win32/gdkfont-win32.c
8409         * gdk/win32/gdkinput-win32.c
8410         * gdk/win32/gdkmain-win32.c
8411         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8412
8413 2000-10-24  Havoc Pennington  <hp@redhat.com>
8414
8415         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8416         it a static function
8417
8418         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8419         redraw text when a tag is applied to it.
8420
8421         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8422         (gtk_text_tag_affects_nonsize_appearance): private functions to
8423         see if a tag requires various kinds of redraw/layout to be queued
8424         up.
8425
8426         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8427
8428         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8429         at the start of the buffer, so search works by default
8430
8431         * gtk/gtktextiter.c (lines_match): init match_start always
8432
8433         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8434         function, get iter at a line + a byte index
8435
8436         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8437         to set byte position within a line
8438         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8439
8440 2000-10-23  Havoc Pennington  <hp@redhat.com>
8441
8442         * gtk/testtext.c: Re-enable the "find" dialog
8443
8444         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8445         
8446         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8447         the arguments to gdk_draw_drawable were in the wrong order
8448         (gdk_window_paint_init_bg): This function was ignoring the
8449         init_region, instead of clipping to it, so the entire backing
8450         pixmap was cleared on every begin_paint()
8451         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8452         was in here again, the loop kept using the same GtkWindowPaint
8453         over and over.
8454         (gdk_window_begin_paint_region): Fix a bug where we had two
8455         x_offset instead of x_offset and y_offset
8456
8457         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8458         before we get the image.
8459         (gdk_draw_drawable): get the composite before we draw the drawable.
8460         (gdk_drawable_real_get_composite_drawable): default
8461         get_composite_drawable implementation that returns the drawable 
8462         itself
8463
8464         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8465         get_composite_drawable virtual function
8466
8467         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8468         list-walking bug
8469
8470         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8471         make this work if the source drawable is a GdkDrawableImplX11
8472         instead of a public drawable type. This is really broken; the
8473         problem is that GdkDrawable needs a virtual method get_xid(), but
8474         of course that doesn't work in practice. Enter RTTI.
8475
8476         Also, improve mismatched depth message.
8477
8478         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8479         GdkPixmap
8480
8481         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8482         install _gdk_x11_get_image as our implementation of get_image
8483         
8484         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8485         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8486
8487         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8488         gdk_drawable_get_image
8489
8490         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8491
8492         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8493         get_image
8494
8495         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8496         trailing semicolon after for loop
8497
8498 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8499
8500         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8501         where font_desc for widget's context lagged widget's font_desc by
8502         one step.
8503
8504 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8505
8506         * gdk/win32/gdkgc-win32.c
8507         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8508
8509         * gtk/makefile.mingw.in
8510         * gtk/gtk.def: Updates.
8511
8512         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8513         library.
8514
8515         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8516
8517         * gtk/makefile.msc: Remove
8518
8519         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8520
8521         * gtk/Makefile.am: Add it.
8522
8523         * configure.in: Generate it.
8524
8525         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8526         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8527         something even if not implemented, to satisfy picky MSVC.
8528
8529         Patches by Hans Breuer:
8530         
8531         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8532         SetBkMode() and SetTextAlign() before calling
8533         pango_win32_render().
8534
8535         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8536         Set hcliprgn to NULL after destroying it.
8537         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8538
8539         * gdk/win32/gdkgeometry-win32.c
8540         (_gdk_windowing_window_queue_antiexpose): More effective
8541         implementation.
8542
8543         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8544         depth as default, not the visual's.
8545
8546         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8547         against empty title.
8548
8549         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8550         IMAGE_PRIVATE_DATA.
8551
8552         * gdk/win32/gdkimage-win32.c: Use it.
8553
8554 2000-10-22  Robert Brady  <robert@suse.co.uk>
8555
8556         * configure.in: Check for bind_textdomain_codeset
8557
8558         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8559         present, make use of it.
8560
8561         Add a translatable string "default:LTR" which, if translated
8562         to "default:RTL", will cause the default direction to be
8563         Right-to-Left.
8564
8565         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8566         direction if marked as flippable.
8567
8568         * gtk/gtkhscale.c: Mark widget as flippable.
8569         
8570 2000-10-04  Havoc Pennington  <hp@redhat.com>
8571
8572         * gtk/testgtk.c (create_buttons): create some stock buttons
8573         with the default accel group
8574         (create_image): test some new GtkImage features
8575         (make_message_dialog): test GtkMessageDialog
8576         (create_modal_window): fix someone's bizzarro indentation
8577
8578         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8579         GTK_WIN_POS_CENTER_ON_PARENT. 
8580         Add "destroy with parent" setting, which means the window goes
8581         away with its transient parent.
8582         (gtk_window_get_default_accel_group): get the default accel group
8583         for the window.
8584         (gtk_window_set_destroy_with_parent): set/unset destroy with
8585         parent flag
8586         (gtk_window_read_rcfiles): invalidate icon set caches
8587         after reloading rcfiles 
8588
8589         * gtk/gtkenums.h (GtkWindowPosition): add
8590         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8591         on its parent window when the dialog is mapped for the first time.
8592
8593         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8594         a simple message dialog class
8595         
8596         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8597         handler to emit response signal, and maybe later it would
8598         honor a hide_on_delete flag - though that isn't there yet.
8599         Set border width on the vbox to 2, so we get some padding.      
8600         Use a button box for the action area.
8601         (gtk_dialog_key_press): synthesize a delete event if Esc
8602         is pressed and the GtkWidget key press handler didn't 
8603         handle the escape key.
8604         (gtk_dialog_new_with_buttons): new function creates a dialog
8605         with some default buttons in it.
8606         (gtk_dialog_add_action_widget): add an activatable widget
8607         as a button in the dialog - you can also add a non-activatable
8608         widget by accessing the action area directly.
8609         (gtk_dialog_add_button): add a simple button - stock ID or 
8610         label - to the action area
8611         (gtk_dialog_response): emit response signal
8612         (gtk_dialog_run): block waiting for the dialog, return 
8613         the response. Override normal delete_event behavior, so that 
8614         delete_event does nothing inside gtk_dialog_run().
8615
8616         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8617         emitted when an action widget is clicked or the dialog gets
8618         delete_event
8619
8620         * gtk/gtk.h: add gtkmessagedialog.h
8621
8622         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8623
8624 2000-10-18  Havoc Pennington  <hp@redhat.com>
8625
8626         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8627         where any number of empty lines would get skipped
8628
8629         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8630         edge.
8631
8632         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8633         warning about invalid iterators (explain more thoroughly)
8634         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8635
8636         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8637         big
8638
8639         * demos/*.c: Add error handling
8640
8641         * gtk/gtktextbuffer.c: don't modify const iterators
8642
8643         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8644
8645         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8646         on file load
8647
8648         * gtk/gtkiconfactory.c: Update to reflect addition of error
8649         handling to gdk-pixbuf loaders
8650
8651 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8652
8653         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8654         move to new modularized testgtk.
8655
8656 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8657
8658         * gtk/gtktreeview.c: Draw the arrows correctly.
8659
8660         * gtk/gtktreemodel.c: Added user docs.
8661
8662         * gtk/gtk.h: remove gtktreedatalist.h.
8663
8664         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8665         parent when generating my type.
8666
8667         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8668         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8669
8670 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8671
8672         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8673         GtkTreeModel from object to interface.
8674
8675 2000-10-16  Havoc Pennington  <hp@redhat.com>
8676
8677         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8678         compilation
8679
8680 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8681
8682         * gtk/gtktreeselection.c: Add API documentation to all public
8683         functions.
8684
8685         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8686         functions.
8687
8688 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8689
8690         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8691         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8692         docs to all public functions.
8693
8694         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8695         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8696         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8697         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8698         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8699         issue.
8700
8701 2000-10-14  Robert Brady  <robert@suse.co.uk>
8702
8703         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8704
8705 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8706
8707         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8708         values other then G_TYPE_STRING.
8709         * gtk/gtktreeselection.c: Minor commenting updates.
8710         * gtk/gtktreeview.c: Format updates.
8711
8712 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8713
8714         * README.win32: Update.
8715
8716         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8717         lines that had been deleted by mistake (?).
8718
8719         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8720         also the case fg==white and bg==black (but still not randomly
8721         coloured cursors). Thanks to Wolfgang Sourdeau.
8722
8723         * gdk/win32/*.c: Silence gcc -Wall.
8724
8725         * gtk/gtk.def: Add missing entry points.
8726
8727         Fixes by Hans Breuer:
8728
8729         * gdk/makefile.msc
8730         * gdk/win32/makefile.msc: Update.
8731
8732         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8733         some MSVC thing, presumably), cause breakpoint on failures. Add
8734         GDK_NOR case. Call g_log_set_always_fatal.
8735
8736         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8737         should be pased by reference.
8738         
8739         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8740         
8741         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8742
8743         * gdk/win32/gdkevents-win32.c
8744         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8745
8746         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8747         implementation object.
8748
8749         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8750         not just windows.
8751         
8752         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8753         Use the wrapper object.
8754         
8755 2000-10-06  Havoc Pennington  <hp@redhat.com>
8756
8757         * Makefile.am (SRC_SUBDIRS): contrib subdir
8758
8759         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8760         so it can be used in Xlib version
8761
8762         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8763         tree
8764
8765         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8766         change from 1.0 tree that returns first frame of animation
8767         if the loaded file is an animation.
8768
8769         * contrib: add new directory to hold stuff that comes with GTK+
8770         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8771         
8772         * configure.in: add contrib/*
8773
8774 2000-10-05  Havoc Pennington  <hp@redhat.com>
8775
8776         * demos/testpixbuf-save.c: add pixbuf save test
8777
8778         * demos/Makefile.am: add testpixbuf-save.c
8779
8780 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8781
8782         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8783         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8784         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8785         * gtk/gtktreeselection.[ch]: Replaced
8786         "node_selected"/"node_unselected" signal with "selection_changed"
8787         signal.
8788
8789 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8790
8791         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8792         tree widget.
8793
8794 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8795
8796         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8797         drawing.
8798
8799 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8800
8801         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8802         Move list pointer forwards before removing item from
8803         list. (Crash reported by Salmaso Raffaele)
8804
8805         * gdk/gdkwindow.h: Remove spurious trailing ,
8806
8807         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8808         dependencies on uninstalled libraries, sorry folks.
8809
8810 2000-10-04  Havoc Pennington  <hp@redhat.com>
8811
8812         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8813         gtk/gtkiconfactory.c: Fix copyrights    
8814
8815         * demos/testpixbuf.c: add inline pixbuf test
8816         
8817 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8818
8819         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8820         Add gdk_window_iconify.
8821
8822         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8823         (gdk_window_set_geometry_hints): Add win_gravity
8824         to geometry structure.
8825
8826         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8827         Implement _NET_WM_PING.
8828
8829         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8830         Set _NET_WM_PID on the client leader.
8831
8832         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8833         Handle UTF-8 better.
8834
8835         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8836         UTF-8 better, set _NET_WM_NAME as well. Only set
8837         icon name if it hasn't previously been explicitely 
8838         set.
8839
8840 2000-10-03  Havoc Pennington  <hp@redhat.com>
8841
8842         * gtk/testtextbuffer.c: clean up trailing whitespace,
8843         add extensive tests for tag toggle iteration.
8844         
8845         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8846         distance
8847
8848         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8849         optimize case where the tag root is on level 1
8850         (gtk_text_line_previous_could_contain_tag): attempt to implement
8851         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8852         functionality
8853
8854         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8855         Implement this, though not very efficiently.
8856
8857         * gtk/gtktextiterprivate.h: reformat
8858
8859         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8860         iterator
8861
8862         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8863         this to properly revalidate the iterators.
8864
8865         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8866         properly at the end of the line (and therefore on empty lines)
8867
8868         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8869         maybe we should return a value...
8870
8871 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8872
8873         * config.h.win32: Guard definition of alloca(). glib.h now handles
8874         that.
8875
8876         * gdk/gdk.def
8877         * gtk/gtk.def: Add new entry points.
8878
8879         Changes just to make GTK+ build without errors on Win32. No hope
8880         of it working in its current state, though...:
8881         
8882         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8883         some functions from the X11 backend, just to make GTK+ build.
8884
8885         * gdk/makefile.mingw.in
8886         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8887         number. Add new object files.
8888
8889         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8890         GetMessageTime to get timestamp (where on X11 uses
8891         gdk_x11_get_server_time()).
8892
8893 2000-10-02  Havoc Pennington  <hp@pobox.com>
8894
8895         * gtk/gtktextview.c: text_window_* weren't static and should have
8896         been.
8897         Start work on child widgets; not yet complete, syncing to 
8898         office computer.
8899
8900         * gtk/gtktextchild.h: change this to contain a public interface,
8901         starting work on child interfaces.
8902         * gtk/gtktextchildprivate.h: move private interfaces here
8903
8904         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8905
8906         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8907         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8908         gtk/gtktextmark.c: copyright notices
8909
8910         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8911         internal functions      
8912
8913         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8914         internal function
8915
8916         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8917         Reformatting    
8918
8919 2000-09-30  Havoc Pennington  <hp@pobox.com>
8920
8921         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8922         NULL start/end pointers
8923
8924         * gtk/gtktextbuffer.c: Write some docs
8925         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8926         NULL, so you can just check whether there's a selection.        
8927
8928         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8929         cleanup_line or segments_changed ourselves, it gets done 
8930         in unlink_segment
8931
8932         * gtk/gtktextmark.h:
8933         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8934         
8935         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8936
8937         * gtk/gtktextmark.c: delete some more old Tk cruft
8938
8939         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8940         mark before removing it, so we can emit MARK_DELETED with a valid
8941         pointer.
8942         (gtk_text_buffer_mark_set): hold ref across signal emission
8943
8944         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8945         whining about attempts to delete special marks
8946
8947         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8948         underscore, since it's internal.
8949
8950         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8951         now implemented in terms of iterators in gtktextiter.h
8952
8953         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8954         New function, destructively sets contents of buffer. Also 
8955         a convenient way to clear the buffer by setting text to ""
8956
8957         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8958         multiline string literal
8959
8960         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8961         text changes.
8962
8963         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8964         is not dereferenceable
8965         (gtk_text_iter_forward_lines): fix return value
8966
8967 2000-09-29  Havoc Pennington  <hp@redhat.com>
8968
8969         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8970
8971         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8972         that set border window size to have nicer name
8973         (gtk_text_view_mark_set_handler):  Fix this to have the 
8974         right signature.
8975
8976         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8977
8978         * gtk/testtext.c: Update with API changes, put line numbers on 
8979         both sides.
8980         
8981         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8982         with this
8983
8984         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8985         pixbuf; delete a big block of #if 0 Tk code
8986
8987         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8988         insert_pixmap with insert_pixbuf
8989
8990 2000-09-29  Martin Baulig  <baulig@suse.de>
8991
8992         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8993         confusion with the GdkPixbuf of the GNOME 1.x platform.
8994
8995 2000-09-29  Havoc Pennington  <hp@pobox.com>
8996
8997         * gtk/gtktextview.c: Implement the side windows.
8998
8999         * gtk/testtext.c: Implement simple line numbering in the 
9000         left side window; seems to make scrolling sloooow. Oops.
9001         Also, cursor blink is for some reason causing redraws
9002         of the line numbers. Should investigate...
9003
9004 2000-09-28  Havoc Pennington  <hp@redhat.com>
9005
9006         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
9007         scrolling child windows, and draw focus rectangle properly.
9008         
9009         (gtk_text_view_buffer_to_window_coords):
9010         Coordinate transformation to deal with all these freaking windows
9011         and offsets
9012         (gtk_text_view_window_to_buffer_coords): transform the other way
9013
9014         * gtk/testtext.c (create_buffer): Update to match Pango API change
9015
9016         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
9017         anonymous tags
9018         (foreach_unref): don't emit remove signal from finalize, just
9019         set tag's parent to NULL
9020
9021 2000-09-26  Havoc Pennington  <hp@redhat.com>
9022
9023         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
9024         Fix some warnings       
9025
9026 2000-09-26  Havoc Pennington  <hp@redhat.com>
9027
9028         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
9029         headers into the private header list
9030
9031         * Makefile.am (pkgconfig_DATA): install pkg-config files
9032
9033         * configure.in: add pkg-config files
9034
9035         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
9036
9037         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
9038         outstanding icon caches on theme change.
9039
9040         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
9041         important types:
9042
9043         (GtkIconSource): Specification for creating a pixbuf 
9044         appropriate for a direction/state/size triplet from 
9045         a source pixbuf or filename
9046
9047         (GtkIconSet): List of GtkIconSource objects that are used to
9048         create the "same" icon (e.g. an OK button icon), and cache for
9049         rendered icons
9050
9051         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
9052         up the icon set for a given stock ID.  GTK maintains a stack of
9053         GtkIconFactory to search, and applications or libraries can add
9054         additional icon factories on top of the stack
9055         
9056         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
9057         the set of GtkIconSource specified for a given stock ID into 
9058         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
9059         RcStyle, under the specified stock ID.
9060
9061         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
9062         render_icon used to derive a GdkPixbuf from a GtkIconSource.
9063         This allows people to theme how prelight, insensitive, etc. are
9064         done.
9065
9066         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
9067         icon factories for a style, and return the resulting 
9068         icon set if any.
9069
9070         (gtk_style_render_icon): Render an icon using the render_icon 
9071         method in the GtkStyleClass.
9072
9073         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
9074         Use the style for a given widget to look up a stock ID, get the
9075         icon set, and render an icon using the render_icon method 
9076         of the style
9077
9078         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
9079         (contains information about a stock item), the built-in stock item
9080         IDs, and functions to add/lookup stock items.
9081
9082         * gtk/stock-icons/*: Stock icons that come with GTK
9083
9084         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
9085         a button based on a GtkStockItem
9086         (gtk_button_new_accel): Takes a uline string and accel group, and
9087         installs the accelerator.
9088
9089         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
9090         image-display widget.
9091
9092 2000-09-25  Havoc Pennington  <hp@redhat.com>
9093
9094         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
9095
9096         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
9097         Fix a bug when removing node data, we didn't properly 
9098         re-splice the linked list after removing the data.
9099
9100         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
9101         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
9102
9103         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
9104
9105         * gtk/gtktextlayout.c (set_para_values): Set tab array 
9106         for the layout from the GtkTextTag.
9107
9108         * gtk/gtktexttypes.h: delete tab and search cruft, 
9109         remove g_convert() in favor of GLib version
9110
9111         * gtk/gtktexttypes.c: remove tab implementation from here,
9112         move to Pango
9113
9114         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
9115         tab stuff using new PangoTabArray from Pango
9116
9117         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
9118         unused border_width stuff
9119
9120 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
9121
9122         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
9123         glib) and now useless utf_to_latin1() latin1_to_utf()
9124
9125         * gtk/gtktextview.[ch]: Change ::move_insert and
9126         ::delete_text action signals to ::move and ::delete;
9127         create the signals with the right enumeration type,
9128         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
9129         C-v bindings, change Home, End to move to beginning/end
9130         of line, Add C-Home C-End to move to beginning/end
9131         of buffer. Change ::cut_text to ::cut_clipboard, etc;
9132         combine ::scroll_text into ::move; use new GtkSelectionData
9133         functions to simplify DND text handling.
9134         
9135         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
9136         deletion enumerations here, rename enumeration values to 
9137         be consistently plural.
9138
9139         * gtk/gtktextbuffer.c: Use new clipboard interfaces
9140         for cut/copy/paste and primary selection.
9141
9142         * gtk/gtktextbuffer.[ch]: Remove excess time and
9143         'interactive' arguments from cut/copy/paste;
9144         rename cut to cut_clipboard, etc; remove
9145         gtk_text_buffer_get_clipboard_contents().
9146
9147         * gtk/gtktextlayout.[ch]: Add 
9148         gtk_text_layout_move_iter_to_line_end() to move the iter to 
9149         line ends.
9150
9151         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
9152         Functions to set or get a UTF-8 string on the selection
9153         data.
9154
9155         * gtk/gtkclipboard.[ch]: New, simplified selection handling
9156         interfaces.
9157
9158         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
9159         created widgets - one of these is useless if we don't.
9160
9161         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
9162         a public function clear all targets registered for the
9163         widget.
9164
9165         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
9166         Never call gtk_widget_realize() - that was just asking
9167         for bizarre side-effects.
9168
9169         * gtk/gtkselection.c (gtk_selection_owner_set): Call
9170         gdk_selection_owner_set even if the widget is the
9171         same so that we reliably update the timestamp on
9172         the server.
9173
9174         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
9175         gdk_x11_get_server_time() function.
9176         
9177         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
9178         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
9179         Add some tricky filtering on serial numbers for
9180         selection clear events to fix up long-standard
9181         race condition FIXME's in gtkselection.c.
9182
9183         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
9184         routines to convert from utf8 to compound text or
9185         STRING and from a text property to UTF-8.
9186
9187         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
9188         a convenience function gdk_get_current_event_time().
9189
9190         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
9191         and free selection_data->data properly
9192
9193 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
9194
9195         * gtk/gtkthemes.c: Remove some unecessary includes.
9196
9197 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
9198
9199         * gtk/gtktextdisplay.c
9200         * gtk/gtktextlayout.c
9201         * gtk/gtktexttag.c
9202         * gtk/gtktexttag.h
9203         * gtk/testtext.c: Change the overstrike property to strikethrough,
9204         to closer match pango.
9205
9206 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
9207
9208         * gtk/gtktextview.c: Fix up visibility so that focus,
9209         cursor_visible and blink interact properly.  Reenable cursor blink
9210         which had been roughly disabled. Make blink and focus
9211         properly per-view.
9212
9213         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
9214         Add a flag for whether to display insertion cursor and
9215         a function to set the flag.
9216
9217         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
9218         get_line_y() to get_line_yrange(), to be a bit more generally
9219         useful.
9220
9221 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
9222
9223         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
9224           do stop_navigating_submenu, to clear last timeout properly.
9225           Also in gtk_menu_motion_notify move ignore_enter above
9226           the conditional to make it always happen as suggested by Owen
9227
9228 2000-09-07  Tor Lillqvist  <tml@iki.fi>
9229
9230         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
9231
9232         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
9233         w32api headers.
9234
9235         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
9236         declarations.
9237
9238         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
9239         (gdk_win32_get_colormap): A line had been deleted by mistake.
9240
9241         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
9242         (gdk_event_translate): Handle more virtual keycodes to be able to
9243         generate GDK events for Control-comma, Control-period, etc.
9244
9245         * gtk/gtk.def: Add some missing entry points.
9246
9247 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
9248
9249         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
9250         Doc comment fixing. (Mostly non-matching parameter names.)
9251
9252         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
9253         comments a little to avoid looking like a doc comment.
9254
9255         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
9256         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
9257         conversions be changed to GError?)
9258
9259         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
9260         Move private #defines into .c file.
9261
9262         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9263         order of argument addition, remove duplicates.
9264
9265         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9266         parent class is FrameClass, not BinClass.
9267
9268         * gtk/gtk.h: Add gtkinvisible, which was missing.
9269         (It's occasionalyl useful for client apps, if seldom.)
9270
9271         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9272         #define.
9273
9274 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9275
9276         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9277         coordinates when creating window, instead of GDK-space
9278         coordinates. (Avoid BadValue on too large windows.)
9279
9280 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9281
9282         * configure.in (use_mmx_asm): Remove conftest* after use along the
9283         lines of AC_TRY_COMPILE.        
9284         
9285         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9286         of g_dirname, which is deprecated.
9287         (gtk_rc_parse_any): Removed calls to
9288         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9289
9290         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9291         Removed calls to g_hash_table_{freeze,thaw}, as they are
9292         deprecated now.
9293
9294         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9295         instead of g_basename.
9296         
9297 2000-09-04 Elliot Lee <sopwith@redhat.com>
9298         
9299         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9300         ANSI warning.
9301
9302 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9303
9304         * gtk/gtkwidget.h:  Add some documenting comments about 
9305           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9306           just as owen said on irc.
9307
9308         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9309           set HAS_DEFAULT.  Only set it if there isn't another window
9310           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9311           it if the widget is not the focused window with RECEIVES_DEFAULT.
9312           This fixes weird double default bugs in dialogs which has things
9313           call gtk_window_set_default at times.
9314
9315 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9316
9317         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9318         Nils Barth and David Santiago to improve submenu
9319         navigation. The patch does this by creating a triangular
9320         region from the point where the pointer leaves the
9321         menu to the submenu.  While the pointer is in
9322         that region and a timeout has not expired, events 
9323         that would cause the active submenu to change are
9324         ignored.
9325
9326 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9327
9328         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9329         moving a toplevel window immediately after sizing it would
9330         result in it being sized back to the old size since 
9331         impl->width, impl->height aren't updated until we hear
9332         back from the server. There is still a (longstanding) bug
9333         here that gdk_window_get_size() will give the wrong size
9334         until we do hear back.
9335
9336 2000-08-31  Havoc Pennington  <hp@redhat.com>
9337
9338         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9339         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9340         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9341         Rename GtkTextStyleValues to GtkTextAttributes
9342
9343 2000-08-31  Havoc Pennington  <hp@pobox.com>
9344
9345         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9346         for rapid testing whether an iterator is the end iterator
9347         (gtk_text_btree_new): init end line cache
9348         (gtk_text_line_is_last): use fast cached line to 
9349         see if we're the last line.
9350         (get_last_line): use cached line here too, should 
9351         speed up some random unrelated code.
9352         
9353 2000-08-30  Havoc Pennington  <hp@pobox.com>
9354
9355         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9356         signals.
9357
9358         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9359         delete_text signals. This allows the signals to be used for
9360         implementing undo.
9361
9362         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9363         provide "interactive" argument when emitting insert_text or
9364         delete_text signal.
9365         
9366 2000-08-30  Havoc Pennington  <hp@pobox.com>
9367
9368         * gtk/gtktextbuffer.c: Docs
9369
9370 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9371
9372         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9373         from switch statements, since Tor removed the enumeration
9374         value.
9375         
9376         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9377         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9378
9379 2000-08-29 Elliot Lee <sopwith@redhat.com>
9380         * */*.h: Use G_GNUC_CONST.
9381
9382 2000-08-27  Havoc Pennington  <hp@pobox.com>
9383
9384         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9385         minor indentation fixes, inserted some FIXME about stuff I
9386         realized was broken while documenting it.
9387         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9388         GTK convention  
9389
9390 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9391
9392         * gtk/testgtk.c (create_styles): Fix double free of
9393         font desc.
9394
9395 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9396
9397         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9398         
9399         * gtk/testgtk.c (create_styles): Add a test for modifying
9400         the style through gtk_widget_modify_*.
9401
9402         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9403         a function to get the current modifier style.
9404
9405         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9406         of the passed in GtkRcStyle instead of ref'ing it.
9407
9408         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9409
9410 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9411
9412         * gdk/gdkimage.h
9413         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9414         shared memory image+pixmap GdkImage type, or
9415         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9416         I am dropping that.
9417
9418         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9419         actually call gtk_init_abi_check(), passing also
9420         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9421
9422         * gtk/gtk.def
9423         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9424         New functions, used to check that the GTK+-using code has been
9425         compiled using the correct compiler and switches. In particular,
9426         with gcc one has to use the -fnative-struct switch as GTK+ is
9427         compiled with that.
9428
9429 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9430
9431         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9432         ->prev fields when merging lists. (Found simultaneously
9433         by Pawel Salek and Jakub Jelinek)
9434
9435 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9436
9437         * gdk/gdk.def
9438         * gtk/gtk.def: Add missing entries.
9439
9440         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9441         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9442
9443         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9444         function. Dummy implementation at this point.
9445
9446         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9447         rules. Undefine GTK_COMPILATION when compiling the test programs.
9448         
9449         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9450
9451 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9452
9453         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9454         to convert back and forth from UTF-8 and the "system" (or "current
9455         locale") charset when necessary. Indentation/spacing cleanup.
9456
9457 2000-08-10  Havoc Pennington  <hp@redhat.com>
9458
9459         * Makefile.am (snapshot): Change the format of the snapshot
9460         version to match glib
9461
9462         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9463         from EXTRA_DIST since it doesn't seem to exist
9464
9465 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9466
9467         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9468         version of the directory name (not the UTF-8 one) when building
9469         the path name to stat().
9470
9471 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9472
9473         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9474         PANGO_ATTR_SHAPE set.
9475
9476 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9477
9478         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9479         Peter Osterlund to simplify the code while keeping the
9480         functionality the same.
9481
9482 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9483
9484         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9485         is_viewable() test further inside the function, since removing the 
9486         window from the redraw list without clearing ->update_area
9487         was also very broken.
9488
9489 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9490
9491         * configure.in: Check for <unistd.h>.
9492
9493 2000-08-01  Martin Baulig  <baulig@suse.de>
9494
9495         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9496         to display the message that this is a development version of GTK+.
9497
9498 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9499
9500         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9501         was depending on widget->allocation instead of the width of text_area,
9502         which was incorrect for subclasses like GtkSpinButton.
9503
9504         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9505         with width == 1 tests that should be width == -1.
9506
9507 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9508
9509         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9510         (broken, Elliot, every single window blank on X) custom code with call
9511         to gdk_window_is_viewable() which a) prevents code duplicate and
9512         b) works. 
9513
9514 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9515
9516         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9517         to get the GDK_PARENT_ROOT() macro to work.
9518         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9519         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9520         of, windows that aren't shown.
9521         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9522         pointer grab stuff.
9523
9524 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9525
9526         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9527           s/gtk_main_iteration/g_main_iteration/
9528
9529           Did this already in change:
9530                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9531           don't know how it got reverted.
9532
9533 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9534
9535         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9536         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9537
9538         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9539         not gdk_pixbuf.
9540
9541 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9542
9543         * configure.in,po/{sp,sr}.po: Added Serbian files
9544
9545 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9546
9547         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9548
9549         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9550         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9551         GIOChannel implementation.
9552
9553         * gdk/win32/gdkinput.c
9554         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9555
9556         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9557         definition to match prototype.
9558
9559         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9560
9561 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9562
9563         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9564         function, to allow handling image formats that cannot be detected
9565         by looking at content alone.
9566
9567 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9568
9569         * docs/tutorial/*.gif *.jpg *.eps
9570           Update these to the same look-n-feel.
9571           Why does including images in DocBook suck so badly?
9572
9573 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9574
9575         * gtk/gtktable.c: applied patch from Phil Thompson
9576         <phil@river-bank.demon.co.uk> that enables space settings for
9577         the last row/columns as well.
9578
9579 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9580
9581         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9582         updates the license headers to the GNU Lesser General Public License,
9583         as well as updating the copyright year to 2000.
9584
9585 2000-07-26  Robert Brady  <rwb197@zepler.org>
9586
9587         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9588           and po/Makefile, was installing and looking for them under gtk20
9589           and gtk2 respectively.
9590
9591 2000-07-25  Havoc Pennington  <hp@redhat.com>
9592
9593         * gtk/testtext.c: Comment out some stuff that depends on the rest
9594         of my patches.
9595
9596 2000-07-25  Havoc Pennington  <hp@redhat.com>
9597
9598         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9599         buffer
9600
9601 2000-07-25  Havoc Pennington  <hp@redhat.com>
9602
9603         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9604         widget changes.
9605
9606         * gtk/gtktextview.h: To be consistent with usage of "line"
9607         throughout the API to mean "newline-terminated thingy", change
9608         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9609         to MOVEMENT_LINE.
9610
9611         (GtkTextView): Add flags for default editability, and whether to
9612         show the cursor. Add functions to get/set that. Add 
9613
9614         (gtk_text_view_get_iter_location): new function
9615
9616         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9617         gtktextlayout.h
9618         (g_convert): Add g_convert temporarily, will go in glib in a bit
9619         
9620         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9621         GtkTextTagTableForeach instead of brokenly using GHFunc.
9622         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9623
9624         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9625         moved to public header.
9626
9627         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9628         "invisible", since "elide" was a bad name.
9629         (gtk_text_tag_get_priority): Added
9630
9631         (GtkTextStyleValues): put this in public header, along with
9632         functions to use it.
9633
9634         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9635         longer include gtktextbtree.h.
9636
9637         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9638         gtk_text_mark_deleted
9639
9640         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9641         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9642         to make this possible. Now we only need to install
9643         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9644         (However the Makefile.am isn't changed yet because of the
9645         logistics of merging gtk-hp-patches piecemeal)
9646
9647         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9648         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9649         gtk_text_iter_get_line is now used in the public API for a
9650         different purpose.
9651
9652         * gtk/gtktextiter.h: Clean up function names to be more
9653         consistent. Always call char offset "offset" and byte index
9654         "index". A "line" is always a line number. 
9655
9656         (gtk_text_iter_is_last): new function, more efficient than 
9657         the existing way to check
9658         (gtk_text_iter_is_first): new function, also more efficient
9659
9660         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9661
9662         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9663         gtk_text_iter_forward_char, etc.
9664
9665         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9666         forward_find_tag_toggle, since this isn't a linear search
9667
9668         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9669
9670         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9671         New functions, search for a buffer substring.
9672
9673         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9674         interactive and default editable (since we need to store that info
9675         until we receive the selection data).
9676
9677         Remove all the _at_char and at_line etc. versions of functions;
9678         only have iterator versions.
9679
9680         Add _interactive() versions of functions, that consider the
9681         editability of text. (FIXME add interactive flag to the 
9682         insert/delete signals per Darin's suggestion)
9683
9684         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9685         tag table if necessary
9686
9687         Remove declaration of gtk_text_buffer_get_iter_from_string
9688
9689         (_gtk_text_buffer_get_btree): private/internal function, added.
9690         
9691
9692         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9693         (gtk_text_line_is_last): new function
9694
9695 2000-07-25  Havoc Pennington  <hp@redhat.com>
9696
9697         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9698         using GtkProgressBar. See Changes-2.0.txt for details.
9699
9700         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9701         "pulse_step" which are the equivalent of
9702         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9703         Implement new API.
9704         
9705         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9706         (use_text_format) to mark whether text set on the progress bar is
9707         a format string. Deprecate entire GtkProgress interface.
9708
9709         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9710         (gtk_progress_build_string): make this a no-op if use_text_format
9711         is FALSE
9712
9713         * docs/Changes-2.0.txt: Describe progress bar changes.
9714
9715 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9716
9717         * Makefile.am: Include the build directory.
9718
9719         * configure.in: Generate build/Makefile, build/win32/Makefile,
9720         gdk/, gdk/win32/, and gtk/makefile.mingw.
9721
9722         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9723         Add GETTEXT_PACKAGE.
9724         
9725         * gdk/gdk.def
9726         * gtk/gtk.def: Updates.
9727
9728         * gdk/gdkfont.h
9729         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9730         need them any longer.
9731
9732         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9733
9734         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9735         PANGOWIN32_LIBS and gdk_pixbuf.
9736
9737         * gdk/win32: Compiles, but no doubt doesn't work at all.
9738
9739         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9740
9741         * gdk/win32/gdkinput.c: New file, temporarily.
9742         
9743         * gdk/win32/gdkinput-win32.h: New file
9744
9745         * gdk/win32/gdkinputprivate.h: Remove.
9746
9747         * gdk/win32/gdkpango-win32.c: New file.
9748
9749         * gtk/makefile.mingw.in: New file
9750
9751         * gtk/makefile.cygwin: Removed
9752         
9753         * gtk/Makefile.am: Update accordingly.
9754
9755         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9756         made externally visible.
9757
9758         * gtk/gtkmain.c: Use it.
9759         
9760         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9761         is enough.
9762
9763         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9764
9765 2000-07-24 Elliot Lee <sopwith@redhat.com>
9766         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9767         individual backends already.
9768         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9769         again. Yes, there really is a good reason for this, if you are using the gdkregion
9770         internals, and if you're not, why do you care?
9771         * gdk/gdkwindow.c: Fix inverted condition
9772         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9773         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9774         * gtk/gtkrange.c: Redraw trough when moving.
9775         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9776         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9777
9778 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9779
9780         * configure.in: Check for mkstemp and sigsetjmp. Output
9781         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9782
9783         More work on GDK for Win32. Still in an intermediate state.
9784
9785         * gdk/makefile.cygwin
9786         * gdk/win32/makefile.cygwin: Removed.
9787         
9788         * gdk/makefile.mingw.in
9789         * gdk/win32/makefile.mingw.in: New files.
9790
9791         * gdk/Makefile.am
9792         * gdk/win32/Makefile.am: Generate and distribute them.
9793
9794         * gdk/win32/gdkwindow-win32.h
9795         * gdk/win32/gdkdrawable-win32.h
9796         * gdk/win32/gdkpixmap-win32.h: New files.
9797
9798         * gdk/win32/gdkcolor-win32.c
9799         * gdk/win32/gdkcursor-win32.c
9800         * gdk/win32/gdkdrawable-win32.c
9801         * gdk/win32/gdkgc-win32.c
9802         * gdk/win32/gdkimage-win32.c
9803         * gdk/win32/gdkprivate-win32.h
9804         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9805         Rename fields and variables called xcursor, xid, etc (these names
9806         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9807
9808 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9809
9810         * gtk/gtkentry.[ch]: Fix some problems with vertical
9811         alignment.
9812
9813         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9814         char/byte confusion.
9815
9816 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9817
9818         * gtk/gtktextview.c (changed_handler): Fix bug where
9819         redraw wasn't being done properly when height of
9820         dirty region changed.
9821
9822         * demos/Makefile.am: Remove various references to
9823         -lgmodule
9824
9825 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9826
9827         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9828         PangoAttrShape to reserve space for pixmaps, add 
9829         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9830         in the display functions.
9831         
9832         * gtk/testgtk.c (create_layout): Set some more exotic
9833         scrolled window options
9834
9835         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9836         Add function to set the shadow type of a window, to allow
9837         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9838         which don't draw their own frame.
9839
9840 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9841
9842         * docs/tutorial/package-db-tutorial.sh: New file for
9843           packaging DocBook format tutorial
9844
9845 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9846
9847         * docs/tutorial/gtk-tut.sgml: Minor updates
9848
9849         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9850
9851 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9852
9853         * gtk/gtksignal.c: Fix C++ comment.
9854
9855         * gtk/gtkimmulticontext.c
9856         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9857         don't return value from void functions.
9858
9859         * gtk/gtk.def: Add gtk_rc_style_unref.
9860
9861 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9862
9863         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9864         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9865         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9866         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9867         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9868         gtk/gtktypeutils.h: Include files outside of the extern "C"
9869         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9870         <vakatov@peony.nlm.nih.gov>.
9871
9872 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9873
9874         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9875           Completes first pass. Hurrah!
9876
9877 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9878
9879         * docs/tutorial/gtk-tut.sgml: More clean ups.
9880
9881 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9882
9883         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9884         paint the background of the text area which was accidentally
9885         removed at some point.
9886
9887         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9888           
9889          - Move most of the functionality from the theme vtable
9890            into GtkRcStyleClass and GtkStyleClass. The moved
9891            vtable functions were changed a bit in the move to
9892            work better in their new home.
9893
9894          - Get rid of the engine and engine_data fields from
9895            GtkRcStyle and GtkStyle; instead the theme
9896            engine derives theme-specific subclasses of GtkRcStyle
9897            and GtkStyle
9898
9899          - Add extra dlsym() found entry point to themes,
9900            theme_create_rc_style().
9901
9902         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9903         in gtk_style_real_copy.
9904
9905         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9906         to register a type associated with an engine. (The engine
9907         won't be unloaded as there is an instance of the type.)
9908
9909
9910 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9911
9912         * docs/tutorial/gtk-tut.sgml: Clean ups.
9913
9914 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9915
9916         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9917           of cleaning up to do.
9918
9919 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9920
9921         * gdk/testgdk.c: New file, quick hack to test backends for
9922         pixel-by-pixel correctness of the most simple graphic operations.
9923
9924 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9925
9926         * Really release 1.3.1
9927         
9928         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9929         include structure.
9930
9931 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9932
9933         * Released 1.3.1
9934
9935 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9936
9937         * gtk/gtktextlayout.c: use FALSE for size_only most
9938         of the time when calling gtk_text_layout_get_line_display()
9939         to avoid causing double reshapes when a redraw follows
9940         immediately after.
9941
9942 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9943
9944         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9945         appropriate region and gdk_window_process_updates() so trough
9946         updating doesn't lag behind the window being scrolled.
9947
9948         * gdk/gdkgc.c: Make parent_class pointer static.
9949          
9950 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9951
9952         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9953         include <string.h>.
9954          
9955         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9956         cut-and-paste error in computing memory offset for 4 channels.
9957
9958 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9959
9960         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9961         gtk_rc_append_default_pixmap_path(), since it wasn't
9962         adding an interesting path and we don't have a meaningful
9963         default for this value.
9964
9965 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9966
9967         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9968         gtk-config to gtk-config-2.0 move gtk_.m4 to
9969         gtk-2.0.m4
9970
9971         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9972         gdk/Makefile.am demos/Makefile.am: Change 
9973         library names to libgtk-1.3.la, etc, so that we
9974         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9975
9976         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9977         gdk/Makefile.am gdk/x11/Makfile.am
9978         Move include files into /usr/include/gtk-2.0, 
9979         /usr/lib/gtk-2.0/include/
9980          
9981         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9982         gtk/gtkintl.h: Change package for gettext from 
9983         gtk+ to gtk20. Put hack in autogen.sh to modify
9984         po/Makefile.in.in after gettextize to make this
9985         possible.
9986
9987         * gtk+.spec: Some updates, not tested.
9988
9989         * gdk-pixbuf/Makefile.am: Move loaders into
9990         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9991
9992         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9993         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9994         to THEMENAME/gtk-2.0/. Move engine directory  to
9995         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9996         
9997 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9998
9999         Win32 changes, still doesn't build though.
10000
10001         * gdk/makefile.cygwin
10002         * gdk/win32/makefile.cygwin
10003         * gtk/makefile.cygwin: Updates.
10004
10005         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
10006         default values for fg and bg pixel as X11 does (0 and 1), not
10007         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
10008         Use 0 for pen width by default (treated as 1 anyway later, but for
10009         apps that might check the value in the GdkGC).
10010         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
10011         interface to gdk_gc_predraw and _postdraw.
10012
10013         * gdk/win32/gdkwin32.h
10014         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
10015
10016         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
10017         extraneous semicolon.
10018
10019         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
10020
10021         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
10022         not the Win32 bitspixel value.
10023
10024         * gdk/win32/gdkcc-win32.c:
10025         * gdk/win32/gdkcolor-win32.c 
10026         * gdk/win32/gdkprivate-win32.h
10027         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
10028         GDK object structure.
10029
10030 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
10031
10032         * docs/tutorial/gtk_tut_12.es.sgml (name): 
10033         * docs/tutorial/gtk_tut_it.sgml (name): 
10034         * docs/tutorial/gtk_tut_fr.sgml (name): 
10035         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
10036         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
10037
10038 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
10039
10040         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
10041           small changes.
10042
10043 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
10044
10045         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
10046         a bug here, never been here and never fixed anything ;(
10047         (don't segfault if tree->root_tree is NULL, which happens prior
10048         to widget realization, but puke instead).
10049
10050 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
10051
10052         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
10053         add the necessary tokens.
10054
10055         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
10056         (gtk_rc_style_to_style): copy thicknesses.
10057         (gtk_rc_init_style): apply thicknesses.
10058         (gtk_rc_parse_style): parse xthickness and ythickness.
10059
10060         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
10061
10062         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
10063         (gdk_window_new): 
10064         (_gdk_windowing_window_init): 
10065         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
10066         (gdk_pixmap_create_from_data): 
10067         (gdk_bitmap_create_from_data): 
10068         (gdk_pixmap_new): 
10069         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10070         (gdk_image_new): 
10071         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
10072         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
10073         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
10074         (gdk_colormap_get_system): 
10075         (gdk_colormap_new): 
10076         * gdk/gdkwindow.c (gdk_window_init): 
10077         * gtk/gtkstyle.c (gtk_style_new):
10078         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
10079         * gdk/gdkpixmap.c (gdk_pixmap_init): 
10080         * gtk/gtkrc.c (gtk_rc_style_new):
10081         use g_object_new() instead of g_type_create_instance() which
10082         is a private function for fundamental type implementations.
10083
10084 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
10085
10086         * configure.in: Add check for db2html
10087
10088 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
10089
10090         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
10091         hack to set glib_debug_objects based on gtk_debug_flags.
10092
10093 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
10094
10095         * INSTALL.in: Update the Prerequisites section.
10096
10097         * Makefile.am demos/Makefile.am docs/Makefile.am
10098         docs/tutorial/Makefile.am gdk/x11/Makefile.am
10099         gdk/linux-fb/Makefile.am: Dist fixes
10100
10101 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
10102
10103         * NEWS: 10,000 foot view of 1.3.1 changes.
10104
10105 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
10106
10107         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
10108         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
10109         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
10110         gdk/x11/gdkmain-x11.c: 
10111
10112         Patch from George Lebl to add a GdkGrabStatus enumeration to use
10113         as a return value of gdk_*_grab(). Previously, we just
10114         returned the X11 values directly.
10115
10116 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
10117
10118         * gdk/x11/Makefile.am: Patch from George Lebl to 
10119         install all the headers in the right place.
10120
10121 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
10122
10123         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
10124           initial conversion to DocBook.
10125
10126 2000-07-04  Tor Lillqvist  <tml@iki.fi>
10127
10128         * README.win32: Improve a bit.
10129
10130         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
10131         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
10132         Alt+0nnn on the numpad (used to enter characters by numeric code
10133         from current DOS or ANSI codepage) working correctly, as in other
10134         Windows apps.
10135
10136         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
10137         same argument validity tests as in X11 version.
10138         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
10139
10140         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
10141         definitions in case missing from headers.
10142
10143         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
10144         destroy the window-specific cursor.
10145         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
10146         calling GetModuleHandle(NULL).
10147         (gdk_window_set_cursor): Reworked to always copy the passed cursor
10148         with CopyCursor before setting it as the window-specific
10149         cursor. It is OK for the caller to destroy the GdkCursor (and thus
10150         also its Windows cursor) after calling this function. Destroy any
10151         previous window-specific cursor.
10152
10153 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
10154
10155         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
10156         font charset is iso8859-1, not iso-8859-1.
10157
10158 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
10159
10160         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
10161         Use g_get_charset() instead of g_get_codeset().
10162
10163         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
10164         Comment out some strdup'ing functions to keep timj
10165         happy until we finish fighting this out.
10166
10167 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
10168
10169         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
10170         <= width or height.
10171
10172         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
10173         from 1.2 for parent/child states.
10174
10175         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
10176         of typos.
10177
10178         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
10179         event structures, replace with a generic axes field. Replace 
10180         deviceid/sourec with GdkDevice *device.
10181
10182         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
10183         to extract particular axis use value from event. (Also
10184         can be used for normal X/Y.)
10185
10186         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
10187         allow for arbitrary number of axes, namespace everything
10188         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
10189         everywhere.
10190
10191         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
10192         Get rid of the gdk_input_vtable setup if favor of simply
10193         defining the functions in gdkinput-none/gxi/xfree.c in
10194         a similar fashion to the way that the port structure is 
10195         done.
10196
10197         * gtk/gtkdnd.c: Fix fields of synthesized button press event
10198         for new event structures. 
10199
10200         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
10201         new device interfaces.
10202
10203 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
10204
10205         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
10206         set the initial text.
10207
10208         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
10209         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
10210         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
10211         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
10212
10213         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10214         pango_layout_set_font_description to simplify.
10215
10216 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
10217
10218         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10219         pango_layout_set_font_description to simplify.
10220
10221 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
10222
10223         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
10224         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
10225         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
10226
10227         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
10228         PANGO_PIXELS() macro.
10229
10230 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
10231
10232         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
10233         that returns a PangoContext owned by the widget and updated to
10234         match future changes in the widget. Also, make 
10235         gtk_widget_create_pango_layout() use this context. If we ever
10236         add a ::changed signal to PangoContext, this will make things
10237         much more convenient. 
10238
10239         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
10240         in the appropriate places instead of destroying the layouts and
10241         creating new ones.
10242
10243         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
10244         in a few strategic places.
10245
10246 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
10247
10248         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
10249         gtk_widget_size_request() on reparented child, if one. Otherwise,
10250         queue_resize() on the child never results in it getting size-requested
10251         at all.
10252
10253         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
10254         in option menus, so that (with luck) people won't copy it into
10255         their apps in the future.
10256
10257         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
10258         to gtk_option_menu_calc_size. This isn't perfect, but should fix
10259         a lot of problems with changing the size of the menu's menu
10260         items after adding it to the option menu.
10261
10262         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10263
10264         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10265         the text direction for a widget changes.
10266
10267         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10268         ::direction_changed to get rid of various hacks.
10269
10270 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10271
10272         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10273         name.
10274
10275 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10276
10277         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10278         flag to the structure. Do not call XFreePixmap on pixmaps created
10279         by gdk_pixmap_foreign_new().
10280
10281 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10282
10283         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10284         value using GdkRGB functionality given GdkColormap and GdkColor.
10285         (name not final, waiting for inspiration.)
10286         
10287         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10288         set the foreground/background of a GC using the GC's colormap
10289         and GdkRGB. (name not final, waiting for inspiration.)
10290
10291         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10292         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10293
10294         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10295         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10296         purely a function of the corresponding colormap. Make
10297         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10298
10299         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10300         gdk_pixbuf_*create_from_xpm_* in terms of
10301         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10302         code.
10303
10304         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10305         advantage of the new draw_rgb_32_image_dithalign.
10306
10307         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10308
10309         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10310         on each created GC.
10311
10312         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10313
10314         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10315         which we initialize from the drawable when the GC is created,
10316         if the drawable has a colormap.
10317
10318         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10319
10320         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10321
10322         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10323
10324 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10325
10326         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10327         actually returning expose events, make sure to set
10328         the count field properly.
10329
10330         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10331         accidentally reintroced bug which always cleared
10332         the graphics_exposures value. 
10333
10334 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10335
10336         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10337
10338 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10339
10340         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10341
10342 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10343
10344         * docs/faq/gtk-faq.sgml: Start of Section 6.
10345
10346 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10347
10348         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10349         
10350         (Fixes problem with drawing childless frames. Pointed out
10351         by and a first patch from Anders)
10352         
10353         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10354         compute a child_allocation, even if we don't have a child.
10355
10356         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10357         Always chain to the parent's impl, even if we don't have a child.
10358
10359 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10360
10361         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10362         use multiple parts of it instead of creating a bunch of separate
10363         segments, since the maximum number of segments per system is not
10364         large. (This might be worth backporting to GTK+-1.2.x if we make a
10365         new release )
10366
10367         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10368         structure in preparation for per-colormap GdkRGB.
10369
10370         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10371         to False when we get EINVAL from shmget so that the caller of
10372         gdk_image_new can retry with a smaller segment size.
10373
10374 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10375
10376         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10377
10378 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10379
10380         * configure.in: make the current version number 1.3.1 (binary age 0,
10381         interface age 0).
10382         
10383         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10384         gtkcompat.h is all we want.
10385
10386         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10387         GLib primitive types. fixed g_type_register_fundamental() argument
10388         ordering.
10389
10390         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10391         compiles.
10392
10393         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10394         object code cleanup, comment trigraph fixes, etc...
10395
10396 2000-06-23  Havoc Pennington  <hp@redhat.com>
10397
10398         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10399         instead of making up a bogus name for first_para_mark
10400
10401         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10402         0 as a context ID
10403
10404 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10405
10406         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10407
10408 2000-06-21  Havoc Pennington  <hp@pobox.com>
10409
10410         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10411         we didn't check window->bg_pixmap != GDK_NO_BG.
10412
10413         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10414         gdk-pixbuf
10415
10416 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10417
10418         * docs/faq/gtk-faq.sgm: Move file to here.
10419           TODO: Update Makfile.am 
10420
10421 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10422
10423         * docs/gtk-faq.sgm: Add Section 2
10424
10425 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10426
10427         * docs/gtk-faq.sgm: New file. Start of DocBook
10428           version of the FAQ.
10429
10430 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10431
10432         * configure.in (GDK_PIXBUF_MAJOR): Define version
10433         numbers for GDK_PIXBUF_*, as they get substituted
10434         into a header file. Need to consider versioning
10435         for gdk-pixbuf more carefully later.
10436
10437 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10438
10439         Work with srcdir != builddir.   
10440         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10441         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10442         * demos/testpixbuf.c: Likewise.
10443         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10444         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10445         <gdk/x11/gdkx.h>.
10446         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10447         "gdk-pixbuf.h".
10448         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10449
10450 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10451
10452         * TODO.xml: Change 1.4 version numbers to 2.0.
10453
10454 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10455
10456         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10457         fixups to GTK+ standard.
10458
10459 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10460
10461         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10462         gdk-pixbuf.
10463
10464         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10465         fixups for GObject.
10466
10467         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10468         gdk-pixbuf with GDK dependencies moved into GDK.
10469         
10470         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10471         move gdk-pixbuf-loader here until GObject has signals.
10472
10473         * demos/: New directory of demos. Move demos from
10474         gdk-pixbuf here.
10475
10476         * demos/pixbuf-init.c: Small bit of code to check for
10477         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10478         set GDK_PIXBUF_MODULEDIR appropriately.
10479
10480         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10481         define which no longer makes sense.
10482
10483 2000-06-21  Havoc Pennington  <hp@redhat.com>
10484
10485         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10486         gtk_get_default_language
10487
10488         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10489         new function to get the default language
10490
10491         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10492         s/gtk_text_view_style_values/gtk_text_style_values/
10493
10494         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10495         Add a "language" field to tags.
10496
10497         (gtk_text_tag_set_arg): Fix bug in setting
10498         "bg_full_height_set" tag.
10499
10500 2000-06-21  Havoc Pennington  <hp@redhat.com>
10501
10502         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10503         in the interfaces
10504
10505         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10506         stuff instead when possible.
10507
10508         * gtk/gtktexttypes.h: Delete some unused constants
10509
10510         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10511         testtextbuffer.c: use glib instead of custom unicode routines
10512
10513 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10514
10515         * docs/es/: Removed mistakenly added generated sgml
10516
10517         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10518         Remove outdated info files.
10519
10520         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10521         Moved tutorial files into subdir
10522
10523         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10524         subdir.
10525
10526         * docs/man/gtk_button.pod: Remove. (contents will be
10527         integrated into gtk-reference button page.)
10528
10529         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10530         docs/faq/Makefile.am: Adjust for new organization
10531
10532 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10533
10534         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10535         not $(MKINSTALLDIRS)
10536
10537 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10538
10539         * gtk/testgtk.c (create_text): Finish the job Elliot started
10540         of removing font setting test for text widget. (Since text widget
10541         and GdkFont are not deprecated, and cause portability problems.)
10542
10543 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10544
10545         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10546         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10547         Remove use of libunicode in favor of new GLib functions.
10548
10549         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10550         nano-x, framebuffer. The X11 include is just a hack until we get
10551         the necessary functions in gdkcolor.h, so there is no reason to
10552         add other includes of platforms.
10553
10554         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10555         window bigger than the screen change.
10556
10557         * gtk/testgtk.c: Revert some random changes from Elliot
10558         that had no particular point and were causing testgtkrc
10559         not to function correctly.
10560         
10561         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10562         because GdkSegment and GdkRegionBox have the same fields,
10563         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10564         results in clearer code.
10565
10566         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10567         gdk_input_translate_coordinates): Fix missed GdkObjectification
10568
10569 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10570
10571         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10572         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10573
10574 2000-06-20  Havoc Pennington  <hp@redhat.com>
10575
10576         * modules/linux-fb/Makefile.am: Make this compile
10577         without framebuffer enabled
10578
10579         * gdk/linux-fb/Makefile.am: Add conditional to not build
10580         framebuffer unless specified in configure
10581
10582         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10583         the size of the target instead of source if -1 was passed for
10584         width/height
10585
10586         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10587         width/height confusion.
10588
10589 2000-06-19  Havoc Pennington  <hp@redhat.com>
10590
10591         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10592         GDK_DRAWABLE_XID. In the future, we probably want to make it
10593         faster with G_DISABLE_CHECKS turned on.
10594
10595 2000-06-14  Havoc Pennington  <hp@redhat.com>
10596
10597         * gdk/Makefile.am: add gdkpixmap.c
10598
10599         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10600         s/gdk_image_init/_gdk_windowing_image_init
10601
10602         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10603         ref/unref
10604
10605         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10606
10607         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10608         GdkWindowType is now non-deprecated; 
10609         change gdk_window_get_type() compat to be
10610         gdk_window_get_window_type().
10611
10612         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10613
10614         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10615         virtual GObject. Make all functions call into the vtable.
10616         Move gdk_image_put() guts in here. Remove GdkDrawableType
10617         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10618         draw_image, get_depth, get_size, set_colormap, get_colormap,
10619         get_visual added to the vtable.
10620         
10621         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10622         GObject. Virtualize everything. 
10623         (gdk_gc_new_with_values): remove check for destroyed window,
10624         because now GdkWindow::create_gc will check this.
10625         (gdk_gc_set_values): New function to set GC values, this 
10626         was already implemented but wasn't in the header
10627
10628         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10629
10630         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10631         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10632         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10633         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10634         _gdk_windowing_window_init, rename gdk_image_init to
10635         _gdk_windowing_image_init.
10636         
10637         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10638         (gdk_draw_layout): Remove check for destroyed window, 
10639         because all the drawable methods already check it.
10640         
10641         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10642         Add gdkpixmap.c which contains implementation of GdkDrawable
10643         virtual table (by chaining to a platform-specific implementation
10644         object).
10645         
10646         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10647         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10648         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10649         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10650         GdkColormapPrivate. 
10651
10652         * gdk/gdktypes.h: #include <glib-object.h>
10653
10654         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10655         Move most functionality to platform-specific implementation
10656         object. GdkWindow itself now handles the backing store, then
10657         chains to the platform-specific implementation.
10658         (gdk_window_get_window_type): return GdkWindowType of the window.
10659         (gdk_window_peek_children): New routine, returns the children of 
10660         a GdkWindow
10661         (gdk_window_get_children): Was in X11-specific code and did 
10662         XQueryTree. Changed to simply return a copy of window->children; 
10663         so it can go in cross-platform code.
10664         
10665         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10666
10667         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10668         GdkColormap; just changed to use the new private data instead
10669         of casting to GdkColormapPrivate.
10670
10671         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10672         gdk_cursor_new().
10673
10674         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10675         (private data member in the GObject). 
10676         (xdnd_manager_source_filter): Function had broken 
10677         error handling, fix it (use gdk_error_trap_push).
10678
10679         * gdk/x11/gdkdrawable-x11.c: This file now implements
10680         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10681         base class is purely for the convenience of the X port,
10682         and not part of the interface to cross-platform GDK.
10683
10684         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10685         
10686         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10687         specific to X, and returned by the create_gc virtual method
10688         of GdkDrawableImplX11. 
10689         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10690         rather than gchar, this was also changed in the GdkGC vtable.
10691         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10692         mask is 0, return immediately, instead of checking every flag.
10693         This is faster, and keeps us from segfaulting if values is NULL
10694         and the mask contains some nonzero flags.
10695
10696         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10697         GdkWindow.
10698
10699         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10700         GdkWindowPrivate is gone.
10701
10702         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10703
10704         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10705         remove the image_put stuff that got transferred to GdkDrawable.
10706         
10707         * gdk/x11/gdkinput.c: renamings
10708
10709         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10710
10711         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10712
10713         * gdk/x11/gdkprivate-x11.h: indentation fixes
10714
10715         * gdk/x11/gdkproperty-x11.c: renamings
10716
10717         * gdk/x11/gdkselection-x11.c: renamings
10718
10719         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10720         implements the platform-specific "impl" object.
10721         Moved gdk_window_get_children to gdk/gdkwindow.c
10722
10723         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10724         that no longer exist. Add declaration of GdkGCX11 object here.
10725         Fix all the macros to still work. 
10726
10727         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10728         GdkDragContext from the boxed types since they are now GObjects.
10729
10730         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10731         moved xthickness/ythickness into the instance. GtkStyleClass
10732         functions are now in the standard vtable for GtkStyle, so you have
10733         to create a GObject subclass to write a theme engine.
10734         (gtk_style_copy): fixed a leaked PangoFontDescription
10735         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10736         can be the standard GObject function.
10737         
10738         * Throughout GTK:
10739         s/style->klass->[xy]thickness/style->[xy]thickness
10740         s/pango_layout_unref/g_object_unref/
10741
10742         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10743         
10744         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10745         accessing GDK internals.
10746
10747         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10748         accessing GDK internals.
10749
10750 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10751
10752         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10753
10754         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10755         problem by calculating event position relative to the trough
10756         rather than the slider.
10757         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10758
10759         * gdk/gdkgc.h: Add GDK_NOR.
10760
10761         * configure.in, Makefile.am: Add modules top level dir
10762         * configure.in: Only use pangox library if building x11 target.
10763         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10764
10765 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10766
10767         * gtk/gtkcolorsel.c: Change private class member to be named
10768         private_data throughout the file.
10769
10770         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10771         private_data to avoid clashing with keyword.
10772
10773 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10774
10775         * gdk/gdkdnd.h: Add comment to remove warning.
10776
10777 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10778
10779         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10780         Byelorussian language; changed the Makefile and file names 
10781         to reflect that.
10782
10783 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10784
10785         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10786         rather than gdk_window_hide; this makes things work
10787         correctly if the window is programmatically hidden while
10788         iconified.
10789
10790 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10791
10792         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10793         cut and paste typo where wrong pixmap was being
10794         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10795
10796 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10797
10798         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10799         Add helper function to compute format / bytes 
10800         relationship. Use in a couple places to fix up
10801         errors which assume 8 * format.
10802
10803         * gtk/gtkselection.c (gtk_selection_request): Use 32
10804         rather than 8 * sizeof (GdkAtom), to work correctly
10805         on Alpha.
10806
10807 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10808
10809         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10810         libgtk.la
10811         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10812         versions
10813
10814         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10815         checking macros return NULL since the function has a return value.
10816
10817 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10818
10819         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10820         GTK+ from building at all.
10821
10822         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10823
10824 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10825
10826         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10827         gtk/Makefile.am: make it possible to configure gtk for different
10828         targets on the same platform. The library name is now 
10829         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10830         flag. Only the x11 target compiles right now.
10831         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10832         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10833         * gdk/nanox/gdk*generic*: delete generic region code.
10834         * gdk/linux-fb/gdk*generic*: delete generic region code.
10835         * README.nanox: update information.
10836         
10837 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10838
10839         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10840         prepend not append. (Pointed out by Brett Hall.)
10841
10842 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10843
10844         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10845
10846 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10847
10848         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10849         need this later, and this makes sure that the atexit for
10850         glib gets called after that for GDK, so atexits are
10851         properly ordered for object leak checking.
10852
10853         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10854
10855         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10856         pango_x_shutdown_display()
10857
10858         * gtk/simple.c (main): Close window on destroy.
10859
10860 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10861
10862         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10863         to treat initial creation different from setting with 
10864         regards to the graphics-exposures parameter, so add a parameter
10865         indicating whether this is initial or not.
10866
10867 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10868
10869         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10870         to sort of work by adding an extra return_exposes arg
10871         to gdk_event_translate() - it might be better to simply
10872         deprecate the function altogether and force people to rewrite
10873         without it. gdk_window_scroll() handles most of it, and where
10874         gdk_window_scroll() doesn't work, simply redrawing more does.
10875
10876         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10877         assertion.
10878
10879         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10880
10881         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10882         bunch of pretty much useless /* Print debugging info */ comments 
10883         which had drifted away from the code they were commenting.
10884
10885 2000-06-02  Havoc Pennington  <hp@pobox.com>
10886
10887         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10888         is in working order.
10889         
10890         * gtk/testtext.c: Change to reflect anonymous mark API
10891
10892         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10893
10894         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10895         field, which was unused.
10896
10897         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10898         saves some typing.
10899
10900         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10901
10902         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10903         flag on the insertion point and selection bound
10904
10905         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10906         make mark-manipulation functions take a GtkTextMark* instead of a
10907         mark name.
10908         
10909         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10910         GtkTextMarkBody; will be used to detect attempts to delete
10911         the permanent marks (insert and selection bound)
10912
10913         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10914
10915 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10916
10917         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10918         flag to on.
10919
10920         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10921         Honor DOUBLE_BUFFRED_FLAG
10922
10923         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10924         function to set the DOUBLE_BUFFERED flag.
10925
10926         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10927         or not exposes done on the widget should be double-buffered.
10928
10929         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10930         to be what would be expected. (Fixes problem with a
10931         g_return_if_fail() validating a TextDirection enumeration)
10932
10933 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10934
10935         * gtk/gtkwidget.c: Remove all references to 
10936         offscreen flag which was no longer used.
10937
10938         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10939
10940         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10941         for non-null label_widget->parent.
10942
10943         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10944         which no longer was used.
10945
10946         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10947
10948         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10949         for null arguments.
10950
10951         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10952         check for destroyed windows.
10953
10954 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10955
10956         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10957         the slave context there.
10958
10959         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10960         identical to GtkWindow.
10961
10962 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10963
10964         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10965         pangox to here, so we can write them independent of rendering
10966         system, using GDK primitives.
10967
10968         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10969         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10970         since we have a rendering-system independent implementation in
10971         terms of draw_glyphs().
10972         
10973         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10974         function to render a single line.
10975
10976         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10977         into ../gdkpango.c, which simplifies things, since we
10978         don't have to deal with raw X gc's.
10979
10980 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10981
10982         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10983         get the logical attributes for a given GtkTextLine.
10984
10985 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10986
10987         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10988         g_locale_get_codeset() to g_get_codeset() change.
10989
10990 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10991
10992         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10993         descriptions.
10994
10995         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10996         the entry.
10997
10998         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10999         redoing (vastly simplifying) for Pango. Still needs quite
11000         a bit of work. (Size selection is currently poor. List of 
11001         predefined sizes is not a good idea, since all of these
11002         sizes won't necessarily be distinct.)
11003
11004 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
11005
11006         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
11007         CODESET results for LANG=C.
11008
11009 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
11010
11011         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
11012         which takes a stringized pango font description;
11013         ignore the older 'font' and 'fontset' declarations.
11014
11015         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
11016         field with a GdkFont derived via gdk_font_from_description(),
11017         for compatibility. (Should we just remove it entirely?
11018         Probably too much compatibility breakage, but people
11019         should be migrating to the new Pango stuff as quickly
11020         as possible.)
11021
11022 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
11023
11024         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
11025
11026 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
11029         redoing; there are some bugs in size allocation right
11030         now, the semi-existant distinction between header / day
11031         fonts was removed, but, with Pango, could actually
11032         be made functional in a nice way.
11033         
11034         * gtk/testcalender: Move calender from examples into this
11035         directory as a test program. (We really need to restrcture
11036         testgtk into a whole directory full of tests for every
11037         widget or functionality group, separated into multiple .c
11038         files.)
11039
11040 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
11041
11042         * gtk/testgtk.c (file_exists): Fix stupid typo that
11043         was keeping RC file from being loaded.
11044
11045         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
11046         RC file font code.
11047
11048 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
11049
11050         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
11051         Add function to load a GdkFont from a PangoFontDescription.
11052
11053 2000-05-29  Tor Lillqvist  <tml@iki.fi>
11054
11055         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
11056         variable should be of type GdkEventPrivate.
11057
11058 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
11059
11060         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
11061         to have any widget for the label, use a GtkLabel widget
11062         to display the text. (Based partially on a patch from
11063         Anders Carlson.)
11064
11065         (Quite a bit of code reorganization - strip 90% of the
11066         guts out of gtkaspectframe and add a single virtual
11067         func to GtkFrameClass - compute_child_allocation.)
11068
11069 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
11070
11071         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
11072         (Removed clist->row_center_offset field because caching
11073         it wasn't saving time or code, added private function
11074         _gtk_clist_create_cell_layout()).
11075
11076 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
11077
11078         * gtk/gtkaccellabel.c: Pangoized.
11079
11080         * gtk/[hv]ruler.c: Pangoized
11081
11082 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
11083
11084         * gtk/gtkfilesel.c (gtk_file_selection_init):
11085         Use gtk_clist_set_column_auto_resize() to remove need
11086         need for manual column width computations.
11087
11088 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
11089
11090         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
11091         ensuring Pango correctness, and considerably simplifying the
11092         code.
11093         
11094         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
11095
11096         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
11097         getting of numbers of lines.
11098
11099         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
11100         to the actual requested width of the lable, not to the wrap
11101         width we set.
11102
11103         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
11104
11105         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
11106           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
11107
11108         * gtk/gtktextview.c: Fix structure inheritance.
11109
11110         * gtk/gtkprogressbar.c: Pangoize.
11111
11112 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
11113
11114         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
11115         in a function.
11116
11117         * gtk/gtktextlayout.c (find_display_line_above): Fixed
11118         bug with computing line tops.
11119
11120         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
11121
11122 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11123
11124         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
11125         and y_offset coordinates to do what we need now. (The offset between
11126         buffer and layout coordinates has been reintroduced, but is a 
11127         bit different than before.)
11128
11129         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
11130         handle the adjustments ourselves, and scroll as necessary using
11131         the new gdk_window_scroll().
11132         
11133         The advantage of this is that when we are incrementally revalidating,
11134         we are essentially rearranging things around the visible portion
11135         of the screen. With the old setup, the visible portion of the
11136         screen was moved around in the layout, so scrolling and redrawing
11137         to track that caused jumping of the display. Since we now
11138         control the scrolling ourselves, we can suppress this and
11139         only redraw when things actually change.
11140
11141 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
11142
11143         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
11144         the region not just redisplay it after-all, since we store the
11145         cursors in the LineDisplay. (Ugly interactions here between
11146         GtkLayout and GtkTextBTree here.)
11147         
11148         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
11149
11150 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11151
11152         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
11153         Added function to scroll contents of a window while keeping the
11154         window constant. Works by XCopyArea or guffaw-scrolling depending
11155         on the details of how the window is set up. (guffaw-scrolling
11156         still needs to be filled in.)
11157
11158 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
11159
11160         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
11161         move the debugging that was tied to a global variable
11162         to that.
11163
11164         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
11165
11166         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
11167         validated flag, in line data instead of setting height/width to
11168         -1. This allows us to perform operations with partially invalid
11169         buffer (using the old size for invalid lines) and thus to do
11170         incremental vaidation. Keep height/width aggregates up to date
11171         when deleting text and rebalancing the tree.
11172
11173         * gtk/gtktextbtree.[ch]: Add functions validate a line
11174         (gtk_text_btree_validate_line), and to validate up
11175         to a number of pixels (gtk_text_btree_validate).
11176
11177         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
11178         that indicates that something is changed and a revalidation
11179         pass is needed. Change ::need_repaint to ::changed, and
11180         make it take old and new yranges instead of a rectangle.
11181
11182         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
11183         the line_data_destroy() function from 
11184         gtk_text_btree_add_view() to a virtual function in 
11185         GtkTextLayout
11186
11187         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
11188         since we are handling partial repaints in a different fashion
11189         now.
11190
11191         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
11192         of the selection instead of queueing a repaint on the
11193         entire widget.
11194
11195         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
11196         get_selection_bounds() down to btree, make the function
11197         in buffer a wrapper around the btree function.
11198
11199         * gtk/gtktextlayout.[ch]: Add functions to check if the
11200         layout is valid and to recompute either a range of pixels
11201         aroudn a line or a certain total number of pixels.
11202
11203         * gtk/gtktextlayout.[ch]: Cache a single line display;
11204         now that we only redraw the needed portions, the hit rate
11205         for this cache is quite high.
11206         
11207         * gtk/gtktextview.[ch]: Keep track of the first paragraph
11208         on the screen so that when re-laying-out the buffer, we can
11209         keep the same place. This requires connecting to ::value_changed
11210         on the adjustments
11211
11212         * gtk/gtktextview.[ch]: Add idle functions to revalidate
11213         the buffer after we receive an ::invalidated signal.
11214         
11215 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
11216
11217         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
11218         to max of allocation and layout size, not just to the
11219         layout size.
11220
11221         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
11222         Invalidate window so it gets redrawn properly.
11223
11224         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
11225         to mean the entire window.
11226
11227         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
11228         into public header.
11229
11230 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11231
11232         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
11233         to get the name of a mark.
11234
11235         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
11236         to find the paragraph from a y position.
11237
11238 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
11239
11240         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
11241         nodes have width/height >= 0, not > 0.
11242
11243 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
11244
11245         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
11246         Add a size_only flag, so when we only need the size, we don't create
11247         useless appearance attributes.
11248
11249         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
11250         duplicate setting of font description.
11251
11252         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
11253
11254 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11255
11256         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11257         EXTRA_DIST. It does not work well when the file that
11258         everything depends on is not in the tarball.
11259
11260 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11261
11262         * gtk/testgtk.c: Some hacks and fixes so that it basically
11263         works when not sitting in the GTK+ build tree.
11264
11265 2000-05-03  Havoc Pennington  <hp@redhat.com>
11266
11267         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11268         Properly determine the ordering of the tag root and the current
11269         line within the tree. Previous algorithm only worked if the tag
11270         root's immediate parent was the common root of both the current
11271         line and the tag root.
11272
11273 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11274
11275         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11276         alignment.
11277
11278         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11279         the widget text directional dynamically.
11280
11281         * gtk/gtktextview.[ch]: Added functions to get and set default
11282         wrap mode.
11283
11284 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11285
11286         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11287         in cursor location computation.
11288
11289 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11290
11291         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11292         vadjusment values properly when layout gets smaller.
11293
11294         * gtk/gtktextview.c (need_repaint_handler): Areas being
11295         passed in are far completely inaccurate, and sometimes
11296         too small, so, for now, just queue a redraw on the
11297         whole visible region.
11298
11299 2000-04-25  Havoc Pennington  <hp@redhat.com>
11300
11301         * gtk/gtktextbtree.c (summary_destroy): new function to 
11302         destroy tag summary nodes
11303         (gtk_text_line_next_could_contain_tag): this function was 
11304         totally broken if the line passed in wasn't below the tag
11305         root. Fix it.
11306         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11307         "wildcard" case, we have to do a linear scan. Blah.
11308         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11309         we have to do the linear scan
11310         (tag_removed_cb): When a tag is removed from the tag table, 
11311         remove the GtkTextTagInfo node from the btree.
11312         (gtk_text_btree_spew): Implement the spew function, for 
11313         our debugging pleasure.
11314
11315 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11316
11317         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11318         a problem with referring to the wrong buffer.
11319
11320         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11321
11322         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11323         font description to gtk_style_new() - otherwise things
11324         don't work without a .gtkrc file.
11325
11326         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11327         tags table if we create it ourself, too.
11328
11329         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11330         it was conflicting with XKB modifiers.
11331
11332         * gtk/gtktextview.[ch]: Add simple support for 
11333         GtkIMContext.
11334
11335 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11336
11337         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11338         with deletion from last commit.
11339
11340 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11341
11342         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11343         in the context from the current locale.
11344         
11345         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11346         context, not hardcoded value.
11347
11348         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11349         not logical.
11350
11351 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11352
11353         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11354         attributes - that doesn't handle partial-glyph selection
11355         properly. Instead use new pango_layout_line_get_x_ranges()
11356         functionality to draw the selection.
11357
11358         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11359         now properly handles out-of-range coordinates.
11360
11361         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11362
11363         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11364         public.
11365
11366         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11367         for paragraphs opposite to the base direction of the widget.
11368
11369         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11370
11371         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11372         causes Arabic words to reshape as you cursor through.
11373
11374         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11375         cursor position when moving vertically with the arrow keys and
11376         scrolling with page-up/page-down. (Arrow keys save only the X,
11377         scrolling saves both X and Y.)
11378
11379         This means you can line-up / line-down or page-up / page-down
11380         without losing your place, and also that moving vertically
11381         with the cursor keys keeps the same X position, not the same
11382         character count:
11383
11384         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11385         arrow keys move by display lines, not paragraphs.
11386
11387 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11388
11389         * gtk/gtklayout.c: Make sure that the bin window is at least
11390         as big as the allocation. (Should we also make sure that the
11391         bin window is big enough to completely cover widget->window?)
11392
11393         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11394         function to get the onscreen rectangle.
11395
11396         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11397         for offsets in window coordinates.
11398
11399 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11400
11401         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11402         confusion.
11403
11404         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11405         from the widget direction.
11406
11407         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11408         Add a "direction" attribute.
11409
11410         * gtk/gtktextview.c: global s/tkxt/text_view/.
11411
11412         * gtk/testtext.c: Added long block of text in Arabic, to test out
11413         the direction attributes. (Some problems with the shaping system
11414         for arabic become obvious - like the fact the cursor splits words
11415         into unjoined pieces.)
11416
11417 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11418
11419         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11420
11421         * gtk/gtktextlayout.c: Fix up alignment.
11422
11423         * gtk/testtext.c: Add some tests for centering, wrapping.
11424
11425 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11426
11427         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11428         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11429         If we wrote GTK+-specific layout-render function this could just replace
11430         the draw_layout() operation in the vtable.
11431
11432         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11433         pango_layout_get_cursor_pos() and use that function.
11434
11435         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11436         is a non-static symbol.
11437
11438         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11439         with gtk_text_btree_find_line_by_y()
11440
11441         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11442         renderer that handles GtkTextAppearance attributes.
11443
11444         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11445
11446           - Move the values in the style that don't affect geometry into a
11447             GtkTextAppearance structure.
11448           - Change underline to take a PangoUnderline and "font" a string
11449             representation of a font description
11450           - Add a "font_desc" attribute which takes a FontDescription structure.
11451
11452         * gtk/gtktextlayout.[ch]:
11453
11454           - Get rid of the display-line list per each line. Instead, we
11455             generate, on demand, a GtkTextLineDisplay structure which]
11456             contains a PangoLayout * and other necesary information
11457             (offsets, cursor locations) for displaying a paragraph.
11458           - Get rid of the code to wrap lines, create display chunks,
11459             etc. Instead, we just go through a paragraph and convert
11460             it into the necessary inputs to a PangoLayout.
11461           - Implement a new attribute type, GtkTextAttrAppearance. This
11462             holds a GtkTextAppearance, and is used to pass colors, 
11463             stipple, etc, through from the layout to the display without
11464             having to use lots and lots of individual attributes.
11465           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11466             in terms of PangoLayout functions.
11467         
11468         * gtk/gtktextview.c: 
11469          
11470           - Handle passing the necessary PangoContext to the layout
11471           - Some fixups in painting to deal with the automatic backing store
11472             and offsetting of GTK+-1.4
11473           - Add a style_set handler so that the default style reacts
11474             properly to theme changes.
11475         
11476         * gtk/gtktext?*.[ch]: Random code-style fixes.
11477
11478         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11479
11480 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11481
11482         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11483         in original form preparatory to Pango-ization and gdkimcontext-ization.
11484
11485 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11486
11487         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11488         so that we can derive from gtkimcontext in language bindings properly.
11489
11490 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11491
11492         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11493         Add a compose table including (almost) all the compose combinations
11494         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11495         data in the XIM implementation.
11496
11497         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11498         Moved functions to convert keyvalues from and to unicode here from
11499         the win32 port and made them public.
11500
11501 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11502
11503         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11504
11505 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11506
11507         * gtk/gtkimcontext.[ch]: Base class for new input context system
11508
11509         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11510         the real input context implementation to be loaded from modules
11511         and switched on the fly.
11512
11513         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11514         context that just does direct keysymbol => unicode translation.
11515
11516         * gtk/gtkentry.[ch]: Start switching editing over to using
11517         GtkInputContext. (No handling of preedit yet.)
11518
11519 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11520
11521         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11522         many substitutions. (klass should not be subsituted.)
11523
11524 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11525
11526         * configure.in: Add checks for Pango
11527
11528         * configure.in docs/Makefile.am: Add test for sgml2html
11529         and allow 'make dist' without building html, but print out
11530         warnings in that case. (For making snapshots)
11531
11532         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11533         Add Pango libraries and C flags
11534
11535         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11536         Add function (gdk_draw_layout) to draw a pango layout.
11537
11538         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11539         for getting Pango contexts for GDK.
11540
11541         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11542
11543         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11544         editing.
11545
11546         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11547         keysym => unicode translations. More languages can be added
11548         here, but real input-method support is needed.
11549
11550         * docs/Changes-1.4.txt: Added note about entry behavior.
11551         
11552         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11553         to set the reading direction for a widget and the global direction.
11554         Add test which allows toggling the global direction. Two private
11555         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11556
11557         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11558           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11559
11560         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11561
11562         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11563         underlining now handled by Pango.
11564
11565         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11566         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11567         is temporary.)
11568
11569         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11570         convenience functions for creating contexts and layouts for widgets.
11571
11572         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11573
11574 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11575
11576         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11577         titles to be active, even if they aren't visible.
11578         (gtk_clist_column_titles_passive):  Ditto.
11579
11580 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11581
11582         * gtkmenu.c:
11583         * gtkmenu.h:
11584         * gtktypeutils.h: Spelling/grammar fixes in comments.
11585
11586 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11587
11588         * gdk/nanox/*.h: add missing header files.
11589
11590 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11591
11592         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11593         send_event to TRUE.
11594         (gtk_drawing_area_size): queue a resize.
11595
11596 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11597
11598         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11599         the handlers, also invalidate them. bug nailed down by Karl Nelson
11600         <kenelson@ece.ucdavis.edu>.
11601
11602 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11603
11604         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11605         "(nil)" foundries, patch from Grigorios Magklis.
11606
11607         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11608         on non-available fonts, based on a patch by Grigorios Magklis
11609         <maglis@cs.rochester.edu>.
11610
11611 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11612
11613         * gdk/x11/gdkregion-generic.c: If a region does not have any
11614         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11615         instead of GDK_OVERLAP_RECTANGLE_IN.
11616
11617 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11618
11619         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11620         OFFSCREEN, as it is no longer necessary.
11621
11622 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11623
11624         * gtk/gtkcolorsel.c: Patch from David Santiago
11625         <mrcooger@cyberverse.com> to change things so that the 
11626         indicator of the active palette entry is done independently,
11627         not via the focus, since it should always be visible.
11628
11629 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11630
11631         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11632         refcount leaks as in the X11 backend.
11633
11634         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11635         cosmetics.
11636
11637         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11638         backend. Add _gdk_windowing_window_destroy().
11639
11640         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11641         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11642         either, but these probably do exist on nanox?)
11643         
11644         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11645         which isn't necessarily defined by <math.h>.
11646
11647         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11648         ancestry past GtkObject.
11649
11650         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11651         from DLL on Win32.
11652
11653         * gtk/gtk.def: Update corresponding to recent changes.
11654
11655         * gtk/makefile.{cygwin,msc}: Updates.
11656
11657 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11658
11659         * docs/Changes-1.4.txt: A bit of editing.
11660
11661         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11662         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11663         to clear the update area for the window, and clear it
11664         when hiding a window.
11665
11666         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11667         if window destroyed.
11668
11669         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11670
11671         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11672         gdk_window_destroy() to the generic code, since there was a lot of 
11673         window-system-independent logic it in. Add a function:
11674         
11675          _gdk_window_destroy() 
11676
11677         to the internal API to destroy a window without unreferencing it.
11678         Add a function:
11679
11680          _gdk_windowing_window_destroy()
11681
11682         That does the windowing-system-dependent part of destroying 
11683         the window.
11684
11685 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11686
11687         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11688
11689 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11690
11691         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11692         Make gtk_widget_shape_combine_mask() keep a reference count on
11693         the pixmap since it keeps it around.
11694
11695 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11696
11697         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11698         leak.
11699
11700         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11701         leak with event filters.
11702
11703 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11704
11705         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11706         signal handlers with the right data arguments. (Fixes
11707         some warnings when a widget was repeatedly set as a drag
11708         destination.)
11709
11710         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11711         window so we can avoid avoid setting the DND properties on the
11712         toplevel window repeatedly.
11713
11714 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11715
11716         * gdk/win32/gdkwin32.h: Define more message types missing from
11717         mingw headers.
11718
11719         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11720         call gdk_window_destroy_notify(). It was never called. This
11721         probably meant that the GdkWindow was never freed. Thanks Owen for
11722         noticing (!).
11723
11724         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11725         window as destroyed before calling DestroyWindow(). DestroyWindow()
11726         causes a call to the window procedure (gdk_WindowProc), which
11727         calls gdk_event_translate(), which calls
11728         gdk_window_destroy_notify(), which gets confused unless the window
11729         is set as destroyed.
11730
11731         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11732         this function to indicate it's win32 only. Put inside #ifdef
11733         G_ENABLE_DEBUG.
11734
11735         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11736         debugging function. (gdk_event_translate:) Add a default branch
11737         that uses the above function to print debug messages with all
11738         Windows messages symbolically.
11739
11740         * gdk/win32/gdkprivate-win32.h: Declare it, and
11741         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11742
11743 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11744
11745         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11746         public header file.
11747
11748 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11749
11750         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11751
11752         * gtk/gtktext.c: made the adjustments no-construct args, simply
11753         provide default adjustments.
11754         (gtk_text_destroy): release adjustments.
11755
11756         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11757         adjustment argument non-construct.
11758
11759         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11760         instead of in finalize.
11761         (gtk_progress_get_text_from_value): 
11762         (gtk_progress_get_current_text): 
11763         (gtk_progress_set_value): 
11764         (gtk_progress_get_percentage_from_value): 
11765         (gtk_progress_get_current_percentage): 
11766         (gtk_progress_set_percentage): 
11767         (gtk_progress_configure): ensure an adjustment is present.
11768
11769 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11770
11771         * gtk/gtkcolorsel.[hc]:
11772         * gtk/gtkcolorseldialog.[hc]:
11773         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11774         their parent implementation, use bit fields for boolean values, don't
11775         create unused widgets, usage of glib types, braces go on their own
11776         lines, function argument alignment, #include directives etc. etc. etc..
11777
11778         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11779
11780 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11781
11782         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11783
11784         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11785         of NULL.
11786
11787         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11788         to freed data.
11789         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11790
11791         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11792         to NULL when the toplevel is getting destroyed.
11793         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11794         (gtk_menu_destroy): 
11795         (gtk_menu_init): store the information of whether we have to
11796         readd the initial child ref_count during destruction in a new
11797         GtkMenu field needs_destruction_ref_count.
11798
11799         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11800         here, those reading: learn from my mistake! ;)
11801         in order for set_?adjustment to support a default adjustemnt if
11802         invoked with an adjustment pointer of NULL, the code read (pseudo):
11803         if (v->adjustment) unref (v->adjustment);
11804         if (!adjustment) adjustment = adjustment_new ();
11805         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11806         now imagine the first unref to actually free the old adjustment and
11807         adjustment_new() creating a new adjustment from the very same memory
11808         portion. here, the latter comparision will unintendedly fail, and
11809         all hell breaks loose.
11810         (gtk_viewport_set_hadjustment):
11811         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11812         after unreferencing it.
11813
11814         * gtk/gtkcontainer.[hc]: removed toplevel registration
11815         functions: gtk_container_register_toplevel(),
11816         gtk_container_unregister_toplevel() and
11817         gtk_container_get_toplevels() which had wrong semantics
11818         anyways: it didn't reference and copy the list.
11819
11820         * gtk/gtkwindow.c: we take over the container toplevel registration
11821         bussiness now. windows are registered across multiple destructions,
11822         untill they are finalized. the initial implicit reference count
11823         users are holding on windows is removed with the first destruction
11824         though.
11825         (gtk_window_init): ref & sink and set has_user_ref_count, got
11826         rid of gtk_container_register_toplevel() call. add window to
11827         toplevel_list.
11828         (gtk_window_destroy): unref the window if has_user_ref_count
11829         is still set, got rid of call to
11830         gtk_container_unregister_toplevel().
11831         (gtk_window_finalize): remove window from toplevel list.
11832         (gtk_window_list_toplevels): new function to return a newly
11833         created list with referenced toplevels.
11834         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11835
11836         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11837         adjustment a non-construct arg.
11838         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11839         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11840         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11841
11842         * gtk/gtkrange.c: added some realized checks.
11843         (gtk_range_destroy): get rid of the h/v adjustments in the
11844         destroy handler instead of finalize. remove timer.
11845         (gtk_range_get_adjustment): demand create adjustment.
11846
11847         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11848         we simply create them on demand now and get rid of them in
11849         the destroy handler.
11850         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11851         destroy handler instead of finalize.
11852         (gtk_viewport_get_hadjustment): 
11853         (gtk_viewport_get_vadjustment): 
11854         (gtk_viewport_size_allocate): demand create h/v adjustment
11855         if required.
11856
11857         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11858         gtk_widget_real_destroy () functionality.
11859         (gtk_widget_real_destroy): reinitialize with a new style, instead
11860         of setting widget->style to NULL.
11861
11862 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11863
11864         * gtk/gtkcalendar.c:
11865         * gtk/gtkbutton.c: ported _get_type() implementation over to
11866         GType, either to preserve memchunks allocation facilities,
11867         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11868
11869         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11870         over. prepare for ::destroy to be emitted multiple times.
11871         removed reference tracer magic. chain into GObjectClass.shutdown()
11872         to emit ::destroy signal.
11873
11874         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11875         fundamental.
11876
11877         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11878         cludge.
11879
11880         * gtk/gtksocket.c:
11881         * gtk/gtkplug.c:
11882         * gtk/gtklayout.c:
11883         * gtk/gtklabel.c:
11884         * gtk/gtkargcollector.c:
11885         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11886         not being a fundamental anymore, and to work with the new
11887         type system (nuked fundamental type varargs clutter).
11888
11889         * gtk/*.c: install finalize handlers in the GObjectClass
11890         part of the class structure.
11891         changed direct GTK_OBJECT()->klass accesses to
11892         GTK_*_GET_CLASS().
11893         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11894
11895         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11896         GType. made most of the GTK_*() type macros and Gtk* typedefs
11897         simple wrappers around macros and types provided by GType.
11898         most notably, a significant portion of the old API vanished:
11899         GTK_TYPE_MAKE(),
11900         GTK_TYPE_SEQNO(),
11901         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11902         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11903         GTK_TYPE_ARGS,
11904         GTK_TYPE_CALLBACK,
11905         GTK_TYPE_C_CALLBACK,
11906         GTK_TYPE_FOREIGN,
11907         GtkTypeQuery,
11908         gtk_type_query(),
11909         gtk_type_set_varargs_type(),
11910         gtk_type_get_varargs_type(),
11911         gtk_type_check_object_cast(),
11912         gtk_type_check_class_cast(),
11913         gtk_type_describe_tree(),
11914         gtk_type_describe_heritage(),
11915         gtk_type_free(),
11916         gtk_type_children_types(),
11917         gtk_type_set_chunk_alloc(),
11918         gtk_type_register_enum(),
11919         gtk_type_register_flags(),
11920         gtk_type_parent_class().
11921         replacements, where available are described in ../docs/Changes-1.4.txt.
11922         implemented compatibility functions for the remaining API.
11923
11924         * configure.in: depend on glib 1.3.1, use gobject module.
11925
11926 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11927
11928         * TODO.xml: Various updates to current status.
11929
11930 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11931
11932         * gtk.m4: Print out version when test succeeds.
11933
11934 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11935
11936         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11937         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11938         
11939         (Original triangle color selector from Simon Budig
11940         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11941         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11942         Santiago <mrcooger@cyberverse.com>)
11943
11944         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11945         out into a separate widget.
11946
11947         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11948         and opacity controls.
11949
11950 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11951
11952         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11953         snuck in prematurely.
11954
11955 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11956
11957         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11958         had deleted a ! operator by mistake, which caused
11959         GDK_SELECTION_CLEAR events never to be generated, which caused
11960         only the first copy to the clipboard from an gtkeditable to
11961         actually cause a copy to the Windows clipboard.
11962
11963 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11964
11965         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11966         compilation, too. Current mingw gcc distributions include the
11967         necessary headers. Also the necessary IIDs are now in mingw
11968         headers/libraries, and own definitions unnecessary.
11969
11970         More hacking on OLE2 DND, still doesn't work though, and thus
11971         ifdeffed out.
11972
11973         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11974         here, too.
11975
11976 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11977
11978         * gdk/nanox/*: nano-X port work in progress.
11979         * gdk/simple.c: simple test for Gdk.
11980         * README.nanox: notes about the port: read this first!
11981         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11982         with nano-X.
11983
11984 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11985
11986         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11987         gdk_window_clear() into common code, implement in terms of
11988         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11989         not redirected to the backing rectangle.
11990
11991 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11992
11993         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11994         EXTRA_DIST. It does not work well when the file that
11995         everything depends on is not in the tarball.
11996
11997 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11998
11999         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
12000         with recursion where process_updates() is called from
12001         an expose handler. (GtkTextView is highly broken in
12002         doing this, but it should work, so it is a nice test
12003         case.)
12004
12005 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12006
12007         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
12008         handle the case where updates are queued during processing of
12009         updates.
12010
12011 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12012
12013         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
12014         window is on gdk_display - use that instead of segfaulting.
12015
12016 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
12017
12018         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
12019         broken and require an empty arg, give it to them.
12020
12021 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
12022
12023         * gtk/gtklabel.h: indentation fixes.
12024
12025 2000-05-02  Tor Lillqvist  <tml@iki.fi>
12026
12027         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
12028         draw too narrow or too low arcs, they seem to fail, at least with
12029         some display drivers.
12030
12031         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
12032
12033         Large changes to the Win32 backend, partially made necessary by
12034         the changes to the backend-independent internal
12035         structures. Attempts to implement similar backing store stuff as
12036         on X11. The current (CVS) version of the Win32 backend is *not* as
12037         stable as it was before the no-flicker branch was merged. A
12038         zipfile with that version is available from
12039         http://www.gimp.org/win32/. That should be use by "production"
12040         code until this CVS version is usable. (But note, the Win32
12041         backend has never been claimed to be "production quality".)
12042
12043         * README.win32: Add the above comment about versions.
12044
12045         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
12046
12047         * gdk/gdk.def: Update.
12048
12049         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
12050         presumably be replaced by some more better mechanism as 1.4 gets
12051         closer to release shape.
12052
12053         * gdk/makefile.{cygwin,msc}: Update.
12054
12055         * gdk/win32/*.c: Correct inclusions of the backend-specific and
12056         internal headers. Change code according to changes in these. Use
12057         gdk_drawable_*, not gdk_window_* where necessary.
12058
12059         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
12060         our old DND.
12061
12062         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
12063         to interpret single characters as UTF-8. Thanks to Hans Breuer.
12064         Use correct function name in warning messages.
12065
12066         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
12067         GSourceFuncs gdk_event_prepare and gdk_event_check.
12068         (gdk_event_get_graphics_expose): Do implement, use
12069         PeekMessage. Thanks to Hans Breuer.
12070         (event_mask_string): Debugging function to print an GdkEventMask.
12071         (gdk_pointer_grab): Use it.
12072
12073         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
12074         (old) book I used claimed was Hangul actually is CJK Unified
12075         Ideographs Extension A. Also, Hangul Syllables were missing.
12076         Improve logging.
12077
12078         * gdk/win32/gdkgc-win32.c: Largish changes.
12079
12080         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
12081         g_win32_getlocale() from GLib, and not setlocale() to get current
12082         locale name.
12083
12084         * gdk/win32/gdkprivate-win32.h
12085         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
12086         gdkwin32.h, similarily as in the X11 backend.
12087
12088         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
12089         assignment was used instead of equals in if test. Thanks to Hans
12090         Breuer.
12091
12092         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
12093         the X11 version.
12094
12095         * gdk/win32/makefile.{cygwin,msc}
12096         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
12097         path to the Win32 headers that works also with the mingw compiler.
12098
12099         * gtk/gtkstyle.c: Include <string.h>.
12100
12101 2000-04-26  Havoc Pennington  <hp@redhat.com>
12102
12103         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
12104         replacing the broken gtk_label_get ()
12105
12106 2000-04-15  Havoc Pennington  <hp@pobox.com>
12107
12108         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
12109         this keeps scanner scripts from getting confused.
12110
12111         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
12112         data, rather than void
12113
12114 2000-04-15  Tor Lillqvist  <tml@iki.fi>
12115
12116         * gtk/gtkclist.c (gtk_clist_motion)
12117         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
12118         with is_hint FALSE, get x and y from the event. They used to be
12119         used uninitialised. The Win32 backend never sends motion events
12120         marked as hints. This for instance fixes the annoying file and
12121         font selector behaviour in the Win32 version.
12122
12123 2000-04-14  Tor Lillqvist  <tml@iki.fi>
12124
12125         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
12126         gtk_private_n_signals variables, they are used by some software,
12127         sigh.
12128
12129         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
12130         installation directory from the Registry, where the installer
12131         should have put it.
12132
12133 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
12134
12135         * gdk/x11/Makefile.am: Fix problem with installation directory for
12136         gdkx.h
12137
12138         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
12139         <mrcooger@cyberverse.com> so that when selecting menus with the
12140         mouse, the first item will not be selected, but when selecting
12141         with an accelerator, or navigating left-right on a menubar with
12142         the menus popped up, the first item will be selected.
12143
12144 2000-04-05  Dan Damian  <dand@dnttm.ro>
12145
12146         * configure.in: Added "ro" to ALL_LINGUAS.
12147
12148 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
12149
12150         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
12151         indentation.
12152
12153         * Makefile.am (EXTRA_DIST): Fix typo.
12154
12155         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
12156         to catch gdkconfig.h
12157
12158         * gtk/gtkitemfactory.c: Added FIXME.
12159
12160 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
12161
12162         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
12163         s/return_if_fail/return_val_if_fail/g and add a return value.
12164
12165 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12166
12167         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
12168         merge slipup.
12169
12170         * gdk/gdkinput.h: Fix missing line from merge.
12171
12172 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
12173
12174         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
12175         instead of gdkprivate.h.
12176
12177 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
12178
12179         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
12180         parent class to correctly be GtkDialogClass.
12181
12182 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
12183
12184         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
12185         toplevel windows and their immediate children by their parents,
12186         since the size of toplevel windows is out of our immediate
12187         control and we don't get any real benefit from trying to track
12188         this size for clipping.
12189
12190         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
12191         for input_only windows.
12192
12193         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
12194         to fix some hacks and make sure that we don't try to set the
12195         background of input only windows.
12196
12197 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
12198
12199         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
12200         the _really_ internal stuff, and leave gdkprivate.h for the fake private
12201         stuff that we've traditionally exposed.
12202
12203         * gdk/**.c: Use gdkinternals.h where appropriate.
12204
12205         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
12206         not include gdkprivate-x11.h, move all stuff of conceivable public
12207         interest into gdkx.h; keep all really private stuff in
12208         uninstalled header gdkprivate-x11.h.
12209
12210         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
12211         image->image_put on windows through a new function _gdk_window_draw_image()
12212         to allow us to do backing store for images. (Sort of ugly)
12213
12214         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
12215         contexts locally so that we can offset them properly when drawing 
12216         onto backing pixmaps.
12217
12218         * gdk/gdkinput.h: Reindented
12219
12220         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
12221         pixmap or color for the window, so we can properly initialize
12222         our double-buffer pixmaps, and also so that we temporarily set
12223         a background of None while scrolling.
12224
12225         * gdk/gdkregion.h: Revise region boolean operators to have an
12226         interface that is actually convenient - switch from creating new
12227         regions on every op, to "methods" that modify existing regions
12228         (A = A OP B). 3 argument forms which allow dest == src, would also
12229         be possible, but the current interfaces seem to map nicely
12230         onto what needs to be done. (There is quite a lot of region
12231         code in GDK now.)
12232
12233         * gdk/gdkregion.h: Add constructor from rectangle and a copy
12234         operator.
12235
12236         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
12237         gdkpoly-generic.h: Copy region code from Xlib, switch it over
12238         to 32 bit coordinates, modify it to be mostly GTK+ style
12239         and to have interfaces that match gdkregion.h.
12240
12241         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
12242         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
12243         create a backing pixmap and redirect all drawing to
12244         that backing pixmap until a matching gdk_window_end_paint().
12245
12246         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
12247         Create a special drawable class for GtkWindow's that 
12248         redirects the drawing to the backing pixmap as necessary
12249         and then calls the real operations in _gdk_windowing_window_class.
12250
12251         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
12252         Store invalid region for each window. Generate expose events for invalid
12253         region in an idle. This replaces both the expose compression
12254         and the redrawing queuing in GTK+. It is both more efficient and
12255         simpler than either one individually and far more so then the
12256         combination.
12257
12258         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
12259         Emulate 32 bit coordinates for windows with 16 bit coordinates
12260         by offsetting drawing, guffaw scrolling techniques and
12261         mapping/unmapping child windows as necessary.
12262
12263         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12264         where, when invalid regions are processed, the region is stored,
12265         and if expose events come in that are detectably duplicate
12266         the processed exposes (by comparison of event serial numbers),
12267         the stored region is subtracted out of those exposes.
12268
12269         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12270         regions newly exposed when scrolling or resizing windows.
12271         This, combined with forcing processesing of queued invalidated
12272         regions, gives nice flicker-free scrolling.
12273
12274         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12275         invalidated regions after every scroll.
12276
12277         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12278         emulation in GDK. Its, for all practical purposes just a
12279         GtkViewport/GtkFixed hybrid now.
12280
12281         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12282         (16-bit) structures as necessary instead of just casting.
12283
12284         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12285         in terms of the structures from gdkregion-generic.c, using appropriate
12286         offsets from GDK to X11 coordinates. Cache clip mask and
12287         origin and ts origin locally and only flush to the server
12288         when drawing, to avoid constantly setting and resetting these
12289         values when offsetting GC's for scrolling and backing pixmaps.
12290
12291         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12292
12293         * gtk/gtkcontainer.c: Call process_all_updates at end
12294         of resizing to reduce flicker. (Avoids having redraw
12295         lag arbitrarily behind resize under some circumstances)
12296
12297         * gtk/gtkentry.c: Remove old backing store code, and simply take
12298         advantage of the new backing store capabilities of GDK.
12299
12300         * gtk/gtkmain.c: Simple implementation of widget backing
12301         store - simply push a paint while handling each expose.
12302         (Should really be configurable widget for widget.)
12303         
12304         * gtk/gtkwidget.c: Remove all the old complicated redraw
12305         code, and simply invalidate the GDK windows from
12306         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12307         debugged complexity ... gone to the winds.)
12308
12309         Remove all the code for suppressing expose events while
12310         resizes are pending; this isn't needed since the invalid
12311         areas won't be processed until after the resizes are
12312         processed, since they are in a lower priority idle.
12313
12314 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12315
12316         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12317         and height of dest rectangle for non-intersecting rectangles.
12318
12319 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12320
12321         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12322         for GdkRectangle.
12323
12324 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12325
12326         * gdk/gdk{events,image,private,types,window}.h
12327          gdk/x11/gdkinputprivate.h: Change all coordinates
12328          from int16 to int. Also, Change width and height from
12329          unsigned to signed to avoid all the stupid C 
12330          signedness bugs.
12331
12332 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12333
12334         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12335         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12336         Add some more detailed checking.
12337
12338         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12339         New function to retrieve the depth of a drawable.
12340
12341         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12342         field, reorder fields to save memory. 
12343
12344 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12345
12346         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12347         of the background image instead of scaling the background down to
12348         a line.
12349
12350         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12351         which temporarily set slider to wrong size.
12352
12353         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12354         queue_clear().
12355
12356 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12357
12358 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12359
12360         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12361
12362 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12363
12364         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12365         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12366
12367         * gdk/win32/gdkfont-win32.c
12368         * gdk/win32/gdkproperty-win32.c
12369         * gdk/win32/gdkselection-win32.c
12370         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12371         now declared such.
12372
12373 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12374
12375         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12376
12377 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12378
12379         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12380         is called without trapping X errors.
12381
12382 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12383
12384         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12385         way into the fontset lists.
12386
12387 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12388
12389         * gtk/gtkthemes.h: add extern "C" scope.
12390
12391 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12392
12393         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12394         to make appends to the list constant. (gtk-guy-990901-0.patch)
12395
12396 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12397
12398         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12399         for the typename hash table.
12400
12401 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12402
12403         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12404         to make sure we never divide by zero. 
12405         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12406
12407 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12408
12409         * gtk/gtkfontsel.c: Apply patch from
12410         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12411         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12412
12413         Also, some cleanups in atom handling.
12414
12415 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12416
12417         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12418         not GtkWidget.
12419
12420 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12421
12422         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12423         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12424         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12425         more guint wrap-around bugs before going to bed.
12426
12427 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12428
12429         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12430         guint wrap arounds in allocation.width.
12431
12432         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12433         process untill we fit the allocation given.
12434
12435 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12436
12437         * gtk/gtkwidget.c:
12438         (gtk_widget_unrealize): guard widget access with ref/unref
12439         around signal emission.
12440         (gtk_widget_hide): same here, but also check its destroyed
12441         state before queueing a resize.
12442
12443 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12444
12445         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12446         of gtk_default_insensitive_bg as insensitive base color.
12447
12448         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12449         to the widget's state.
12450         (gtk_text_realize): same here.
12451         (gtk_text_state_changed): same here.
12452         (draw_bg_rect): compare background color against base[] from
12453         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12454
12455 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12456
12457         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12458         grabs are active, unless a delete event is send to the toplevel
12459         of the currently grab holding widget.
12460
12461 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12462
12463         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12464         debugging g_print's.
12465
12466 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12467
12468         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12469         ever make the scrolled-window requisition ever depend on the 
12470         visibility state of the scrollbars for the AUTOMATIC policy. 
12471         This breaks the GTK+ requisition model, and causes loops.
12472
12473 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12474
12475         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12476         the default font to avoid problems with XFree86-4.0 where the
12477         default charset is iso10646-1, not iso8859-1.
12478
12479 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12480
12481         * acinclude.m4
12482         * config.guess
12483         * config.sub
12484         * ltconfig
12485         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12486
12487         * gtk/Makefile.am: minor cosmetic consistency tweak
12488
12489 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12490
12491         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12492         the activate_time to 0, so that we handle a quick
12493         press/release press/release properly and don't suppress
12494         the second release. (Red Hat bug #7545)
12495
12496 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12497
12498         * gtk/gtkctree.c (row_delete):
12499         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12500         bugs with destruction notifier, *always* update internal
12501         structures *before* calling user code.
12502
12503 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12504
12505         A few more fixes for bug #5487, #2051, #2677.
12506         * gtk/gtkclist.c : 
12507         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12508         not GDK_BUTTON_PRESS.
12509         (resync_selection): resync only if selection_mode is
12510         GTK_SELECTION_EXTENDED
12511         * gtk/gtkctree.c (resync_selection): same here
12512
12513 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12514
12515         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12516         gdk_drag_get_selection() and gtk_menu_detach().
12517
12518         [ From Jeroen Ruigrok/Asmodai ]
12519
12520 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12521
12522         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12523         page->tab_label can be NULL.
12524
12525 2000-01-25  Havoc Pennington  <hp@pobox.com>
12526         
12527         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12528         arg is boolean
12529
12530         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12531
12532         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12533
12534         * gdk/gdkproperty.c (gdk_property_get): return boolean
12535
12536         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12537
12538         * gdk/gdkim.c (gdk_im_ready): return boolean
12539
12540         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12541
12542         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12543         glib clash, should fix glib)
12544
12545         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12546         (gdk_get_show_events): return gboolean, and canonicalize 
12547         to TRUE/FALSE
12548
12549         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12550         colormap is private
12551         (gdk_colors_alloc): gboolean whether to be contiguous
12552         (gdk_color_equal): return gboolean since we are a predicate
12553         and not a qsort() (this looks semi-wrong due to glib breakage,
12554         IMO glib should be fixed)
12555         
12556         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12557         (gdk_get_use_xshm): return gboolean
12558         (gdk_pointer_is_grabbed): return gboolean
12559
12560         * gdk/gdk.h: Change prototypes to match all the above changes,
12561         and re-run egtk-format-protos as required.
12562
12563 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12564
12565         * gtk/gtkctree.c (resync_selection): 
12566         * gtk/gtkclist.c (resync_selection):
12567
12568         Return immediately if clist->drag_pos < 0. This is a workaround
12569         for the corrupt state that the clist gets into when a
12570         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12571
12572         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12573         
12574         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12575         variable from recent commit.
12576
12577 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12578
12579         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12580
12581 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12582
12583         * gtk/Makefile.am: prefix all autogenerated source that get build in
12584         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12585         in builddir. since we subsequently cd into srcdir for autogeneration,
12586         the paths have to be stripped from the target file names, thusly we
12587         use $(@F) as target names now.
12588         put a comment about configure.in's --disable-rebuilds option,
12589         which can be used for non-writable source directories, for development
12590         setups though, srcdir has to be *writable*.
12591
12592 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12595           Finish the job of allowing event to be NULL.
12596           (Fixes bug #4283, reported by Chris Blizzard)
12597
12598         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12599           things so that the cursor appears on screen, properly
12600           take into account INNER_BORDER.
12601           (Fixes bug #4754, reported by Antonio Campos)
12602
12603 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12604
12605         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12606           show the tab_label unless it itself is visible.
12607
12608           gtk/gtknotebook.c (gtk_notebook_size_request):
12609           Do a better job of making sure that the visibility
12610           of the tab label corresponds to whether it should
12611           be mapped or not.
12612
12613 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12614
12615         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12616           Use the requisition, not the allocation, since the
12617           allocation has not necessarily been computed yet.
12618           (Pointed out by Eugene Osintsev)
12619
12620 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12621
12622         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12623           style/base[GTK_STATE_INSENSITIVE] both to
12624           gtk_default_insensitive_bg!
12625           (Bug #2187, reported by Jonathan Blandford)
12626
12627         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12628           Add Alt_L, Alt_R to list of invalid accelerators.
12629           (Bug #3736, reported by Vlad Harchev)
12630
12631 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12632
12633         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12634         bugs which occured after an attempt to open 
12635         invalid home directory left cmpl_state->reference_dir == NULL.
12636
12637          - completion on files in home directory didn't work
12638          - completion on an empty string caused  segfault
12639
12640          (Bug #3678, reported by Steve Ratcliffe)
12641
12642         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12643         cut and paste error that was causing scales to
12644         be incorrectly positioned.
12645         (Bug #2956,
12646          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12647
12648 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12649
12650         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12651         when checking for dcgettext, if we've found we needed
12652         it for dgettext.
12653 +
12654 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12655
12656         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12657         queue_clear on NO_WINDOW widgets during a reparent,
12658         since at that point the window and widget heirarchies
12659         are out of sync. This stops crashing in some cases
12660         (the scrolled window reparent test, for instance), and
12661         _probably_ won't cause drawing errors.
12662
12663         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12664         test do what it was supposed to do and be robust against
12665         window closings, etc. (Bug #2443)
12666
12667 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12668
12669         * gtk/gtkentry.c: Fix return values on mouse events.
12670         (Bug #2686, Sky <seb_sky@yahoo.com>)
12671
12672         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12673         (pointed out by George Lebl)
12674
12675         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12676         (From Ettore Perazzoli  <ettore@helixcode.com>)
12677  
12678 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12679
12680         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12681         clicks between rows or outside calender area correctly.
12682         (Patch from Damon Chaplin)
12683
12684         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12685         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12686           Call destroy function when overwriting existing data. 
12687           (Pointed out by Damon Chaplin)
12688
12689 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12690
12691         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12692           which was causing problems on various systems with Xmu.
12693           This hasn't been needed for a very long time.
12694           (Fixes #1185 3167)
12695
12696 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12697
12698         * gdk/gdki18n.h: Include <ctype.h> when defining
12699           gdk_isw* in terms of is* as a fallback.
12700           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12701
12702 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12703
12704         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12705           realize the widget when it is size allocated!
12706           (old, old bug)
12707
12708         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12709           Removed unused call to gdk_window_get_size() that
12710           showed up when the above was fixed.
12711
12712 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12713
12714         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12715           fix up widget->window when the widget is a
12716           NO_WINDOW container widget.
12717
12718 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12719
12720         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12721           to account for the fact that feof() does _not_ 
12722           return TRUE on errors, and thus avoid infinite loops
12723           when trying to use gdk_pixmap_create_from_xpm()
12724           on unreadable values.
12725
12726 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12727
12728         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12729
12730 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12731
12732         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12733           gdk_gc_set_dashes to take gint8 instead of gchar to
12734           make it clearer that it is _not_ a NULL terminated string.
12735
12736         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12737           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12738           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12739           arguments.
12740
12741 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12742
12743         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12744         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12745         background size relative to our allocation, guard against small
12746         allocations, we may have not yet been size allocated.
12747
12748 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12749
12750         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12751         not just version == 3. We implement all 3 + most of 4 - 
12752         (we don't support matching text/plain;charset=iso-8859-1
12753         to a dest that expects text/plain). We'll still advertise
12754         3 to be safe, but any client implementing version >= 3
12755         must interoperate with 3.
12756         
12757 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12758
12759         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12760         background and gc members, add a warning in gtk_tooltips_set_color()
12761         indicating that this function is deprecated.
12762
12763 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12764
12765         * docs/gtkfaq.sgml: FAQ Update:
12766           - Minor cleanups (Emmanuel, me)
12767           - New questions:
12768                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12769                 How can I retrieve the text from a GtkMenuItem? (timj)
12770                 How do I validate/limit/filter the input to a GtkEntry? (me)
12771                 Memory does not seem to be released when I free the list
12772                         nodes I've allocated (timj)
12773
12774 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12775
12776         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12777         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12778         for which it is no use to call GetLastError onWin9x.
12779         (gdk_other_api_failed) New function, for general error
12780         reporting without calling GetLastError.
12781         (gdk_win32_api_failed) OTOH, this function always calls
12782         GetLastError. (gdk_win32_last_error_string) Remove this function,
12783         GLib has the equivalent now.
12784
12785         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12786         call them with function name, file name and line number in the
12787         arguments.
12788
12789         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12790         functions.
12791         
12792         * gtk/gtk.def: Add some missing entry points.
12793
12794         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12795         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12796         
12797         Fixes by Hans Breuer:
12798
12799         * gdk/makefile.msc: Update for debugging.
12800
12801         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12802         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12803         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12804         in the dash_list.
12805
12806         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12807         the x11 backend.
12808
12809         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12810
12811         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12812
12813 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12814
12815         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12816         just pixel value of background colour.
12817
12818         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12819         containing code snippet previously duplicated in a couple of
12820         places.
12821         
12822         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12823         gdk_colormap_color.
12824
12825         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12826         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12827         events for autorepeated Shift, Control and Alt keys. Use
12828         gdk_colormap_color.
12829
12830         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12831         pointer is inside the window the cursor of which we are setting,
12832         call SetCursor immediately.
12833
12834         * gdk/win32/makefile.cygwin
12835         * gtk/makefile.cygwin: If we don't have the build number stamp
12836         file, use zero.
12837
12838         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12839         gtk_paned_set_gutter_size as empty.
12840
12841         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12842         
12843 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12844
12845         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12846           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12847           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12848           docs/gtk_tut.sgml docs/gtk.texi TODO:
12849
12850           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12851
12852 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12853
12854         * gtk/gtkcalendar.c: Implement num_marked_dates,
12855           and don't emit mutiple day_selected signals on
12856           month_prev.
12857
12858 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12859
12860         * docs/make-todo (lineno): let title and logo be configurable so
12861         that GNOME can use this script too.
12862
12863         * TODO.xml: added logourl and a title
12864
12865 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12866
12867         * TODO.xml: Added some UI items, and an explanatory
12868         comment at the top of the file.
12869
12870 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12871
12872         * TODO.xml: some updates, added abunch of new entries.
12873         a note for those fiddeling with this file, when done
12874         with it, invoke:
12875         $ ./docs/make-todo TODO.xml >/dev/null
12876         and correct output errors before comitting changes.
12877
12878 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12879
12880         * TODO.xml: Added XML-structured TODO file.
12881         * docs/make-todo: python script to turn TODO.xml into
12882           pretty XML output. 
12883
12884 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12885
12886         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12887         the function to let it draw the seven dots, instead of the old,
12888         much maligned, method.
12889         (draw_dot): New function to draw a dot.
12890
12891         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12892         to draw the handle inside the border width as opposed to outside.
12893         Use paint function instead of gdk_draw_point.
12894
12895         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12896         to draw the handle inside the border width as opposed to outside.
12897         Use paint function instead of gdk_draw_point.
12898
12899         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12900         Change indenting to be more GTK like.
12901
12902 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12903
12904         * docs/gtk_tut.sgml: New section on GtkCalendar
12905         * examples/calendar: Update example code
12906
12907 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12908
12909         * docs/gtkfaq.sgml: FAQ Update
12910
12911 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12912
12913         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12914         to prevent the scroll event to be propagated upwards.
12915
12916 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12917
12918         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12919         OwnerGrabButtonMask from button entries for
12920         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12921
12922         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12923         to the event mask (which will result in button/press release
12924         being added to the event mask on Unix) so scrolling works
12925         for layouts in scroll windows.
12926
12927         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12928
12929         Patch from Anders Carlsson  <andersca@gnu.org> to add
12930         a scroll event.
12931
12932         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12933         scrolling to the "Test Scrolling" part of testgtk.
12934  
12935         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12936  
12937         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12938         it against GDK_SCROLL.
12939  
12940         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12941         way of mouse wheel scrolling.
12942  
12943         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12944  
12945         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12946  
12947         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12948  
12949         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12950         gdk_event_mask_table.
12951  
12952         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12953         GdkEventScroll handler.
12954  
12955         * gdk/gdkevents.h: Added GdkEventScroll structure.
12956  
12957 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12958
12959         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12960         and Anders Carlsson to change the Paned widgets so that they
12961         can be dragged from anywhere along the length. Also change
12962         the way that this is drawn to make this apparent.
12963
12964         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12965         from George Lebl to check that option_menu->menu is present
12966         before getting history.
12967
12968 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12969
12970         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12971         before the assertion for non-NULL segment list.
12972
12973         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12974         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12975         machine, but it might be display driver dependent. Sigh, so make
12976         sure the stipple is that size. Does Windows suck or what?
12977
12978         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12979         places.
12980
12981 2000-02-13  Havoc Pennington  <hp@pobox.com>
12982
12983         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12984         refcount to 1
12985         (gdk_cursor_new): init refcount to 1
12986
12987         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12988
12989 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12990
12991         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12992         so that we don't have to do unnecessary settings to the HDC.
12993
12994         * gdk/win32/gdkdrawable-win32.c
12995         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12996         gdk_gc_predraw.
12997
12998         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12999         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
13000         GDI paths, call WidenPath to get the outline of the stroken path,
13001         and then fill the outline (with the brush that was built from the
13002         stipple).
13003
13004         * gdk/win32/gdkgc-win32.c: Factor out common code from
13005         _gdk_win32_gc_new and gdk_win32_gc_set_values into
13006         gdk_win32_gc_values_to_win32values. Use correct colour for
13007         SetBkColor() (Until now the code actually used a random colour in
13008         the call to SetBkColor()... but that didn't show up as not many
13009         GDI APIs use the background colour. Pattern (opaque stippled)
13010         brushes do.)
13011
13012         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
13013         gdk_win32_api_failed): New functions for error logging.
13014
13015         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
13016         WIN32_API_FAILED to call them, passing function or file name and
13017         line number.
13018
13019         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
13020
13021         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
13022         GdkColor for foreground and background in GdkGCWin32Data.
13023
13024         * gdk/makefile.cygwin: Link in the resource object separately.
13025
13026         * gdk/win32/rc/gdk.rc
13027         * gtk/gtk.rc (New file)
13028         * gdk/win32/makefile.cygwin
13029         * gtk/makefile.cygwin: Update build number in DLLs automatically,
13030         as in GLib.
13031
13032 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
13033
13034         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
13035         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
13036         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
13037         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
13038         parameters given and cursor->ref_count. coding style fixups.
13039
13040         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13041         not GtkWidget.
13042         
13043         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
13044         fix up widget macros and add _GET_CLASS() variant.
13045         
13046         * gtk/*.c: some GtkType fixups.
13047
13048 2000-02-09  Tor Lillqvist  <tml@iki.fi>
13049
13050         * gdk/win32/gdkproperty-win32.c
13051         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
13052         were reversed.
13053
13054 2000-02-04  Tor Lillqvist  <tml@iki.fi>
13055
13056         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
13057         g_filename_to_utf8 to convert the font names Windows gives us from
13058         whatever is the default codepage to UTF-8.
13059         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
13060         in the other direction.
13061
13062         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
13063         error in debugging output.
13064
13065 2000-02-02  Tor Lillqvist  <tml@iki.fi>
13066
13067         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
13068         and height parameters to gdk_window_clear_area(). Not minus one.
13069
13070 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
13071
13072         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
13073         checks if the widget passed to gtk_drag_get_data() was not the
13074         dest widget.
13075
13076 2000-02-01  Tor Lillqvist  <tml@iki.fi>
13077
13078         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
13079         g_filename_from_utf8 functions (which were added a moment ago to
13080         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
13081         size buffers.
13082
13083         gtk_file_selection_get_filename returns the filename in the C
13084         runtime encoding. It calls g_filename_from_utf8, but copies the
13085         returned string to a static buffer, which is returned. I think
13086         this is better than returning the result from g_filename_from_utf8
13087         directly, which would mean all apps that use it would have to free
13088         the return value. Or should this function care about this issue at
13089         all? Maybe a new function with clearly defined semantics.
13090
13091         * gtk/gtkfilesel.h: Add comment about
13092         gtk_file_selection_get_filename returning the filename in the C
13093         runtime's encoding.
13094
13095         * README.win32
13096         * gdk/gdk.def
13097         * gdk/makefile.{cygwin,msc}
13098         * gtk/gtk.def: Updates.
13099
13100         * gdk/gdkcursor-win32.c: Initialise refcount.
13101
13102 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
13103
13104         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
13105
13106 2000-01-30  Havoc Pennington  <hp@pobox.com>
13107
13108         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
13109         destroy
13110
13111         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
13112
13113         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
13114         implemented in platform-specific code
13115
13116         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
13117
13118         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
13119         underscore in front
13120
13121         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
13122         put an underscore in front
13123
13124         * gdk/gdkcursor.c: new file, implements
13125         gdk_cursor_ref/gdk_cursor_unref
13126
13127         * gdk/gdkcursor.h: Refcount GdkCursor
13128
13129         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
13130
13131 2000-01-29  Tor Lillqvist  <tml@iki.fi>
13132
13133         * gdk/gdkwindow.h
13134         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
13135
13136 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13137
13138         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
13139         structures to properly inherit from GtkWidget not GtkBin.
13140
13141 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
13142
13143         * gtk+.spec.in: Added lib/gtk+/include/* to %files
13144         (bug #5178 - Peter Wainright)
13145         
13146         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
13147         so that it will be installed.
13148         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
13149
13150 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
13151
13152         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
13153         for the GtkStyleClass vtable const.
13154
13155         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
13156         take a const string argument like GtkTranslateFunc. This will
13157         require changes in use code.
13158
13159 2000-01-19  Tor Lillqvist  <tml@iki.fi>
13160
13161         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
13162         semantics (to mimic the X11 backend, which just calls XClearArea)
13163         is to check for zero width (and height), and in that case use the
13164         window's width minus x (height minus y). This fixes for instance
13165         some redraw problems with gtkclist, which were easily noticeable
13166         in the gtk file selection widget.
13167
13168         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
13169         windows.
13170
13171 2000-01-13  Tor Lillqvist  <tml@iki.fi>
13172
13173         * configure.in
13174         * gdk/Makefile.am
13175         * gdk/x11/Makefile.am
13176         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
13177         (bug #5177).
13178         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
13179         out later.
13180
13181 2000-01-09  Tor Lillqvist  <tml@iki.fi>
13182
13183         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
13184         WM_MOVE for iconified or invisible windows. This fixes various
13185         problems when minimising windows. Thanks to Bernd Herd.
13186
13187 2000-01-05  Tor Lillqvist  <tml@iki.fi>
13188
13189         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
13190         backend's draw_lines method, not draw_points.
13191
13192 2000-01-02  Tor Lillqvist  <tml@iki.fi>
13193
13194         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
13195         before Owen's reorganisation: Don't have queued_events and
13196         queued_tail statics in this file, but use gdk_queued_events and
13197         gdk_queued_tail. This makes exposure event compression work again.
13198
13199         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
13200         seem to be needed?
13201
13202 1999-12-30  Tor Lillqvist  <tml@iki.fi>
13203
13204         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
13205         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
13206         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
13207         doesn't do anything.
13208
13209         * gdk/gdk.def: Add gdk_xid_table_insert.
13210
13211         * gdk/win32/gdkprivate-win32.h
13212         * gdk/win32/gdkevents-win32.c
13213         * gdk/win32/gdkinput-win32.c
13214         
13215         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
13216         extension_events field in the GdkWindowWin32Data struct. Use only
13217         the extension_events field in GdkWindowPrivate. Previously one was
13218         set, and the other one tested, which broke tablet
13219         functionality. Thanks to Keishi Suenaga for pointing this out.
13220
13221 1999-12-18  Tor Lillqvist  <tml@iki.fi>
13222
13223         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
13224         When handling a single character (text length == 1), don't handle
13225         it as if it was UTF-8.
13226
13227 1999-12-11  Tor Lillqvist  <tml@iki.fi>
13228
13229         * Makefile.am: Distribute README.win32.
13230         
13231         * gdk/Makefile.am
13232         * gdk/win32/Makefile.am: Distribute Win32 files.
13233
13234         * gdk/makefile.msc: New file.
13235
13236         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
13237         after label).
13238
13239         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
13240         gdk_error_code as GDKVAR, as they are referred outside GDK.
13241
13242         * gdk/win32/makefile.msc: Update.
13243
13244         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
13245         tweaks. Check only if at least one of those Unicode subrange bits
13246         we care for is set. If no code page bits are set, guess (wildly)
13247         based on the charset.
13248
13249         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
13250
13251         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
13252         non-NULL.
13253
13254         * gtk/gtkdnd.c
13255         * gtk/gtklayout.c
13256         * gtk/gtkplug.c
13257         * gtk/gtkselection.c
13258         * gtk/gtksocket.c
13259         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
13260         appropriate. There must be a cleaner way to handle this?
13261
13262         * gtk/gtkrc.c: Must include windows.h on Win32.
13263
13264         * gtk/testgtk.c: No need to include gdkx.h.
13265
13266         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13267
13268 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13269
13270         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13271         the rbearing is set to the same as the width, but this should be
13272         fixed.
13273
13274 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13275
13276         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13277         function. If Windows doesn't tell us what Unicode subranges a font
13278         covers, guesstimate based on the codepages it covers. This will
13279         hopefully help those Windows versions or fonts that don't give us
13280         any useful Unicode subrange information with GetTextCharsetInfo.
13281         Call this function in gdk_font_load_internal.
13282
13283         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13284         minor changes.
13285
13286 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13287
13288         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13289         New function, long needed.
13290
13291 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13292
13293         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13294         only_if_exists argument of gdk_atom_intern to
13295         bool.
13296
13297 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13298
13299         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13300         Fix two copy&paste errors.
13301
13302         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13303         win32 has changed.
13304
13305         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13306         GdkWin32SingleFont struct.
13307
13308         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13309         subranges of loaded fonts. Clear font signature first, in case
13310         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13311         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13312
13313         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13314         Unoffset clip region.
13315
13316 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13317
13318         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13319         event->any.window before calling filter functions.
13320
13321 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13322
13323         * gtk/gtkgamma.h: Adapt cast macros to standard.
13324
13325 [ Merges from 1.2 ]
13326
13327 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13328
13329         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13330         If translation does not include a '/', use entire
13331         translation instead of crashing.
13332
13333 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13334
13335         * docs/gtk_tut.sgml:
13336         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13337
13338 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13339
13340         * gtk/gtkselection.c (gtk_target_list_remove): Use
13341         g_list_remove_link, not g_list_remove.
13342
13343         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13344         
13345 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13346
13347         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13348         statement upon unselection (how the heck did that slip in?).
13349
13350 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13351
13352         * gtk/gtktext.c (gtk_text_freeze): 
13353         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13354         in frozen state (and aparently crashes). patch provided by Anders
13355         Melchiorsen <and@kampsax.dtu.dk>.
13356
13357 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13358
13359         * fix insensitive default/focus widget activation,
13360         reported by Matt Goodall <mgg@isotek.co.uk>.
13361
13362         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13363         (gtk_window_activate_default):
13364         (gtk_window_activate_focus):
13365         return handled=FALSE for actiavtion of insensitive default
13366         widgets. return handled=TRUE for activation of insensitive
13367         focus widgets. don't activate in either case.
13368
13369 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13370
13371         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13372         and $glib_cflags to match library order and in the
13373         theory that an old version of GLib is more likely to
13374         be in the include directory for X then vice-versa.
13375         (Bug #2776)
13376
13377 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13378
13379         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13380         to determine the locale for fontsets, not LC_MESSAGES;
13381         the user may want English messages with a handling
13382         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13383         will still be broken) (Bug #2891)
13384
13385 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13386
13387         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13388
13389 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13390
13391         * gtk/gtkrc.ko: Changed the Korean default fontset.
13392
13393 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13394
13395         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13396         where when scrolling to the left or top double exposes
13397         were done, causing major slowdowns.
13398
13399 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13400
13401         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13402         names to lowercase and alphanumeric, before looking
13403         them up.
13404
13405         * gtk/Makefile.am: Install codeset variant gtkrc files
13406         with normalized names.
13407
13408 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13409
13410         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13411         popup menus when the menu is already visible, but its parent
13412         is still hidden, (happens after tornoff window got hidden).
13413
13414 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13415
13416         * gtk/Makefile.am (install-data-local): Fix
13417         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13418         deleted, causing error messages on install.
13419
13420 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13421
13422         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13423         the handle as well, since we now sometimes ignore
13424         exposes on the handle while resizing.
13425
13426 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13427
13428         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13429         extra g_free introduced in one of the last one or two 
13430         commits.
13431
13432 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13433
13434         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13435         consistent, put each style that a gtkrc.* file creates
13436         in a unique namespace, remove old files before installing.
13437
13438 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13439
13440         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13441         gtk_rc_init is called multiple times. (Yes, people who
13442         do that have bugs in their code.)
13443
13444 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13445
13446         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13447         Remove it since it's generated by the Makefile anyway
13448
13449 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13450
13451         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13452         device->info.axes for core pointer.
13453
13454 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13455
13456         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13457         idle_id, to deal with obsolete, broken C libraries.
13458
13459 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13460
13461         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13462         allocation->x/y twice!
13463
13464         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13465         consistent with gtk_vscale_pos_trough().
13466
13467 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13468
13469         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13470         be queueing a resize on a toplevel container between
13471         the time we show it and when we map it. So, we need
13472         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13473         use GTK_WIDGET_DRAWABLE() for child windows.
13474
13475 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13476
13477         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13478         (fixes bug #2144)
13479
13480 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13481
13482         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13483         container DRAWABLE (instead of VISIBLE), so we don't queue
13484         resizes on non-toplevel containers.
13485
13486 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13487
13488         * gtk/gtkselection.[ch]: Make the data argument
13489         const guchar *.
13490
13491 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13492
13493         * gtk/gtkwindow.c: Try to behave sensibly if 
13494         the focus widget is the window itself. (Should
13495         we allow this at all?)
13496
13497 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13498
13499         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13500         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13501         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13502         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13503         in prototypes and implementations consistent (Tomas Ogren).
13504
13505         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13506         before the widget is unparented (reported by damon).
13507
13508         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13509         since we provide unsigned data anyways.
13510
13511 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13512
13513         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13514         the call to gtk_tooltips_layout_text() until later.
13515
13516         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13517         Call gtk_widget_ensure_style() before using the style.
13518
13519 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13520
13521         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13522         for old widgets that don't propagate draws to all
13523         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13524
13525 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13526
13527         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13528         for a redraw but just the widget that requested the resize.
13529
13530 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13531
13532         * gtk/gtkcontainer.c: added new widget level method
13533         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13534         reallocate_redraws : 1 to reflect the setting, exported this through
13535         the argument system as a boolean ::reallocate_redraws.
13536
13537         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13538         on the widget because the allocation changes, do so as well for
13539         widget->parent if the parent has reallocate_redraws set to TRUE.
13540         with that containers requesting reallocation redraws get automatically
13541         redrawn if their children changed allocation (this unfortunately
13542         affects also other children that didn't change allocation, but we
13543         cannot work around that before 1.3).
13544
13545 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13546
13547         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13548         _and_ height are >0 (not _or_).
13549
13550         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13551         instead of gtk_container_queue_resize(), which is a core gtk internal
13552         function (must have been on crack when i queued that).
13553
13554         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13555         we can check more reliably if we want to discard expose events.
13556         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13557         flag.
13558         
13559         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13560         we simply trust these events. for deciding whether to discard exposes,
13561         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13562         
13563 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13564
13565         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13566         queues of areas that are completely off screen.
13567
13568         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13569         logic for handleboxes.
13570
13571         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13572         check on width/height.
13573
13574 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13575
13576         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13577         we are fine with using $@ the way we do (if we actually encounter
13578         brokeness with $@ in VPATH builds because of additional path prefixes,
13579         we need to use $(@F) actually).
13580
13581 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13582
13583         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13584         short lived bugs, that would allow language bindings to do surgeries
13585         to our guts.
13586
13587 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13588
13589         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13590         where comparison was being done against an uninitialized
13591         value causing intermittant results depending on
13592         compiler flags. Also make it clearer that we aren't
13593         ever initializing the child as 0x0 (though this will
13594         be caught in gtk_widget_size_allocate())
13595
13596 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13597
13598         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13599         gtk_window_unset_transient_for() call after we do checks
13600         involving the old transient parent.
13601         [ From Lance Capser <lmc@cyberhighway.net> ]
13602
13603 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13604
13605         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13606         an empty file.
13607
13608 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13609
13610         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13611         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13612
13613 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13614
13615         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13616         `$@' is valid only in the build dir, not after we've done 
13617         `cd $srcdir'.  Also use `test -f' instead of less portable
13618         `test -e'.
13619
13620 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13621
13622         * gtk/gtktext.c (correct_cache_insert): Rewrite
13623          for simplicity, and hopefully correctness.
13624          (Fixes bug #1322, which was a segfault when
13625           on some insertions with the properties around
13626           the insertion set up just wrong.)
13627
13628         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13629          a "changed" signal, clamp the new value to the adjustment
13630          bounds to avoid segfaulting if someone tries to change
13631          the adjustment to a bogus value. (Bug #1795)
13632
13633 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13634
13635         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13636         for children, for toplevel windows handle them
13637         like delete_event.
13638
13639         * gtk/gtkplug.c: Add an unrealize handler so that
13640         we unref plug->socket_window when we are done
13641         with it.
13642
13643 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13644
13645         * gtk/gtktext.c (clear_area): Fix stupid signedness
13646          problem that was causing background to sometimes
13647          be misaligned.
13648
13649 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13650
13651         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13652         
13653         * gtk/gtkmenu.c (gtk_menu_position): Make
13654          sure we never position menus with negative x, y,
13655          since gtk_widget_set_uposition() can't handle that.
13656
13657         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13658          Modify the positioning code a bit so that we always
13659          put the top-left corner onscreen. (This is for
13660          UI reasons, gtk_menu_position() now takes care of
13661          gtk_widet_set_uposition() brokeness.)
13662
13663 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13664
13665         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13666
13667 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13668
13669         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13670           RC style that is passed in. The lack of the ref
13671           before was a bug. If people worked around this
13672           bug, this will introduce a slight memory leak
13673           in their code. The code should typically look like:
13674
13675             rc_style = gtk_rc_style_new ();
13676             [...]
13677             gtk_widget_modify_style (widget, rc_style);
13678             gtk_rc_style_unref (rc_style);
13679
13680         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13681           the style if it was already set.
13682
13683         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13684           style if it was set before.
13685
13686 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13687
13688         * gtk/testgtk.c (main): Add a check to see if we
13689           are being run from the correct directory and
13690           to quit nicely if we are not.
13691
13692         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13693           static.
13694
13695 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13696
13697         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13698
13699         * gtk/gtkwindow.c:
13700         queue resizes unconditionally (gtk_widget_queue_resize will figure
13701         what to do if the window is not realized).
13702         (gtk_window_move_resize): only recenter the window
13703         for GTK_WIN_POS_CENTER_ALWAYS.
13704         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13705         the same way as GTK_WIN_POS_CENTER.
13706
13707 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13708
13709         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13710         with (!(info->last_flags & GDK_HINT_POS)) instead of
13711         (!info->last_flags & GDK_HINT_POS).
13712
13713         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13714         new_height unconditionally, because we use these values even if
13715         !default_size_changed && !hints_changed.
13716         comented the (default_size_changed || hints_changed) case with
13717         respect to resize rejects from the window manager.
13718
13719         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13720         in the zvt condition hack, since this includes the window hints, set
13721         the hints after the handling_resize case.
13722
13723         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13724         window is initially shown with to the geometry.
13725
13726 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13727
13728         * gtk/gtkwindow.c (gtk_window_move_resize):
13729         s/size_changed/default_size_changed/g so i know what's
13730         really going on (frying brain on smaller flame now).
13731
13732 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13733
13734         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13735         we have size_changed upon handling_resize. this is a gross
13736         workaround for the broken zvt widget and should be removed in
13737         1.3 again (search for FIXME).
13738         Owen provided an accurate comment for this:
13739
13740         /* We could be here for two reasons
13741          *  1) We coincidentally got a resize while handling
13742          *     another resize.
13743          *  2) Our computation of size_changed was completely
13744          *     screwed up, probably because one of our children
13745          *     is broken. It's probably a zvt widget.
13746          *
13747          * For 1), we could just go ahead and ask for the
13748          * new size right now, but doing that for 2)
13749          * might well be fighting the user (and can even
13750          * trigger a loop). Since we really don't want to
13751          * do that, we requeue a resize in hopes that
13752          * by the time it gets handled, the child has seen
13753          * the light and is willing to go along with the
13754          * new size. (this happens for the zvt widget, since
13755          * the size_allocate() above will have stored the
13756          * requisition corresponding to the new size in the
13757          * zvt widget)
13758          *
13759          * This doesn't buy us anything for 1), but it shouldn't
13760          * hurt us too badly, since it is what would have
13761          * happened if we had gotten the configure event before
13762          * the new size had been set.
13763          */
13764
13765 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13766
13767         * gtk/gtkrc.c: deal properly with the fact that RC
13768           style lists may include rc styles more than once.
13769
13770         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13771           unused static function.
13772
13773         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13774           stack of directories of RC files currently being
13775           parsed and implicitely add them to pixmap path.
13776           
13777           This fixes a bug where the directory would get
13778           appended then overwritten by pixmap_path declarations.
13779
13780           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13781
13782         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13783           theme's exit function. (Patch from Peter Wainwright,
13784           bug #1454)
13785
13786         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13787           Add a destroy() handler to take care of removing
13788           group for menu item. (Fixes bug #1197)
13789
13790         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13791           in warning message.
13792
13793 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13794
13795         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13796         roundtrip to figure window's width and height, since we know that
13797         anyways from widget->allocation.
13798
13799 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13800
13801         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13802           the hints after we request the new size.
13803
13804 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13805
13806         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13807           GTK_WIDGET_REALIZED() assertion - we can compute the
13808           hints before we are realized.
13809
13810         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13811           hint changing so that we have a value of hints_changed
13812           when we decide whether to constrain the window size.
13813
13814         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13815
13816         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13817         change back to G_MAXINT.
13818
13819 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13820
13821         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13822         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13823         contain uncluttered values.
13824         (gtk_window_compute_hints): simply assert that window is realized
13825         and that geometry_info is valid, since we rely on this anyways.
13826         (gtk_window_constrain_size): major cleanups to the code.
13827         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13828         for the base size, instead of the minimums. use 32767 as max width
13829         and height (like in gtkwindow.c) instead of G_MAXINT.
13830
13831 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13832
13833         * cleaned up the GtkContainer.need_resize flag handling mess, we
13834         only need to force resize requests when we were prematurely
13835         realized, or our widget tree was modified when we were temporarily
13836         hidden. handling these cases directly upon showing the window (i.e.
13837         while the GdkWindow is still unmapped) avoids the need to wait for
13838         a configure event response and therefore makes the GUI more snappier
13839         and avoids blank windows during the roundtrip.
13840
13841         * gtk/gtkwidget.c:
13842         (gtk_widget_hide): 
13843         (gtk_widget_show): don't queue resizes on toplevels, they know how
13844         to deal with matters.
13845
13846         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13847         flag directly for not visible resize containers and spare us unecessary
13848         signal emissions.
13849
13850         * gtk/gtkwindow.c:
13851         (gtk_window_realize): if we need to enforce premature size allocation,
13852         queue a container resize so we are correctly resized later on.
13853         (gtk_window_init):
13854         (gtk_window_size_request):
13855         don't freak around with the ->need_resize flag,
13856         gtk_container_queue_resize() will care about that.
13857         (gtk_window_show):
13858         handle initial resizing issues here, we can handle matters better in
13859         this place, especially since we know that our GdkWindow is still
13860         unmapped.
13861         (gtk_window_move_resize):
13862         don't care about ->need_resize at all.
13863         handle size changes properly that occoured while we waited for a
13864         configure event.
13865
13866 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13867
13868         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13869         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13870         Move the hint setting code from gtk_widget_set_uposition
13871         to here; set the hints so that we respect any previously
13872         set geometry hints.
13873
13874         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13875         change the window hints here or move the window here,
13876         let that happen in gtk_window_move_resize().
13877
13878 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13879
13880         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13881         to already queued resizes (and therefore redraws) on a widget, check
13882         its anchestry as well.
13883
13884         * gtk/gtkcontainer.c:
13885         (gtk_container_queue_resize): clear resize widgets for resize
13886         containers before aborting prematurely. this is especially important
13887         for toplevels which may need imemdiate processing or their resize
13888         handler to be queued.
13889         (gtk_container_dequeue_resize_handler): added new internal function for
13890         gtkwindow.c.
13891
13892         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13893         configure event, take possible changes in window position into account
13894         as well.
13895         if we request a new window size, queue up a resize handler that will
13896         last until the configure event response arrives.
13897         combined the ->need_resize case (initial show) with the general size
13898         (hints) changed case and added even more comments.
13899         if !auto_shrink, only revert to the old allocation if the new size
13900         is smaller than the current allocation.
13901
13902 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13903
13904         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13905                            gtk_window_set_geometry_hints
13906                            gtk_window_set_default_size):
13907         When hints are set, queue a resize so that the hints will
13908         be eventually reset on the toplevel.
13909
13910         * gtk/gtkwindow.c (gtk_window_show): Use
13911         gtk_window_compute_default_size(). Clear the need_resize flag
13912         on the initail map so that we don't unnecessarily trigger the
13913         resize code.
13914
13915         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13916         into separate functions. Compare the hints we are setting
13917         with what we set last time so that we can accurately
13918         tell when we need to reset the hints.
13919
13920         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13921         function to figure out the size from requisition
13922         and default_size.
13923
13924         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13925         from fvwm to constrain a size to the geometry hints.
13926
13927         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13928         to compare two sets of geometry hints.
13929
13930         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13931         from gtk_window_set_hints(), just compute the hints,
13932         don't set them.
13933
13934         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13935         code from gtk_window_move_resize() to separate function,
13936         rationalize a bit.
13937
13938 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13939
13940         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13941         structure into a new private structure.
13942
13943         * gtkrc.c: Split GtkRcStyle into public/private.
13944         In the private part, add a list of pointers to the
13945         RcStyle lists this RcStyle participates in.
13946
13947         * gtkrc.c: When a RcStyle is free, remove all
13948         lists referencing it from the 
13949         realized_style_ht hash, and free those lists.
13950         
13951         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13952         gtk_rc_init(), since that adds the default styles
13953         to the list of parsed RC files again.
13954
13955         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13956         
13957 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13958
13959         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13960         checks that ensure that a widget's allocation is at least 1 in width
13961         and height. (GNOME note: this doesn't affect old panel code anymore,
13962         because GtkSocket will request width and height of at least 1 since
13963         Fri Jul 23).
13964
13965         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13966         allocated yet (happens if the user realizes the window prematurely),
13967         size request and allocate it.
13968         (gtk_window_size_allocate): guard against guint underflows.
13969
13970 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13971
13972         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13973         in gtk_built_sources, so gtk.defs gets built prior to all other
13974         sources.
13975
13976 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13977
13978         * gtk/Makefile.am:
13979         invoke indent on gtkmarshal.*. 
13980         rewrote source generation rules, use COPYING as oldest source tag for
13981         a piggyback rule to generate all sources from (don't touch it ;).
13982         major cleanups, strip spaces on build rules for GNU Make.
13983
13984         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13985         source and target files from commandline arguments. don't invoke indent.
13986
13987 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13988
13989         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13990         notebook after switch to avoid drawing problems.
13991         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13992         
13993         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13994         show them instead. 
13995         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13996
13997 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13998
13999         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
14000         notebook after switch to avoid drawing problems.
14001         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
14002         
14003         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
14004         show them instead. 
14005         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
14006
14007 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
14008
14009         * gtk/gtkwindow.c:
14010         we use window->need_resize from configure_event now, to indicate that
14011         the gtkwindow should keep its allocation (e.g. because the user resized
14012         the window through window manager handles). resize_count is now reliably
14013         used to figure whether we got the allocation we requested from the
14014         window manager.
14015         configure events get queued as resizes now, the real stuff (size
14016         computation and allocation) now only goes on in gtk_window_move_resize().
14017         GtkWindow's requisition now contains its *real* requisition (like all
14018         other widgets), *not* taking usize into account.
14019         geometry_info->last_{width|height} is now updated from set_hints() only
14020         so it always contains the last hints we set for the window manager.
14021         made some event handlers return TRUE instead of FALSE.
14022         the overall code should be much more straight forward now, and the
14023         significant code portions are accompanied by comments now.
14024         (gtk_window_set_hints):
14025         removed requisition argument and made it
14026         fetch the requisition through gtk_widget_get_child_requisition.
14027         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
14028         does that now.
14029         (gtk_window_show):
14030         ensure that the widget is realized before calling 
14031         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
14032         ensure that we got properly size requested and allocated before
14033         realization.
14034         (gtk_window_configure_event):
14035         ignore plain window moves, or reallocate the widget tree through the
14036         resize queue otherwise.
14037         (gtk_window_move_resize):
14038         mostly rewrote this function to figure window manager hints more
14039         reliably, coalesce window moves and resizes to reduce configure events
14040         and do actuall size allocations.
14041
14042 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14043
14044         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
14045         that have a resize pending, because a redraw is already queued for them.
14046
14047         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
14048         hack to clear resize_widgets.
14049
14050         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
14051         for resize containers prior to size allocation. (this is also a bit
14052         ugly, but avoids side effects for stopped emissions and is thus more
14053         reliable).
14054         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
14055
14056         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
14057         function from gtk_tooltips_expose, as we connect to ::expose_event
14058         *and* ::draw now.
14059
14060 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14061
14062         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
14063         checks.
14064         (gtk_target_list_unref): Likewise.
14065
14066         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
14067
14068 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
14069
14070         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
14071         guard against division by zero. (Fixes bug #1339)
14072
14073 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
14074
14075         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
14076         Prevent the trivial leak of information of allowing
14077         word motion when the entry is not visible.
14078
14079 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
14080
14081         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
14082         modality to error dialog as well as confirmation dialogs.
14083         (Bug #1803, reported by Rosanna Wing Sze Yuen)
14084
14085 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14086
14087         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
14088         tree->view_lines.
14089         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
14090
14091         * gtk/Makefile.am (install-data-local): Solaris apparently
14092         has various troubles with ln -f; use rm first instead.
14093         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
14094
14095 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
14096
14097         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
14098         use `cp' followed by `rm' (the `rm' was already there).
14099
14100 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14101         
14102         * configure.in: Fix autoconf warnings about cross compilation by
14103         trying to provide sane defaults for AC_TRY_RUN.
14104         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
14105         put them into $(srcdir) when generated. Also add a dependency of
14106         gtksignal.h on gtkmarshal.h for -j builds. 
14107         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
14108
14109 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
14110
14111         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
14112         GDK_THREADS_{LEAVE,ENTER} pair.
14113         (From Paul Fisher <pnfisher@redhat.com>)
14114
14115 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
14116
14117         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
14118         width and height are always >0 (owen).
14119
14120 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
14121
14122         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
14123         change that assured that a widget's allocated with and height are
14124         always >1, since this breaks *buggy* panel code. unfortunately this
14125         back-breaks the gimp's color selector.
14126
14127         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
14128         allocation is always >0 in width and height, before sending the
14129         configure event; this is a *gross* hack to get the gimp back to work.
14130         
14131         * marked both cases with TODO-1.3
14132
14133 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
14134
14135         * gtk/gtktext.c: Don't display wrap indicators when
14136         text is not editable and word wrap is on.
14137
14138 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
14139
14140         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
14141         option menus here as they are not derived from menu shell, assure that
14142         the option menu has a menu we can add items to.
14143
14144 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
14145
14146         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
14147         width/height to (gint) before calculations and check against < 0 to
14148         avoid guint wraparounds.
14149
14150 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
14151
14152         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
14153         width and height is never zero. sanity check both dimensions against
14154         32767 and issue a warning if the allocation is greater than that.
14155
14156 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
14157
14158         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
14159         to g_main_pending() as well.
14160
14161 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
14162
14163         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
14164         call to g_main_iteration() - since that will regrab
14165         GTK+ lock to process events.
14166
14167 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
14168
14169         * gtk/gtkwindow.c
14170         - Regularize with the rest of GTK+ by making widget->requisition
14171           not reflect the set_usize()
14172         - Always recompute geometry hints, then check if they
14173           changed before sending them to the X server. The
14174           previous checks for changes would fail in a number
14175           of circumstances. 
14176
14177 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
14178
14179         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
14180
14181 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
14182
14183         * gtk/gtkdnd.c:
14184         - Code cleanups
14185         - Instantaneously update on modifier key presses
14186         - Allow cancellation of the drag with Escape.
14187
14188 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
14189
14190         * gtk/testgtk.c (create_handle_box): Set the policy
14191         to auto_shrink - otherwise the appearance is rather
14192         strange when flipping between horizontal and vertical.
14193
14194 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
14195
14196         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
14197         (gtk_window_set_default_size): don't change a value if it's < 0.
14198         queue a resize.
14199
14200 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
14201
14202         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
14203
14204 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
14205
14206         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
14207         add an extra "/" when concating "/" + filename.
14208         (From Matt Grossman <mattg@oz.net>)
14209
14210 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
14211
14212         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
14213         for fg_gc if we set it for drawing pixmap.
14214
14215 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
14216
14217         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
14218         
14219         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
14220         already set, call old engine's destroy function and
14221         unref the old engine.
14222
14223 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
14224
14225         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
14226
14227 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
14228
14229         * gtk/gtkaccelgroup.h: mark certain functions as internal.
14230
14231 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
14232
14233         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
14234         expand behaviour changed.
14235
14236         * gtk/gtklabel.c (gtk_label_set_pattern):
14237         (gtk_label_set_justify):
14238         (gtk_label_set_line_wrap):
14239         don't bother invoking queue_clear, the reallocation does
14240         that for us, always free_words so the upcoming resize will
14241         relayout the label's contents.
14242
14243 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
14244
14245         * applied argument implementation patches from Elena Devdariani
14246         <elena@cogent.ca>.
14247
14248         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
14249         ::space_style, ::relief
14250         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
14251         * gtk/gtkpreview.c: ::expand
14252         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
14253         * gtk/gtknotebook.c: ::homogeneous
14254         * gtk/gtklabel.c: ::wrap
14255         * gtk/gtklist.c: ::selection_mode
14256         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
14257         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
14258         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
14259         * gtk/gtkclist.c: ::sort_type
14260         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
14261         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
14262
14263 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14264
14265         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14266         comment.
14267
14268 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14269
14270         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14271         counting right when we have to attach a new style
14272         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14273
14274         * gtk/gtkstyle.c: Documented the refcounting
14275         peculularities of gtk_style_attach.
14276
14277 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14278
14279         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14280         window types.
14281
14282         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14283         of GTK_TOPLEVEL for creating the window.
14284
14285 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14286
14287         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14288         the last argument (reported by Per Winkvist).
14289         
14290 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14291
14292         Fixes for invisible XOR lines (Frank Loemker
14293         <floemker@TechFak.Uni-Bielefeld.DE>)
14294         
14295         * gtk/gtkclist.c (gtk_clist_realize): Always use
14296         a non-zero pixel for GDK_XOR.
14297
14298         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14299         Use GDK_INVERT instead of GDK_XOR.
14300
14301 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14302
14303         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14304         signals if h/voffsets differ from adjustment values.
14305         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14306
14307 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14308
14309         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14310         ::selection-done emissions up to the topmost menu shell.
14311
14312 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14313
14314         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14315         the user data on the window before destroying it.
14316
14317         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14318         unrealize handler to take care of destroying 
14319         notebook->panel properly. 
14320         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14321
14322         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14323         of g_new and g_realloc to stop memory leak. (Actually,
14324         we could just use g_realloc(), but I'm not 100% sure
14325         that is portable).
14326         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14327
14328 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14329
14330         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14331
14332         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14333         for fontsets.
14334
14335         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14336         with bin/button confusion.
14337
14338 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14339
14340         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14341         and show how preselection of radio items is done.
14342
14343 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14344
14345         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14346         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14347         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14348         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14349         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14350         * gtk/gtktable.c (gtk_table_attach): 
14351         * gtk/gtklist.c (gtk_list_insert_items): 
14352         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14353         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14354         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14355         * gtk/gtkbin.c (gtk_bin_add): 
14356         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14357         * gtk/gtkfixed.c (gtk_fixed_put): 
14358         * gtk/gtklayout.c (gtk_layout_put):
14359         general fixups to container_add logic. always realize child if
14360         child->parent is realized, only map the child and queue a resize
14361         if child and child->parent are both visible.
14362
14363 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14364
14365         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14366         instead of gtk_container_foreach to walk and unrealize children, so
14367         composite children get also unrealized.
14368         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14369         (gtk_widget_map): assert that the widget is visible (basic constrain).
14370         (gtk_widget_real_map): assert that the widget is realized (basic
14371         constrain).
14372
14373 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14374
14375         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14376
14377 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14378
14379         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14380         file for iso-8859-2 locales.
14381
14382         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14383
14384 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14385
14386         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14387          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14388          Remove some suspicious and useless lines. 
14389
14390 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14391
14392         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14393         width,height = 0, 0 to mean - here to edge of window,
14394         instead of -1, -1, since the former is all we support.
14395
14396 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14397
14398         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14399         when removing from quit_functions list.
14400
14401 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14402
14403         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14404
14405 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14406
14407         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14408          When redrawing characters on non-visible entry, use appropriate
14409          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14410
14411 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14412
14413         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14414         from drag coordinates.
14415         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14416         use drag_dest_cell.
14417
14418         * gtk/gtktree (drag_dest_cell)
14419         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14420         (Bug #1129)
14421
14422 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14423
14424         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14425         translate_* fields.
14426         (gtk_item_factory_finalize): invoke translate_notify independant from
14427         translate_data.
14428         (gtk_item_factory_set_translate_func): likewise.
14429         (gtk_item_factory_destroy): only remove ifactory pointer from those
14430         widgets that belong to us (stupid me).
14431
14432 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14433
14434         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14435         rc_style list when lookup succeeeds.
14436
14437 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14438
14439         * gtk/gtkctree.c (resync_selection): 
14440         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14441         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14442         bug.
14443
14444 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14445
14446         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14447         Add some missing GDK_THREADS_ENTER()/LEAVE around
14448         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14449
14450 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14451
14452         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14453         rather than emit_by_name.
14454
14455         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14456         on the widget across multiple signal emissions.
14457         (gtk_editable_delete_text): same here.
14458         (gtk_editable_class_init): set widget_class->activate_signal after
14459         editable_signals[ACTIVATE] has been created.
14460
14461 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14462
14463         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14464         position here prematurely -- we might not have the
14465         right ->min_position and ->max_position yet.
14466
14467 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14468
14469         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14470         Add error traps so if the other end of the connection
14471         dies, we survive.
14472
14473         * gtk/gtkselection.c (gtk_selection_notify): Clean
14474         up properly when selection property retrieval fails.
14475         
14476         * gtk/gtkselection.c (gtk_selection_request): Correctly
14477         reject SelectionRequest notifies where the handler
14478         returns no data.
14479
14480 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14481
14482         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14483         when we've previously highlighted.
14484
14485         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14486         emit two "drag_leave" signals for Motif drops.
14487
14488         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14489         back the correct status messages when dropping from
14490         Motif onto a proxy window that is rejecting the
14491         drop.
14492
14493 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14494
14495         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14496         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14497         to compare two argument values. added gtk_arg_to_valueloc() to set a
14498         variable from an arg through its location (pointer).
14499
14500         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14501         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14502         as gfloat*, uchars are collected as guchar*, ints are collected as
14503         gint*, etc...
14504
14505 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14506
14507         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14508         Include <string.h> instead of <strings.h>.
14509
14510         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14511         (actually, a lot more duplicate includes occur if
14512          you trace through the sequence of #include's)
14513         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14514         
14515 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14516
14517         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14518         gtk-a-higuti-990322-[0-3]
14519
14520         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14521         that was causing -DX_LOCALE not to work.
14522
14523         * gtk/gtkrc.c (gtk_rc_init):
14524         X_LOCALE will never have LC_MESSAGES defined
14525
14526 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14527
14528         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14529         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14530
14531         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14532         left/right as well (gtk-michael-980726-0.patch.gz).
14533
14534         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14535         for pointer values, use gchar instead of char. fixed uline allocation
14536         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14537         chunks instead of G_ALLOC_ONLY.
14538         (gtk_label_size_request): always alter requisition as passed and leave
14539         widget->requisition alone.
14540         (gtk_label_set_text): allow NULL strings.
14541         (gtk_label_new): likewise.
14542
14543 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14544
14545         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14546
14547 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14548
14549         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14550         *and* mapped (i.e. drawable).
14551         (gtk_bin_expose): only send exposes to drawable children.
14552
14553         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14554         (gtk_box_expose): only send exposes to drawable children.
14555
14556         * gtk/gtkhscale.c (gtk_hscale_draw): 
14557         * gtk/gtkvscale.c (gtk_vscale_draw):
14558         hm, this is an ugly one. we first compute the size of our trough area
14559         here (window relative) and then check intersection with the draw_area
14560         which is parent relative because we're a NO_WINDOW widget, so we need
14561         to offset the trough area by allocation.x and allocation.y before the
14562         check. (this must not be done for the background area though, since
14563         that's already computed parent relative).
14564
14565 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14566
14567         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14568         unrealize title buttons.
14569
14570 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14571
14572         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14573         (gtk_clist_column_title_active): 
14574         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14575
14576         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14577         zero initialize event, removed superfluous gdk_window_get_pointer call
14578
14579         * gtk/gtklist.c (gtk_list_vertical_timeout)
14580         (gtk_list_horizontal_timeout): removed superfluous
14581         gdk_window_get_pointer call
14582
14583 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14584
14585         * plugging problems reported by "Bruce Mitchener, Jr."
14586         <bruce@puremagic.com> due to a purify session.
14587
14588         * gtk/gtkstyle.c:
14589         (gtk_style_ref): 
14590         (gtk_style_unref): assert ref_count to be > 0.
14591
14592         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14593         the requisition.
14594         (gtk_clist_set_shift): likewise.
14595
14596         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14597         adjustments.
14598
14599         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14600         event before sending it and set send_event to TRUE (which needs to
14601         be done for *all* synthesized events).
14602         (gtk_list_vertical_timeout): likewise.
14603
14604         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14605         leaks.
14606
14607         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14608         to TRUE when synthesizing events.
14609
14610 [ *** end of merges from 1.2 *** ]      
14611         
14612 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14613
14614         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14615         (or copied from gdkconfig.h.win32 on Win32, sigh).
14616
14617         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14618
14619         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14620
14621         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14622
14623         * gdk/gdkconfig.h.win32: New file.
14624
14625         * gdk/win32/makefile.cygwin: Build just a static archive here.
14626
14627         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14628         for the DLL from the static archive built above.
14629
14630         * gdk/gdk.def: Moved here from the win32 subdirectory.
14631
14632         * gdk/win32/*: Adapt for the changed private struct organisation.
14633
14634         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14635
14636 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14637
14638         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14639         for wheel mice (buttons 4 and 5).
14640
14641 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14642
14643         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14644         drawables use just the pixel field in the foreground and
14645         background GdkColor of the GdkGC.
14646
14647         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14648         GdkColors containing uninitialized (red,green,blue) fields, and
14649         just the pixel field filled in, and furthermore in the
14650         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14651         It thus turns out that we really don't need to have the full
14652         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14653         it later to have just the pixel values.
14654
14655 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14656
14657         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14658
14659 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14660
14661         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14662         New question on GtkLabel background colors.
14663
14664         * docs/gtk_tut.sgml:
14665           - Correct the example code callback
14666             function definitions.
14667           - Update the gtkdial example code, from Frans van Schaik.
14668           - Update setselection.c to current API.
14669
14670         * examples/Makefile examples/*/*.c: Update to code
14671         listed in tutorial.
14672
14673 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14674
14675         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14676         subrange table (from the "Developing International Software for
14677         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14678         block... Get the loaded font's charset correctly.
14679
14680         (Note that this, and the other *-win32.c files, still really are
14681         the old ones, the win32 subdirectory is not ready for compilation
14682         yet after the reorg.)
14683
14684 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14685
14686         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14687         check.
14688
14689 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14690
14691         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14692         on results of XQueryDeviceState().
14693
14694 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14695
14696         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14697         we need to accesss only ->children. We need an accessor
14698         for the children.
14699
14700         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14701         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14702         to get rid of gdkx.h include.
14703         
14704         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14705         and random references to 'None'.
14706
14707         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14708         Get rid of unused #include <gdk/gdkx.h>
14709
14710         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14711         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14712         gdkconfig.h.
14713
14714 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14715
14716         * gdk/win32/gdkdraw.c
14717         * gdk/win32/gdkfont.c
14718         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14719         following yesterday's changes. (Unrelated to Owen's reorg.)
14720
14721 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14722
14723         * gdk/x11/gdkinput-gxi.c: Add missing include,
14724           fix GdkWindowPrivate => GdkDrawablePrivate.
14725
14726         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14727
14728         * gdk/x11/Makefile.am (xinput_sources): Add missing
14729         backslash to fix building with --with-xinput=none
14730
14731 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14732
14733         Move all X specific code into the x11/ directory.
14734         Aside from shuffling things around, did the following:
14735
14736        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14737          gdk_arg_context_* - a simple argument parsing system
14738          in the style of popt.
14739
14740        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14741          gdk/x11/gdkprivate-x11.h:
14742          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14743          add ->klass and ->klass_data fields. The klass_data
14744          field points to an auxilliary structure that is
14745          windowing system dependent.
14746
14747        * gdk/gdkfont.c: Make most of the measurement functions
14748          simply wrappers around gdk_text_extents().
14749
14750        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14751          _gdk_font_strlen() function that hides the weird
14752          behavior in gtk+-1.[02] where a string is interpreted
14753          differently for 8-bit and 16-bit fonts.
14754
14755        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14756          to store common code for synthesizing double/triple
14757          press events.
14758         
14759        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14760          Make all the function that modify an existing GC
14761          simply wrappers around gdk_gc_set_values().
14762          
14763        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14764          for throwing out later.
14765
14766        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14767          GdkImagePrivate and GdkColormapPrivate to have a
14768          windowing system dependent part (GdkFontPrivateX etc.)
14769          that "derives" from the system-independent part.
14770
14771        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14772          Got rid of the included-source-files for XInput in
14773          favor of automake conditionals. (Which didn't exist
14774          when XInput support was originally added.)
14775
14776        * gdk/gdkrgb.c: Remove the visual id from the debugging
14777          statements since that is X11 specific; print out
14778          type/depth info instead.
14779          
14780
14781 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14782
14783         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14784         loading duplicates of hashed fonts.
14785
14786         * gdk/gdk.c (gdk_keysym_convert_case): rename
14787         gdk_XConvertCase to gdk_keysym_convert_case, allow
14788         results to be NULL in the GTK+ style.
14789
14790         * gdk/gdkcompat.h: Started compatibility header
14791         for renames.
14792
14793 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14794
14795         * gdk/win32/gdkprivate.h: New font private structures, related to
14796         fontsets.
14797
14798         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14799         gdk_font_list_free(). On X11, will just be wrappers to
14800         XListFonts() and XFreeFontNames(). On Win32, the code previously
14801         in gtkfontsel.c is now here.
14802
14803         New function gdk_font_xlfd_create(). On X11 will get the FONT
14804         property of the font (for GDK_FONT_FONTs), or call
14805         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14806         builds a XLFD style name from the font information in the LOGFONT
14807         struct(s).
14808
14809         New function gdk_font_xlfd_free(), which correspondingly frees the
14810         string returned by gdk_font_xlfd_create().
14811
14812         Implement fontsets on Win32. Add a function that iterates over a
14813         wide char string and calls a callback function for each substring
14814         of wide chars from the same Unicode subrange (and thus probably
14815         available in the same real font).
14816
14817         Improve the XLFD emulation a bit.
14818
14819         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14820
14821         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14822         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14823         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14824         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14825         ImmGetCompositionStringW() to get the composed Unicode chars.
14826
14827         * gdk/win32/gdkgc.c
14828         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14829         struct changes.
14830
14831         * gdk/win32/gdk.def: Add the new functions.
14832
14833 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14834
14835         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14836         get the Platform SDK to get <dimm.h>.
14837
14838         * gdk/win32/gdkevents.c: More event handling fixes and
14839         simplification. Never generate motion events with is_hint true. We
14840         used to do that on bogus grounds earlier. Windows sends
14841         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14842         moved, ignore these.
14843
14844         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14845
14846         * gdk/win32/gdkglobals.c
14847         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14848         the TrackMouseEvent function, and use it.
14849
14850         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14851         char before calling WideCharToMultiByte in order to get a string
14852         for the window title.
14853
14854         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14855
14856         * gdk/win32/gdk.def: Remove obsolete functions.
14857
14858         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14859         /nodefaultlib and /defaultlib switches.
14860
14861         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14862
14863 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14864
14865         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14866         EuroSign).
14867
14868         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14869         same type as GdkWChar, especially on Win32.
14870
14871         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14872
14873         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14874         before passing to Windows GDI for drawing etc. Convert to the
14875         system default codepage before passing to Windows as window
14876         titles.
14877
14878         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14879         support changing input locale on the fly.
14880
14881         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14882         on-the-fly changes. Convert incoming characters from the current
14883         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14884         on the current input language. Use keysym<->Unicode mapping tables
14885         and functions borrowed from xterm sources.
14886
14887         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14888         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14889         Manager) if available. IMEs and the Active IMM are available under
14890         the disguise of Chinese, Korean and Japanese support for IE and
14891         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14892         support is present in all editions (as long as you install it).
14893
14894         Call DispatchMessage from gdk_events_queue() (and thus
14895         gdk_WindowProc()), instead of duplicating the code in
14896         gdk_WindowProc().
14897
14898         Reworked the grab handling and propagation code, factored out
14899         duplicated code snippets into separate functions. Other cleanups,
14900         too.
14901
14902         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14903         the <dimm.h> header describing the Active IMM.
14904
14905         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14906         just do the same as for "single" fonts.
14907
14908         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14909         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14910         the new keysyms from gdkkeysyms.h.
14911
14912         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14913         fontset, so that gtkentry uses wide characters.
14914
14915         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14916         GTk+'s system directory "gtk+", not "gtk".
14917
14918 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14919
14920         * docs/gtkfaq.sgml: FAQ update
14921
14922 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14923
14924         * gdk/win32/gdkprivate.h: Add more font private data.
14925
14926         * gdk/win32/gdkfont.c
14927         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14928         fonts and strings. Now works much better. You still have to
14929         have a correct font selected, though. No fontset emulation yet.
14930
14931 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14932
14933         * gtk/maketypes.awk: Use G_OS_WIN32.
14934
14935         * gtk/gtk.def: Add some missing entry points. Also some non-public
14936         ones, but PyGTK porter claims to need them.
14937
14938         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14939         built-in type generation.
14940
14941 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14942
14943         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14944         GDK_FONT_FONT fonts (which is all we have for now, we don't
14945         emulate fontsets). The X11 version uses plain XDrawString in that
14946         case, too. The string passed to gdk_draw_text_wc seems to be in
14947         fact (at least, when used by gtkentry and gtktext) either in a
14948         single-byte charset, or a DBCS. Not Unicode.
14949
14950         This fixes the problem in gtkfontsel, where even if you had
14951         selected a font with a non-Latin1 charset (windows-greek, for
14952         instance), the preview still used Latin-1 glyphs.
14953
14954         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14955         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14956         (gdk_font_load): Recognize the demibold etc weights, even if we
14957         don't have the corresponding constants in the headers.
14958         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14959         version. Should save font resources a bit, when we don't have
14960         multiple HFONTs for the same font.
14961
14962         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14963         version.
14964
14965 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14966
14967         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14968         X values
14969
14970 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14971
14972         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14973         layout support (as mentioned on
14974         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14975
14976 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14977
14978         * gtk/fnmatch.c
14979         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14980
14981 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14982
14983         * configure.in (ALL_LINGUAS): Added Galician (gl)
14984
14985 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14986
14987         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14988
14989         * gdk/win32/gdkcompat.c: New file, actually provide an
14990         implementation for the deprecated functions. (Just temporarily.)
14991
14992         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14993
14994         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14995
14996         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14997
14998 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14999
15000         * configure.in: Added "uk" to ALL_LINGUAS.
15001         
15002 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
15003
15004         * configure.in: correct checking for BeOS check
15005
15006         * gdk/gdktypes.h
15007         * gtk/fnmatch.c
15008         * gtk/gtkfilesel.c
15009         * gtk/gtkitemfactory.c
15010         * gtk/gtkmain.[ch]
15011         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
15012
15013 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15014
15015         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
15016         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
15017         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
15018         by Bulgarian). 
15019
15020 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
15021
15022         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
15023         Fix a reference to window_private->destroyed.   
15024
15025         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
15026         (ugly) setting of an internal GdkWindow member to use
15027         a _slightly_ cleaner macro.
15028
15029         * gdk/gdkprivate.h: Split GdkWindowPrivate into
15030         GdkDrawablePrivate and GdkWindowPrivate.
15031         Add extra macros for accessing GDK_DRAWABLE_ components.
15032
15033         * *.[ch]: Massive adjustments for the above, use the
15034         new macros in a lot of places.
15035
15036 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
15037
15038         * gdk/gdktypes.h: Make GdkDrawable the base type,
15039         not GdkWindow.
15040
15041 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
15042
15043         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
15044
15045 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
15046
15047         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
15048
15049 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
15050
15051         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
15052         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
15053
15054         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
15055
15056         * docs/gtk-config.1: Now autogenerated.
15057         * docs/Changes-1.4.txt: started
15058         
15059 1999-10-03  Tor Lillqvist  <tml@iki.fi>
15060
15061         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
15062         to #ifdef also here.
15063
15064         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
15065         Owen did to the X11 backend.
15066
15067         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
15068         ScrollWindowEx when blitting inside a window, it can't be correct
15069         in the general case.
15070
15071         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
15072         WM_GETMINMAXINFO is easier.
15073
15074         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
15075         depth equal to the bitspixel value, not the visual's depth.
15076
15077         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
15078         to 24 even if the bitspixel value is 32.
15079
15080         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
15081         need to check for depth==32 when bpp==32, depth will always be 24.
15082
15083 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
15084
15085         * docs/Changes-1.4.txt: Started
15086         
15087         * gtk/Makefile.am (gdk_headers): Include all the new headers.
15088
15089         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
15090         
15091         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
15092         into C file.
15093         
15094         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
15095         header to gdkinputprivate.h.
15096
15097         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
15098         unused since before 1.2.
15099
15100 1999-09-30  Tor Lillqvist  <tml@iki.fi>
15101
15102         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
15103         expand possible hex escapes in the font family (put there by
15104         logfont_to_xlfd if the font name isn't a legal XLFD font family,
15105         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
15106         On Win32, add hex escapes here, too.
15107
15108 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
15109
15110         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
15111         to #ifdef GDK_WINDOWING_X11.
15112
15113 [ Merges from gtk-1-2 ]
15114
15115 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
15116
15117         * configure.in: fixed "GNU Make" check to pass with new make version
15118         3.77.95.
15119
15120 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
15121
15122         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
15123         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
15124         AM_PATH_GTK() macros don't get confused by the -pre1.
15125
15126 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15127
15128         * configure.in (REBUILD): Change check for perl5
15129           to check explicitely for v >= 5.002. (5.001
15130           does not work with our scripts.)
15131
15132 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
15133
15134         * configure.in: evaluate $PERL for the perl version check. added
15135         --disable-rebuilds to give the user an option to completely disable
15136         any source autogeneration rules.
15137
15138 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
15139
15140         * configure.in: evaluate $ac_make when checking for GNU Make.
15141
15142 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15143
15144         * docs/Makefile.am: added generation.txt.
15145
15146         * Makefile.am: require automake 1.4, build README from README.in and
15147         INSTALL from INSTALL.in in dist-hook.
15148         
15149         * README.in:
15150         * INSTALL.in: new files to autogenerate README and INSTALL from.
15151
15152         * configure.in: figure whether we have GNU Make
15153
15154         * docs/generation.txt: minor additions/corrections.
15155
15156 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15157
15158         * docs/gtkfaq.sgml: FAQ Update
15159
15160 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15161         
15162         * configure.in: Fix autoconf warnings about cross compilation by
15163         trying to provide sane defaults for AC_TRY_RUN.
15164
15165 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
15166
15167         * ltconfig
15168         * ltmain.sh: upgrade to libtool 1.3.3
15169
15170 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
15171
15172         * INSTALL: Indicate that the --with-glib= configure
15173         time flag is unsupported.
15174
15175 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
15176
15177         * docs/generation.txt: Added a file that gives
15178         documenation about the autogeneration process for
15179         various autogenerated files.
15180         
15181 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15182
15183         * configure.in (LIBS): Look for libgmodule in the
15184         right location.
15185
15186 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
15187
15188         * docs/gtk_tut.sgml: Removed references to
15189         code examples in my directory on gtk.org as
15190         they should all be in the tutorial now.
15191
15192         * docs/gtk_tut.sgml: Added sources for dial-test
15193         and scribble-xinput programs that were previously
15194         missing.
15195
15196 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
15197
15198         * TODO: Added entry about menu keyboard navigation, removed
15199         some finished items.
15200
15201 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
15202
15203         * acinclude.m4: Standardize on func_dgettext
15204         not func_gettext, so that the checks for dgettext
15205         actually are paid attention to.
15206
15207 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
15208
15209         * configure.in (LIBS): Add $INTLLIBS into $LIBS
15210         directly, rather than repeating the checks for
15211         gettext.
15212
15213         * INSTALL: Added information about gettext and
15214         NLS support.
15215
15216         * acinclude.m4 (LIBM): Check for dgettext, not
15217         just gettext. This should hopefully fix things wrt
15218         systems with old versions of GNU gettext installed.
15219
15220 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15221
15222         * configure.in (LIBS): Look for libgmodule in the
15223         right location.
15224
15225 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15226
15227         * autogen.sh: add --enable-maintainer-mode
15228
15229         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
15230
15231 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
15232
15233         * docs/gtk-config.1.in:
15234           docs/Makefile.am:
15235           configure.in: gtk-config is now generated.
15236
15237         * docs/gtk-config.1: Removed, now generated.
15238
15239 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
15240
15241         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
15242         handle CreateNotify itself, still put out a debuging message for
15243         --gdk-debug=events. made the ReparentNotify debugging message more
15244         verbose.
15245         wrap xcoords translation for ConfigureEvents into an error trap,
15246         a destroy event may already be pending, and in that case, the
15247         actuall coordinate values are not at all critical.
15248
15249 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
15250
15251         * gdk/gdkcc.c: Stop leaking the color_hash all over
15252         the place. Simplify and improve the logic.
15253
15254 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15255
15256         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
15257         for prototypes and function implementations consistent (reported
15258         by Tomas Ogren).
15259
15260 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15261
15262         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15263         send_event set in debugging output.
15264         (gdk_compress_exposures): default initialize the event so we don't
15265         operate on bogus values (namely send_event).
15266
15267 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15268
15269         * gdk/gdkwindow.c: When we receive an unexpected
15270         destroy notify on one of our windows, don't just
15271         warn about it, also mark our windows as destroyed.
15272
15273 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15274
15275         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15276           name => font and name => fontset hashes. The 
15277           name => fontset hash is a _big_ win since we
15278           weren't previously caching fontsets at all and loading
15279           fontsets is expensive. The name => font hash
15280           is less of a win, but it does save us from doing
15281           repeated XQueryFont calls on the same font.
15282
15283         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15284           list so we can remove font/fontset from hash.
15285
15286 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15287
15288         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15289           and slightly confusing test. [ XInternAtom (,,TRUE)
15290           will never return None ].
15291
15292 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15293
15294         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15295           gdk/gdkwindow.c (gdk_window_set_hints):
15296
15297         Don't omit setting the properties if flags == 0 -
15298         there may be an existing set of properties there
15299         already. (Very old bug. Would it be better to
15300         delete the property instead?)
15301
15302         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15303           spelling error in comment.
15304
15305 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15306
15307         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15308           to avoid stomping over gdk_error_warnings.
15309
15310         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15311           as (bits_per_pixel + 7) / 8. This gives the same
15312           result as before for multiples of 8, but actually
15313           a "reasonable" value for 1bit or 4bit displays.
15314
15315 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15316
15317         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15318         GNU Make.
15319
15320 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15321
15322         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15323         discarding configure events.
15324
15325 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15326
15327         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15328         refcount is greater than zero.
15329
15330         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15331
15332         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15333
15334         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15335
15336         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15337
15338 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15339
15340         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15341         that format 32 => sizeof(item) == 4. It really is
15342         sizeof(long).
15343
15344 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15345
15346         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15347         core dump at all on X IO errors, only core dump
15348         if --enable-debug for X errors.
15349
15350 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15351
15352         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15353         unknown window:" message. disabled ConfigureNotify discarding code,
15354         because it led to events being processed out of order.
15355
15356 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15357
15358         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15359
15360         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15361         we export this function, supress error warnings and don't reset the
15362         error code in the first half of this function.
15363
15364         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15365         code (instead of just -1) so gdk_error_trap_pop() reveals something
15366         actually informative about the error that happened.
15367
15368         * gdk/*.c:
15369         don't rely on gdk_error_code being -1 if an error occoured, but just
15370         gdk_error_code != 0.
15371
15372 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15373
15374         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15375         pointer *before* invoking the filter function, so we at least don't
15376         crash if a filter is removed that is currently executed. window filters
15377         *really* need to be made truely reentrant at some point.
15378
15379 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15380
15381         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15382         PropertyNotify debug messages.
15383
15384 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15385         
15386         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15387         
15388         * gdk/gdkim.c: Fix cut-and-paste errors for 
15389         x/y and PreeditAttributes/StatusAttributes.
15390
15391 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15392
15393         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15394         G_MAXINT to 2^16 to alleviate overflow problems in
15395         various window managers.
15396
15397 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15398
15399         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15400         for fontsets.
15401
15402 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15403
15404         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15405         Initialize size_hints.x and size_hints.y because kwm
15406         brokenly pays attention to them.
15407         (Bug #1181 -  Lars Heete <hel@admin.de>)
15408
15409 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15410
15411         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15412         return value of gdk_list_visuals(). 
15413         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15414
15415 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15416
15417         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15418         XSetIMValues to (void *) when comparing to NULL, to workaround
15419         the problem of some compilers barfing since older X headers don't
15420         have the prototype for it.
15421
15422 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15423
15424         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15425         for pseudocolor where colormap->colors was double
15426         allocated.
15427
15428         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15429         color value in the hash table with the pixel filled
15430         in so when we do later hash table lookups, the color
15431         value is correct.
15432         
15433 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15434
15435         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15436         making the call
15437
15438 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15439
15440         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15441         pointed out by Morten Welinder <terra@diku.dk>.
15442
15443 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15444
15445         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15446           default filter from the list
15447
15448 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15449
15450         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15451           default filter from the list
15452
15453 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15454
15455         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15456
15457         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15458         g_strdup_printf instead of calcing the length separately
15459
15460 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15461
15462         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15463         that we don't do in many other places. (Fixing duplicate 
15464         #include of config.h)
15465
15466         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15467         Otherwise, #ifndef XINPUT_NONE check in the latter
15468         doesn't work. (Bug #546)
15469
15470 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15471
15472         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15473         "None" case insensitive.
15474
15475 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15476
15477         * gdk/gdkselection.c: 
15478         Add error traps so if the other end of the connection
15479         dies, we survive.
15480
15481 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15482
15483         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15484         dest_xid field into two fields - one for the window
15485         to send in messages, one to indicate the last looked
15486         up window for caching purposes. This is needed, so
15487         that Leave messages get the correct window.
15488
15489 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15490
15491         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15492         Fix warning created by people mucking around
15493         with the gsource API.
15494
15495         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15496         Change mapping between GIOCondition and GdkInputCondition
15497         to match the way the Linux kernel does it. This should
15498         fix problems where closed pipes were no longer signalling
15499         GDK_INPUT_READ on systems with a native poll().
15500
15501 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15502
15503         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15504         explicitly for the string "None" - it is in the XPM
15505         spec and some servers treat unknown colors in odd ways
15506         (like asking the user!)
15507
15508 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15509
15510         * gdk/gdkevents.c: made "->" into a "." of previous change so
15511         it compiles
15512
15513 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15514
15515         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15516         window field of the event structure before calling
15517         user filters.
15518
15519 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15520
15521         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15522         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15523
15524 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15525
15526         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15527         intermediate text property - prevents major memory
15528         leak when gdk_use_mb.
15529         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15530
15531 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15532
15533         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15534         gtk-a-higuti-990322-[0-3]
15535
15536         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15537         sizeof(wchar_t) != sizeof (GdkWChar)
15538
15539         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15540         that was causing -DX_LOCALE not to work.
15541
15542         * gtk/gtkrc.c (gtk_rc_init):
15543         X_LOCALE will never have LC_MESSAGES defined
15544
15545         * gdk/gdk.c (gdk_init_check):
15546         Remove --xim-preedit and --xim-status from argv properly.
15547
15548         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15549         that the client window is present on the X server
15550         before we pass it to the input method.
15551
15552 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15553
15554         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15555         if --display is specified on the command line, than
15556         the drag window will not be created on that display.
15557         
15558 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15559
15560         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15561         lookups with only_if_exists == TRUE were inserting
15562         bogus values into the atom cache.
15563
15564 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15565
15566         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15567         then reset it to NULL.
15568
15569         * gdk/gdkcolor.c:
15570         (gdk_colors_free): 
15571         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15572         key for g_hash_table_remove() in both functions, this prevents us
15573         from accessing possibly uninitialized portions of a GdkColor structure
15574         where we are only interested in its pixel value.
15575
15576 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15577
15578         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15579         font hash table, if we have a GdkFontPrivate entry for this font
15580         already, simply increment its reference count, provided by Olaf Dietsche
15581         <olaf.dietsche+list.gtk@netcologne.de>.
15582
15583 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15584
15585         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15586         just to be sure.
15587
15588         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15589         unused variables, leftovers from the X11 version.
15590
15591         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15592
15593         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15594         downcase fields on X11.
15595
15596 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15597         
15598         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15599         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15600
15601 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15602
15603         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15604
15605         * gtk/makefile.msc: Correct path to libintl.
15606
15607         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15608         use of gint vs. int, and gint vs. gboolean in headers and
15609         definitions. Use GtkType for the *_get_type functions. Note that
15610         these changes preserve binary compatibility.
15611
15612         * gdk/gdk.c
15613         * gdk/win32/gdk.c
15614         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15615
15616         * gtk/gtkmain.c
15617         * gtk/gtkclist.c
15618         * gtk/gtkmenufactory.c
15619         * gtk/gtknotebook.c
15620         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15621         vs. gboolean.
15622
15623         * gtk/gtkcolorsel.[ch]
15624         * gtk/gtkcombo.[ch]
15625         * gtk/gtkdrawingarea.[ch]
15626         * gtk/gtkgamma.[ch]
15627         * gtk/gtkhandlebox.[ch]
15628         * gtk/gtkhpaned.[ch]
15629         * gtk/gtkhruler.[ch]
15630         * gtk/gtkplug.[ch]
15631         * gtk/gtkpreview.[ch]
15632         * gtk/gtkruler.[ch]
15633         * gtk/gtksocket.[ch]
15634         * gtk/gtkstatusbar.[ch]
15635         * gtk/gtktoolbar.[ch]
15636         * gtk/gtkvbbox.[ch]
15637         * gtk/gtkvpaned.[ch]
15638         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15639         functions.
15640
15641         * gtk/gtkgamma.h: Fix bug, missing () in call of
15642         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15643
15644 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15645
15646         * gdk/gdkcolor.c (gdk_colormap_new)
15647         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15648         colormap->colors was allocated twice.
15649
15650         * gdk/win32/gdk.c: Remove some unused stuff.
15651
15652         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15653         colormap.
15654
15655         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15656         * gtk/gtklabel.h (gtk_label_get_type)
15657         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15658         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15659         in a couple of places, not guint.
15660
15661 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15662
15663         * configure.in,po/et.po: added Estonian language file
15664
15665 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15666
15667         * configure.in,po/da.po: added Danish file
15668
15669 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15670
15671         * docs/gtkfaq.sgml: Minor FAQ Update
15672
15673 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15674
15675         * docs/gtkfaq.sgml: FAQ update
15676
15677 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15678
15679         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15680         way to get window contents continually refreshed while resizing. I
15681         didn't like the effects myself, so it's not on by default.
15682
15683         * gdk/win32/gdkprivate.h: New flag variable
15684         gdk_event_func_from_window_proc, FALSE by default.
15685
15686         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15687         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15688         are passed --gdk-event-func-from-window-proc.
15689
15690         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15691         and we have am event_func, call it instead of enqueing the event.
15692
15693 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15694
15695         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15696         Kelley: Set expose_count in GdkEventExposes correctly.
15697
15698         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15699         MULTIPLE_WINDOW_CLASSES).
15700
15701         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15702         for bug in NT, apparently NT *does* draw the end pixel, too, in
15703         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15704
15705 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15706
15707         Improvements by Hans Breuer: 
15708
15709         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15710
15711         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15712         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15713         window contents while dragging" is turned on. Allocate at least
15714         one unique class for every GdkWindowType. If support for single
15715         window-specific icons is ever needed (eg. Dialog specific), every
15716         such window should get its own class.
15717
15718 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15719
15720         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15721         error that caused crashes.
15722
15723 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15724
15725         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15726         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15727         bugs when for instance part of the window was outside the
15728         display. Thanks to Philippe Colantoni for finding and fixing this.
15729
15730 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15731
15732         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15733         endpoint calculations which were totally wrong. (A little RTFMing
15734         helps a lot ;-)
15735
15736         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15737         from a separate directory, not from gettext, because of licensing
15738         issues (we want to use the LGPL version).
15739
15740         * README.win32: Mention the intl from glibc vs from gettext issue.
15741
15742 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15743
15744         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15745         in the key event handling: Now AltGr chars work again. Also,
15746         now Alt-digits are passed up as well as Control-digits.
15747         Pass keypad plus and minus as normal plus and minus.
15748
15749 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15750
15751         * docs/gtkfaq.sgml: FAQ Update
15752
15753 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15754
15755         * README.win32
15756         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15757         the Wintab SDK.
15758
15759         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15760         OK, but getting closer. Guard against bogus tilt data from Wacom
15761         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15762         enable easier building without Wintab.
15763
15764         * gdk/win32/gdkinput.h
15765         * gdk/win32/gdkevents.c 
15766         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15767         
15768         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15769         code. As we have just one visual on Win32, no sense to have it in a
15770         table, and no need for the hash table.
15771
15772         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15773         better on white background.
15774
15775 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15776
15777         * README.win32: Update gcc build instructions. Mention gettext is
15778         GPL.
15779
15780         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15781         supported cursor size with GetSystemMetrics.
15782
15783         * gdk/win32/gdkfont.c
15784         * gtk/gtkfontsel.c: Guard against some font weight and charset
15785         symbols being undefined (in mingw32 headers).
15786
15787         * gdk/win32/makefile.cygwin
15788         * gtk/makefile.cygwin
15789         * gtk/gtkthemes.c: No longer need to have differently named
15790         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15791
15792 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15793
15794         * docs/gtkfaq.sgml: Long awaited FAQ update.
15795
15796 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15797
15798         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15799         it. Obscure bit manipulation needed.
15800
15801         * gdk/win32/gdkevents.c: Logging.
15802         
15803         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15804         style (file name include compiler name) for theme engines.
15805
15806 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15807
15808         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15809
15810         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15811         events. The key.string wasn't zero-terminated, still we strdup'ed
15812         it in gdk_event_copy(). Synthesize crossing events for button
15813         events before possible propagation.
15814
15815         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15816
15817         * gdk/win32/makefile.cygwin
15818         * gtk/makefile.cygwin: Use new DLL naming style for the
15819         GCC-compiled ones.
15820
15821         * gdk/win32/makefile.msc
15822         * gtk/makefile.msc: Cosmetics mostly.
15823
15824         * gtk/gtk.def: Add missing entry points.
15825
15826         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15827
15828 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15829
15830         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15831         or height is zero. Don't print a warning if Pie or Arc fails, they
15832         always fail (?) for very narrow ellipses.
15833
15834         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15835         the part or the destination window corresponding to source area
15836         outside of the source drawable's boundary.
15837
15838         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15839         anything if less than two points.
15840
15841         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15842         return NULL. Gtk cut-and-paste inside a single program works
15843         better this way. (It always gets the clipboard contents from
15844         Windows, not from its own copy, which is cleared anyway. I can't
15845         say I fully understand what happens... Emulating the X selection
15846         and property stuff is a bit of a mess.)
15847
15848         * gdk/win32/gdkevents.c
15849         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15850
15851         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15852         that never got deleted). Revamp gdk_region_shrink.
15853
15854         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15855         after use.
15856
15857         * gtk/gtk.def: Add some missing entry points.
15858
15859         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15860         component.
15861
15862 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15863
15864         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15865         Control-digits specially.
15866
15867 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15868
15869         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15870
15871 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15872
15873         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15874         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15875         finding this.)
15876
15877 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15878
15879         * gtk+.spec.in: Corrected some typos in files section.
15880         
15881 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15882
15883         * README.win32: Mention using GNU gettext.
15884         * config.h.win32: Enable NLS stuff.
15885         * gtk/makefile.msc: Use GNU gettext.
15886         * gdk/win32/gdkdnd.c: Minor header reorg.
15887         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15888         cosmetics.
15889         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15890         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15891
15892 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15893
15894         * acinclude.m4
15895         * config.guess
15896         * config.status
15897         * ltconfig
15898         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15899
15900 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15901
15902         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15903         SafeAdjustWindowRectEx. Don't override all calls to
15904         AdjustWindowRectEx by it, but use it only in two places: When
15905         creating a new top-level window and when moving a top-level
15906         window.
15907
15908         Use screen coordinate rectangle, not client rectangle, in
15909         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15910         when we try to place a window so that the decoration (mainly,
15911         title bar) isn't visible.
15912
15913         These changes fix the bug that showed up for instance as the
15914         GIMP's saved top-level windows moving right and down (by an amount
15915         equal to the window decoration) for each session. This bug showed
15916         up also in testgtk's "Saved Position".
15917
15918         gdk_window_resize also redone a bit.
15919
15920 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15921
15922         * gtk/testgtkrc: Add (commented out) Windows-style theme
15923         include line.
15924
15925         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15926
15927 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15928
15929         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15930         gdkx.h to a gdk subdirectory, so that applications can include
15931         these with <gdk/*.h> without trouble.
15932
15933         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15934         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15935         have their bitmap destroyed.
15936
15937         * gdk/win32/gdk.def: Add gdk_root_parent.
15938
15939 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15940
15941         * configure.in
15942           gtk-config.in
15943           ltconfig
15944           ltmain.sh     
15945           gtk/Makefile.am: changes to compile nicely (with xlib) 
15946           on BeOS
15947
15948 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15949
15950         * acinclude.m4
15951         * config.guess
15952         * config.sub
15953         * ltconfig
15954         * ltmain.sh: upgrade to libtool 1.3
15955
15956 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15957
15958         * gtk/gtkclist.c:
15959         * gtk/gtkctree.c: merges from gtk-1-2
15960
15961 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15962
15963         Support added for building using a GNU toolchain on Win32,
15964         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15965
15966         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15967         * config.h.win32: Changes for gcc.
15968         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15969         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15970         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15971         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15972         Protect shl stuff unavaiilable with mingw32 headers.
15973         * gdk/win32/gdkevents.c: Fix typo.
15974         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15975         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15976         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15977         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15978         the mingw32 headers.
15979         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15980         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15981         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15982         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15983         Test for NATIVE_WIN32, not _MSC_VER.
15984         * gtk/gtkmain.c: No use warning about developer version on Win32,
15985         there aren't any non-developer versions anyhow.
15986         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15987         * gtk/makefile.msc: Use pthread from another directory. Minor other
15988         changes. 
15989
15990 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15991
15992         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15993           default filter from the list
15994
15995 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15996
15997         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15998          when gtk_widget_grab_default() is called for a widget that
15999          is not within a GtkWindow.
16000
16001 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
16002
16003         * docs/gtk_tut.sgml, examples/clist.c: use a
16004           scrolled window in the clist example. Minor
16005           tutorial fixes.
16006
16007 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
16008
16009         * docs/gtk_tut.sgml: Style check from David King
16010           <dking@youvegotmail.net>
16011
16012 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
16013
16014         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
16015         compile with unknown value of GDK_WINDOWING
16016
16017 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
16018
16019         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
16020         after the rule is fired.
16021         (install-exec-local): Install gdkconfig.h only if the contents are
16022         different from the currently installed gdkconfig.h.
16023
16024 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
16025
16026         * gdk/Makefile.am (configexecincludedir): Rename from 
16027         configincludedir so that gdkconfig.h will be installed 
16028         as part of `make install-exec'. 
16029
16030 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
16031
16032         * acinclude.m4
16033         * config.guess
16034         * config.sub
16035         * ltconfig
16036         * ltmain.sh: upgrade to libtool 1.2f
16037
16038         * autogen.sh: libtool is not required to autogen gtk+
16039
16040         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
16041         needed)
16042
16043 1999-03-18  Tor Lillqvist  <tml@iki.fi>
16044
16045         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
16046         declaring gdk variables exported/imported from the DLL. New image
16047         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
16048         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
16049         GDK_DRAG_PROTO_OLE2.
16050
16051         * gdk/gdk.h: Merge in Win32 version: Two new functions,
16052         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
16053         declared only for the Win32 version, but could be in the X11
16054         version as well. (Needed for a Xlib-less gdk_imlib.)
16055         gdk_color_hash should have only one parameter. Declare
16056         gdk_threads_mutex with GDKVAR.
16057         
16058         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
16059         just one parameter.
16060
16061         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
16062         per pixel, not bits.
16063
16064         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
16065         Fetch bpp (which means bits-per-pixel here) from another place on
16066         Win32. Accept also depth==32 (which we might get on Win32) with
16067         bpp==32.
16068
16069         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
16070         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
16071         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
16072         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
16073         in the backend-dependent directory, not in the common gdk
16074         directory.
16075
16076         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
16077         headers.
16078
16079 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
16080
16081         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
16082         want to use the Gtk+ devel version (which is true, and yes - even i am
16083         currently working with the 1.2.x branch). so everyone reading this, you
16084         probably want to issue
16085         cvs checkout -r glib-1-2 glib
16086         and
16087         cvs checkout -r gtk-1-2 gtk+
16088         as your next two comands.
16089
16090 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
16091
16092         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
16093         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
16094
16095         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
16096         file. strongly deprecated the GTK_HAVE_* macros, we provide
16097         GTK_CHECK_VERSION() for people that need to check for certain
16098         Gtk+ versions.
16099
16100         * gtk/gtkcompat.h: removed this from CVS.
16101         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
16102         idea right from the start, it just didn't seem like that back then.
16103
16104 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
16105
16106         * merges from gtk-1-2:
16107
16108 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
16109
16110         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
16111         item factory class has been created.
16112         (gtk_item_factory_parse_rc): likewise.
16113
16114         * gtk/gtkmenu.c:
16115         keep proper references for old_active_menu_item.
16116         (gtk_menu_reparent): unset the usize of the new parent,
16117         so the menu can sanely be size requested and we don't get nasty screen
16118         artefacts upon next reparentation.
16119         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
16120         enter notify. only synthesize enter notifies if the pointer really is
16121         inside the event window.
16122         (gtk_menu_popdown): use gtk_menu_shell_deselect().
16123         (gtk_menu_popup): move the background setting stuff into
16124         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
16125
16126         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
16127         gtk_menu_shell_select_item() to select the new item.
16128         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
16129         do the right thing for deselection as well.
16130
16131 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
16132
16133         * gtk/gtkwidget.[hc]:
16134         (gtk_widget_accelerators_locked): return whether a widget's accelerators
16135         are locked.
16136
16137         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
16138         existing accelerators if the widget's accelerators are locked.
16139
16140 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
16141
16142         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
16143
16144         * gtk/gtkmenu.c: truely forward key press and key release events to
16145         the menu widget from the toplevel or tearoff window. we can't simply
16146         connect to that, we need to stop further processing of the events as
16147         well.
16148
16149 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
16150
16151         * gtk/gtkmenu.c:
16152         (gtk_menu_key_press): pass event->keyval, event->state to
16153         gtk_accelerator_valid, instead of event->keyval twice.
16154         refuse to install single letter accelerators for menus that use
16155         single letter shortcuts.
16156
16157         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
16158         gtk_menu_ensure_uline_accel_group().
16159
16160         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
16161         which will always return an uline accel group, made
16162         gtk_menu_get_uline_accel_group() return NULL if the group isn't
16163         yet created.
16164
16165 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
16166
16167         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
16168
16169         * gtk/gtkclist.c (gtk_clist_column_title_passive):
16170         Leave button sensitive, trap  button_press, button_release,
16171         motion_notify, enter_notify and leave_notify events instead.
16172         (gtk_clist_column_title_active): disconnect event handler.
16173         (gtk_clist_drag_data_get): fixed memory leak. Reported by
16174         Guillaume Laurent <glaurent@worldnet.fr>
16175
16176 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
16177
16178         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
16179         width/height mixups.
16180
16181         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
16182         if needed.
16183
16184 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
16185
16186         * gtk/testgtk.c (create_item_factory): unref the item factory after
16187         window's destruction.
16188
16189         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
16190         count on the menu shell around the menu item's activation, since the
16191         signal emission may cause menu shell destruction.
16192
16193         * gtk/gtkitemfactory.c:
16194         the previous code leaked one accel group per menu. we use
16195         gtk_menu_get_uline_accel_group() now to fix that, and with that
16196         also create the underline accelerator group of the menus only if
16197         required (i.e. an underline accelerator has been specified).
16198         (gtk_item_factory_construct):
16199         (gtk_item_factory_create_item): removed code that would create an
16200         extra accel group for the menu (and leak references).
16201         (gtk_item_factory_create_item): adapted the underline accelerator
16202         installation code to properly feature gtk_menu_get_uline_accel_group().
16203
16204         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
16205         menu->accel_group, this may return NULL if the accelerator group
16206         hasn't been set yet.
16207         added gtk_menu_get_uline_accel_group() to retrive the underline
16208         accelerator group of the menu, this will be created on demand
16209         and proper care is taken about its reference count.
16210
16211         * gtk/gtkitemfactory.h:
16212         * gtk/gtkitemfactory.c:
16213         dumped the approach of keeping a widgets by action list on the
16214         factory since the factory<->widget destroy negotiation didn't work
16215         and would be hard to get going at all. instead we keep a list of
16216         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
16217         persistant throughout a program's life time).
16218         also, i removed the static const gchar *key_* variables, and made
16219         them inline strings (they weren't actually used anyways).
16220         (gtk_item_factory_add_item): update ifactory->items.
16221         (gtk_item_factory_destroy): destroy ifactory->items (and remove
16222         the item factory pointer from the remaining ifactory widgets).
16223         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
16224         list to find the widget.
16225         (gtk_item_factory_get_item): new function that works around
16226         gtk_item_factory_get_widget() limitations, this function will only
16227         return menu items, even for <Branch> entries.
16228
16229 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16230
16231         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16232         font hash table, if we have a GdkFontPrivate entry for this font
16233         already, simply increment its reference count, provided by Olaf Dietsche
16234         <olaf.dietsche+list.gtk@netcologne.de>.
16235
16236         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16237         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16238
16239 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
16240
16241         * gtk/gtkcontainer.c:
16242         (gtk_container_add_with_args):
16243         (gtk_container_addv):
16244         (gtk_container_add): before adding a child to a conatiner, make sure
16245         it is (default) constructed, this is neccessary because under certain
16246         circumstances the child will get relized and mapped immediatedly, in
16247         which case it has to be constructed already.
16248
16249 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
16250
16251         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
16252         values > 1 as TRUE also.
16253
16254 1999-03-16  Tor Lillqvist  <tml@iki.fi>
16255
16256         * README.win32: New file.
16257                 
16258         * configure.in: Check for lstat.
16259
16260         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
16261         completeness.
16262
16263         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16264
16265         * gtk/gtk.def: Removed CRs.
16266
16267         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16268         ..\gdk\win32).
16269
16270         * gdk/win32/makefile.msc: Correct upwards relative paths.
16271         
16272 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16273
16274         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16275           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16276           it was connecting a void function to expose_event and the int
16277           returning function to the draw signal
16278
16279 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16280
16281         * configure.in:
16282         Use correct path to libgmodule.la when ref'ing uninstalled copy
16283         of glib.  (Already in stable branch, Bug #417)
16284
16285 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16286
16287         Win32 merge and general portability stuff:
16288                 
16289         * acconfig.h,configure.in: Check for <sys/time.h>.
16290
16291         * gdk/win32: New directory (actually, been there for a while).
16292         
16293         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16294         NATIVE_WIN32, and use these. Always case fold on Win32. No
16295         backslashed escapes on native Win32.
16296
16297         * gtk/{gtk.def,makefile.msc}: New files.
16298
16299         * gtk/Makefile.am: Add above new files.
16300         
16301         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16302         instead of <strings.h>.
16303
16304         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16305         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16306         <unistd.h> appropriately.
16307
16308         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16309         Use ABS() (from <glib.h>) instead of abs().
16310         
16311         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16312         of gtk (and thus glib) headers, so that WIN32 will be
16313         defined. With MS C, include <direct.h> for mkdir prototype.
16314
16315         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16316         some casts, needed by MS C.
16317
16318         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16319         implemented).
16320
16321         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16322         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16323         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16324
16325         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16326                 
16327         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16328         the event is not a hint, or its window is not the slider. Needed
16329         on Win32, at least.
16330
16331         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16332         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16333         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16334         a subdirectory of the Windows directory as gtk system
16335         configuration directory.
16336
16337         * gtk/gtkselection.c: No chunks on Win32.
16338
16339         * gtk/gtksocket.c: Not implemented on Win32.
16340
16341         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16342
16343         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16344
16345         * gtk/maketypes.awk: Declare variables with a macro that expands to
16346         necessary export/import magic in the case of Win32.
16347                 
16348         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16349
16350 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16351
16352         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16353         since those were meant only for gdki18n.h.  
16354         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16355         for widechar tests.
16356         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16357
16358 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16359
16360         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16361         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16362
16363         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16364         installed) to CFLAGS.
16365
16366         * gdk/Makefile.am: Add rules for gdkconfig.h.
16367
16368         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16369         APIs.
16370
16371         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16372         gdkx.h anyway when compiling for X11.
16373         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16374         general): Merge in Win32 version.
16375         
16376         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16377         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16378         expansion (if we don't have HAVE_PWD_H), allow for drive
16379         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16380         included code from Craig Setera's port to Win32 (the one that uses
16381         X11, and the cygwin dll), even if it probably will be abandoned.
16382
16383         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16384         the user entered one herself.  This way one can complete *.h and
16385         don't get matches on any .help files, for instance.
16386         
16387 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16388
16389         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16390         font hash table, if we have a GdkFontPrivate entry for this font
16391         already, simply increment its reference count, provided by Olaf Dietsche
16392         <olaf.dietsche+list.gtk@netcologne.de>.
16393
16394         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16395         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16396
16397 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16398
16399         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16400         the number of calls to gdk_draw_point() (and thus to X) by
16401         clipping the points by hand.
16402
16403         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16404         the clip parameter.
16405         (gtk_handle_box_paint): Only paint the handle if the expose area
16406         intersects it.
16407
16408 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16409
16410         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16411
16412 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16413
16414         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16415         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16416
16417 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16418
16419         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16420          textmode (O_TEXT) for OS/2 version.
16421
16422 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16423
16424         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16425         GtkSpinButton, "input" and "output", to make the output more flexible.
16426         The user has to provide a mapping between adjustment->value and the
16427         output string (and vice versa, if the spin button is editable). 
16428         See testgtk for examples.
16429
16430 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16431
16432         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16433         new one.
16434         
16435         * configure.in: set gtk+ version to 1.3.0.