]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Missed from last commit.
[~andy/gtk] / ChangeLog.pre-2-10
1 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/gdkpixmap.h: Remove creative formatting.
4
5 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
6
7         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
8         property API. (#51669)
9
10         * gtk/gtkscale.c: Patch from John Margaglione converting to
11         property API. (#51891)
12
13         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
14         to property API. (#50985)
15
16 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
17
18         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
19         buffering state across expose event, so we still call end_paint().
20
21 2001-05-11  Alexander Larsson  <alexl@redhat.com>
22
23         * gtk/gtkhsv.c (paint_triangle):
24         Expose the ring in the triangle at the correct place when
25         exposing just a part of the triangle.
26
27         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
28         Return FALSE, or window focusing will not work.
29
30 2001-05-11  Havoc Pennington  <hp@pobox.com>
31
32         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
33         #54144
34
35         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
36         bug #54330
37
38 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
39
40         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
41         propagate exposes to NULL child.
42
43         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
44         against not having one of the scrollbars.
45
46         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
47         we don't keep a mnemonic window if we have no mnemonic installed.
48
49 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
50
51         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
52         it has the _important_ side effect of initializing a class.
53
54 2001-05-10  Alexander Larsson  <alexl@redhat.com>
55
56         * gdk/linux-fb/gdkprivate-fb.h:
57         Make sure you can compile out the implementation/wrapper assert
58         macros.
59
60         * gdk/linux-fb/gdkdrawable-fb2.c:
61         Check implementation/wrappers, initialize type for pixmap dummys.
62
63         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
64         Hide the cursor if reading from the screen.
65
66         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
67         Fix sign bug in tiling code.
68
69         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
70         Handle background pixmaps.
71
72 >>>>>>> 1.1955
73 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
74
75         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
76         function to let user control where columns are dragged.
77
78         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
79         Escape is pressed.
80
81 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
82
83         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
84         "columns_changed" signal.
85         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
86         motion code to draw arrows to the side if indicator is outside the
87         widget.
88         (gtk_tree_view_map_expanded_rows): Implement.
89
90 2001-05-07  Alexander Larsson  <alexl@redhat.com>
91
92         * demos/testpixbuf-save.c: 
93         * demos/testpixbuf-drawable.c:
94         Include gdkfb.h on linux-fb.
95
96 2001-05-07  Alexander Larsson  <alexl@redhat.com>
97
98         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
99         New function for getting toplevel window at position.
100         (gdk_drag_find_window): Use get_toplevel_window () instead
101         of gdk_window_get_pointer(). (gdk_drag_status): Use
102         correct context for getting window.
103
104         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
105         g_strdup the atom name.
106
107         * gdk/linux-fb/gdkwindow-fb.c:
108         Costmetic fix.
109
110         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
111         Add code for changing cursor on linux-fb backend (same as
112         win32).
113
114 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
115
116         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
117         present before doing anything with it.  Patch from Håvard Kvålen
118         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
119         report was not for the development branch of GTK+, but it applies
120         anyways).
121
122 2001-05-04  Havoc Pennington  <hp@redhat.com>
123
124         * configure.in: fix some shell typos
125
126         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
127
128         * gtk/gtkimage.c: handle animations
129
130         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
131         border_width * 2, not just border_width
132
133         * gtk/gtkscale.c: add "format_value" signal to allow people
134         to override the way values are drawn.
135         (gtk_scale_get_value_size): fix width/height mistake,
136         and compute size from actual displayed text, not 
137         from made-up text.
138
139         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
140         signal registration
141
142         * tests/testtext.c: Add "Remove all tags" menu item for testing
143
144         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
145
146         * demos/gtk-demo/main.c (main): add hack so we can find modules
147         without installing gtk
148
149         * demos/gtk-demo/textview.c (insert_text): demo font scaling
150
151         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
152         factor)
153         (gtk_cell_renderer_text_set_property): remove some bogus
154         g_object_notify
155
156         * gtk/gtktexttag.c: add "scale" property which is a font scaling
157         factor
158
159         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
160         to layout
161
162         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
163         gtk_text_iter_is_first
164
165 2001-01-06  Hans Breuer  <hans@breuer.org>
166
167         * gdk/gdk.def : updated exports
168
169         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
170         gdk won't compile anymore
171  
172         * gdk/win32/gdkevents-win32.c : initialize ret_val when
173         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
174         Improved gdk_flush () to not only do pending drawing operations
175         but also process all currently pending events. This should make
176         the behaviour more similar to the X11 version.  
177
178         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
179         option needs to be set even if there is no GDK_GC_BACKGROUND.
180         (gdk_win32_hdc_get) : use predraw_set_background () independent
181         of value_mask. This allows to draw dashed lines leaving the original
182         background intact.
183
184         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
185         after processing, because we can't reuse it as the X11 version does.
186
187         * gtk/gtk.def : updated exports
188
189         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
190         would like to get rid of this file again, and use straight
191         makefile.msc again, as the other Gtk+ subdirs do)
192
193         * test/makefile.msc (new file) : build the test apps here
194
195 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
196
197         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
198         strike-through setting
199         (gdk_draw_layout_line_with_colors): Render strike-through
200
201 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
202
203         * Release 1.3.5
204
205         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
206
207         * NEWS: Updated
208
209         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
210         Makefile breakage.
211
212 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
213
214         * demos/gtk-demo/images.c (progressive_timeout): Fix
215         typo in filename.
216
217         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
218         out FIXME warning; just too annoying.
219
220 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
221
222         * gdk/linux-fb/gdkcolor-fb.c:
223         Better error messages.
224
225         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
226         Initialize abs_x and abs_y.
227         
228         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
229         Correct handling of stipple offset.
230
231         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
232         Treat directcolor framebuffers as truecolor.
233         
234 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
235
236         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
237         dependency on Atk for accessibility support.
238
239         * configure.in **/Makefile.am: Major reworking of substituted
240         variables for CFLAGS/LIBS to make a lot more sane and 
241         keep the the compile/link lines a bit shorter.
242
243         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
244
245 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
246
247         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
248         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
249         use _gtk_boolean_handled_accumulator.
250
251 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
252
253         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
254         to fix things so clicking inside selection leaves cursor
255         at point where clicked. (#50324)
256
257         * gtk/gtksettings.c (gtk_settings_class_init): Restore
258         sane value for default double click time.
259
260         * tests/testtext.c (test_init): Really path to input modules.
261
262 2001-05-03  Sven Neumann  <sven@convergence.de>
263
264         * demos/testpixbuf-save.c: include target-specific headers as
265         done in testpixbuf-drawable.c
266
267 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
268
269         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
270         new_text_length appropriately when we run into the 
271         size limit for the entry. (#53445, reported by Jeff Franks)
272
273         * tests/testgtk.c (create_entry): Remove most of the
274         property toggle buttons. Replace with a "Props" button
275         that brings up a property editor.
276
277         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
278         Split the property editor code out for reuse, improve.
279
280 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
281
282         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
283         trap errors around calls to XSetInputFocus since we have
284         no way of knowing reliably whether we are viewable or
285         not. (#53947)
286
287 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
288
289         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
290         fix bug in dropping columns.  Moving columns now basically works
291         modula some fine tuning.
292
293 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
294
295         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
296         autoscroll support.  It mostly works, but could use some fine
297         tuning.
298         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
299         Actually move the column.
300
301 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
302
303         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
304           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
305           New default theme! A slighly improved version of the 2.0 Raleigh
306           theme, with Windows-esque focus/drawing default. 
307           (GtkWidget::interior_focus defaults to TRUE.)
308
309         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
310
311 2001-04-30  Havoc Pennington  <hp@pobox.com>
312
313         * tests/testtext.c (line_numbers_expose): fix to work with
314         gtk_paint_layout change
315
316 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
317
318         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
319           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
320           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
321           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
322
323         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
324           with GtkWidget::interior_focus = TRUE better.
325
326         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
327         ::default_outside_border for more flexibility.
328
329         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
330         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
331         change that had to be made with g_object_get.
332
333 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
334
335         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
336         (gtk_tree_view_move_column_after): Clean up interface. 
337
338 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
339
340         * gtk/gtkpacker.h:
341         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
342          to gtkenum.h.
343
344         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
345         handled in switch).
346
347         * gtk/Makefile.am:
348         (gtk.defs): generate enum portions with  glib-mkenums.
349         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
350         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
351         
352         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
353         addition.
354
355         * docs/Changes-2.0.txt: keep a note on signal handlers now
356         not getting emitted during the emission they were connected within.
357
358 2001-04-28  Havoc Pennington  <hp@pobox.com>
359
360         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
361
362 2001-04-24  Havoc Pennington  <hp@redhat.com>
363
364         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
365         (gtk_text_layout_move_iter_to_next_line): fix these two for
366         invisible text, lots of other stuff still hosed.
367
368         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
369         new function, replaces the get/set palette stuff. This function 
370         is intended for use by libgnomeui which should set the hook to a
371         thing which sets the palette in GConf, and we need the
372         GConf-to-xsettings proxy which will result in the change being
373         propagated back to the GTK app.
374
375         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
376         about unusable signals that it may be because the signal has 
377         parameters.
378
379         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
380         style, otherwise gtkrc.c won't know to create a new GtkStyle for
381         it.
382         (gtk_widget_modify_color_component): call
383         gtk_widget_modify_style() so the rc style will get copied.
384         (gtk_widget_modify_font): ditto
385
386         * gtk/gtkrc.c: make a couple variables static
387
388         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
389         help button by default, since it does nothing
390
391         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
392         around with UI
393
394         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
395         so we can have tooltips
396
397         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
398         can have tooltips
399
400         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
401         GDK_ENABLE_BROKEN, because its memory behavior is completely
402         hosed.
403
404         * gtk/gtknotebook.c: remove key press handler, replace with
405         binding set, add numeric keypad support
406
407         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
408
409         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
410
411         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
412         addition to plain Delete
413
414         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
415         GDK_KP_Enter in addition to GDK_Return
416
417         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
418         activate on entry instead of key press
419         (gtk_font_selection_on_clist_key_press): get
420         rid of this signal handler, not needed with new font sel.
421
422         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
423         no-longer-needed emit_stop_by_name(), just return TRUE
424
425         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
426         cruft, this widget is no longer focusable.
427
428         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
429         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
430         move_slider action signal, add binding set for vscale/hscale, in
431         the process support numeric keypad
432
433         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
434         make GDK_Return and GDK_KP_Enter activate the entry via 
435         binding set, instead of hardcoded.
436
437 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
438
439         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
440         code.  Some documentation added.
441
442 2001-04-27  Havoc Pennington  <hp@redhat.com>
443
444         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
445
446         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
447
448         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
449         line/para separators
450         (gtk_entry_create_layout): set single paragraph mode on the layout
451
452         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
453         spacing between the image and label; instead, inside a button box 
454         the button will get extra space that will go there, but if people 
455         configure button box for 0 chubbiness, then there's no spacing.
456
457         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
458         and min/max size style properties, so people can tune their
459         chubbiness.
460
461         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
462         functions
463
464         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
465         space_style, and button_relief into style properties, remove
466         functions for setting them
467         
468         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
469         it back down
470
471         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
472         types from gtk_widget_style_get
473
474         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
475         with a style property.
476
477         * gdk/x11/gdkevents-x11.c: namespace the settings
478
479         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
480
481         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
482         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
483         be used. Also, translate doc strings for settings. Also, namespace
484         the double-click-time property. Also, remove bell properties crap.
485
486 2001-04-27  Sven Neumann  <sven@gimp.org>
487
488         * Makefile.am: before creating links, check if pkg-config files
489         exist for the default target. Otherwise link to the pkg-config files
490         that got installed with this build.
491
492 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
493
494         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
495         dragging code.  Revealed some (potential) GdkWindow bugs.
496
497         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
498         _gdk_window_init_position to the end of reparent to fix the case
499         of reparenting when new_x != old_x and new_y != old_y.
500
501 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
502
503         * gtk/gtkentry.c (strstr_len): Fix optimization that
504         was correct for the use here, but completely incorrect
505         in general.
506
507 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
508
509         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
510         until patch adding gtk_window_set_size() is recommitted. 
511
512         * **Makefile.am configure.in gdk/x11/gdkim-11.c
513           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
514           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
515           (#10784)
516
517 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
518
519         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
520         window == NULL in a number of cases.
521
522         * tests/testdnd.c: Set module path for gdk-pixbuf.
523
524 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
525
526         * gtk/Makefile.am xembed.h: File containing #defines
527         for XEMBED protocol.
528
529         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
530
531         - Change protocol from old plug/socket specific protocol
532           to XEMBED draft
533         - Various fixes to work with GTK+-2.0
534
535         Still quite a bit of work to do here to handle initiation
536         from the socket side (as specified by XEMBED), to handle
537         the more advanced features of XEMBED, and to figure out
538         a good way to handle same-app embedding with less overhead
539         than using full XEMBED.
540
541 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
542
543         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
544         track of whether the toplevel has the focus; only send
545         focus-in events to the focus widget when the window
546         actually has the focus.
547
548 2001-04-25  Havoc Pennington  <hp@pobox.com>
549
550         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
551         were still in the header
552
553 2001-04-24  Alexander Larsson  <alexl@redhat.com>
554
555         * gtk/gtkclist.[ch]:
556         * gtk/gtkctree.c:
557         When there is a row highlighted for D'n'D it must alse
558         be painted hightlighted on exposes. Otherwise exposes from
559         the icon being dragged will mess up the hightlight.
560
561         * gtk/gtkfontsel.c:
562         Don't recenter selected font when exposing the font family
563         clist. This means you can now actually scroll the font family
564         list.
565
566         * gtk/gtknotebook.c:
567         Fix focus movement on scrolling tabs that are placed on the left
568         and right.
569
570 2001-04-21  Havoc Pennington  <hp@pobox.com>
571
572         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
573         empty/invisible lines.
574
575         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
576         (gtk_text_iter_set_visible_line_index): new functions to set
577         indexes excluding invisible text
578
579         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
580         index
581
582         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
583         (gtk_text_iter_get_visible_line_offset): new functions to 
584         get indexes excluding invisible text
585
586         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
587         bunch of extra padding that served no purpose
588
589         * gtk/gtkdialog.c: Make all the spacings configurable via style
590         properties, for chubbiness configuration in themes
591
592         * tests/testtext.c: fix path to the immodules.
593         
594 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
595
596         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
597         got munched by #endif.
598
599         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
600
601         * gtk/gtktreeview.c: Refactored code to clean up a number of
602         events.
603
604         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
605         values to make consistent with other functions.  Spotted by Jeff
606         Franks <jcf@tpg.com.au>.
607
608         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
609         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
610
611 2001-04-23  Sven Neumann  <sven@gimp.org>
612
613         * gtk/Makefile.am
614         * gtk/gtkplug.c
615         * gtk/gtksocket.c: on request of Owen, reverted my last change 
616         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
617
618 2001-04-23  Sven Neumann  <sven@gimp.org>
619
620         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
621         compile for non-X11 targets again
622
623 2001-04-20  Alexander Larsson  <alexl@redhat.com>
624
625         * gtk/gtkcolorsel.[ch]:
626         API Change. Take GdkColor arguments instead of gdouble *.
627         Leave the old gtk_color_selection_set_color for compatibility,
628         but marked deprecated.
629         Do correct rounding when converting RGB <-> HSV.
630         
631         * gtk/gtkcolorseldialog.c:
632         * tests/testgtk.c:
633         Use new GtkColorSelection API.
634
635         * gtk/gtkhsv.c:
636         Fix problem selecting colors in triangle when Hue is 330.
637         Fix some black dots around the HSB triangle.
638         
639         * gtk/gtkfilesel.c:
640         return FALSE from the focus_in_event handler to fix focus problems.
641
642 2001-04-18  Havoc Pennington  <hp@redhat.com>
643
644         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
645         set, so keybindings are configurable    
646         (gtk_window_activate_default): Change to activate the focus widget
647         instead if there's a focus widget, to be consistent with the
648         behavior that previously existed in key_press_event
649
650 2001-04-18  Havoc Pennington  <hp@redhat.com>
651
652         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
653
654 2001-04-18  Havoc Pennington  <hp@redhat.com>
655
656         Close bug #50615:
657         
658         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
659         the layout
660
661         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
662
663         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
664
665         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
666         
667         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
668         to blue for base, in addition to bg
669         
670 2001-04-18  Havoc Pennington  <hp@redhat.com>
671
672         * tests/testgtk.c (create_image): allow shrinking the image window
673         to test that we clip to allocation.
674
675         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
676         #9845
677
678         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
679
680 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
681
682         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
683         mode on shm segments to 0600. We'll see who complains.
684
685         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
686         _gdk_windowing_window_destroy() AFTER recursing through
687         children.
688
689         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
690         testsocket_child on X.
691
692         * tests/testsocket[_child].c: Fix uses of
693         gtk_window_get_default_accel_group().
694
695         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
696
697         * gdk/gdkimage.c: (gdk_image_get):
698         Deal with the possibility that XGetImage() might return NULL.
699         Allocate the GdkImagePrivate structure only after XGetImage()
700         succeeds in order not to dereference a NULL ximage pointer.  This
701         prevents a core dump when XGetImage() fails - which is unlikely,
702         but can happen due to race conditions accessing the geometries of
703         drawables.  An x error will still be triggered, but the gdk image
704         wrapper at least wont seg fault.
705         
706 2001-04-18  Havoc Pennington  <hp@redhat.com>
707
708         * gtk/gtkimage.c: fix to properly queue resizes when the image is
709         set
710
711         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
712         if the insertion point isn't editable
713
714         * demos/gtk-demo/images.c: Added a GtkImage demo
715
716         * demos/gtk-demo/drawingarea.c: drawing area demo
717         
718         * demos/gtk-demo/menus.c (create_menu): cleanups
719
720 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
721
722         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
723           gdk/x11/gdkevents-x11.c: Introduce an extra child
724         of toplevel windows that serves to hold the focus to
725         avoid events being delivered to embedded windows.
726
727         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
728         some extra variables to clean up code and reduce the
729         number of casts.
730
731         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
732         guint for 1 bit bit fields, not gboolean.
733
734 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
735
736         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
737         not TRUE. (Fixes #52925)
738
739 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
740
741         * Released 1.3.4
742
743         * NEWS: Updated
744
745         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
746         use GTK_TYPE_ENUM.
747
748 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
749
750         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
751
752         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
753         names to compatibility #defines so docs work.
754
755         * gtk/gtkenums.h: Remove GtkMenuFactoryType
756
757         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
758
759         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
760
761         * tests/testgtkrc: No magenta cursors, please.
762
763         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
764
765         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
766         
767 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
768
769         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
770         grabs, since they are no longer necessary.
771
772         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
773         by signal_connect() and call gtk_button_pressed() rather
774         than signal_connect_after().
775
776         * tests/testgtk.c: Restore radio menu items to combos 
777         since they'll look OK with Raleigh, and it is easier
778         than finishing the process of removing them that was
779         started earlier.
780
781 2001-04-16  Hans Breuer  <hans@breuer.org>
782
783         * gdk/gdk.def :
784         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
785
786         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
787         we are interested in the functions return value not the function address
788         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
789
790         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
791
792 2001-04-14  Hans Breuer  <hans@breuer.org>
793
794         * gdk/gdk.def :
795         * gdk/makefile.msc : updated
796
797         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
798         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
799         (the testgtk::text backgound pixmap is drawn again)
800         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
801         Win32 Pango change
802         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
803
804         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
805         Not sure if the returned settings have the right unit, because I couldn't
806         find any docs for the X version ...
807
808         * gtk/gtk.def :
809         * gtk/makefile.msc.in : updated
810
811 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
812
813         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
814         wording problems. (Compared to version from Johannes Stezenbach to
815         check correctness.)
816
817 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
818
819         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
820         this to compile.
821
822 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
823
824         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
825         not pixbufpos.
826
827         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
828
829         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
830         are unsigned insts, therefore use g_value_set_uint.
831         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
832
833 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
834
835         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
836
837         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
838         GTK_TYPE_STRING.
839
840         * gtk/gtktreeview.c: New functions to allow initial column
841         dragging work.
842
843         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
844
845         * tests/testtreefocus.c: give dave some love.
846
847         * tests/testtreesort.c: Modify test to check really long samples.
848
849 2001-04-11  Alexander Larsson  <alexl@redhat.com>
850
851         * gtk-2.0.m4: Pass pkg-config options
852         before the other args so it works even if
853         POSIXLY_CORRECT is set.
854
855 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
856
857         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
858         0, interface 0).
859
860 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
861
862         * gtk/gtkcalendar.c (gtk_calendar_button_press):
863         check for action_func != NULL
864
865 2001-04-04  Sven Neumann  <sven@gimp.org>
866
867         * tests/testgtk.c (test_init): corrected path to gtk.immodules
868
869 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
870
871         * Released Gtk+-1.3.3.
872
873 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
874
875         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
876
877 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
878
879         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
880         files to/from source dir. (if we don't stay in builddir, we
881         can't reach make-inline-pixbuf.
882
883         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
884         deps.
885
886         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
887         ages 0).
888
889 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
890
891         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
892         moved to the GtkTreeSortable interface.
893
894         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
895         Make more efficient (fixes #50262).
896
897 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
898
899         * NEWS: Updated.
900
901         * configure.in: Remove support for uninstalled glib.
902
903         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
904         so as not to stop emission.
905
906         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
907         is no longer supported.
908
909         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
910         into tests, change build order to build modules before
911         gtk/.
912
913         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
914         to here.
915
916 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
917
918         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
919         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
920         GPatternSpec. this is actually unlikely to cause breakage in
921         third-party apps since except for gle, pretty much ever caller
922         passes NULL here.
923
924         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
925
926         * *.c: use g_pattern_*() API.
927
928         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
929
930         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
931         directions aren't passed in.
932
933         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
934         functionality to be usable from gtkstyle.c as well, give precedence
935         for conversion to user-supplied parsers.
936         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
937
938         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
939         _gtk_settings_parse_convert() for rcporperty value conversion.
940
941 2001-04-03  Alexander Larsson  <alexl@redhat.com>
942
943         * gdk/linux-fb/gdkevents-fb.c:
944         Add empty gdk_setting_get().
945
946 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
947
948         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
949         variable names.
950         
951         * gtk/makeenums.pl: touch this so enum files get remade.
952
953 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
954
955         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
956         work again when not sorted.
957
958         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
959         and "expand_row" signal, closing bug 52578.
960
961         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
962         support.
963
964         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
965         support.
966
967 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
968
969         * gdk/gdkevents.h: Add GdkEventSetting event for notification
970         of changes to system settings, gdk_setting_get() to retrieve
971         a single system setting.
972
973         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
974         to the draft XSETTINGS mechanism.
975
976         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
977         XSETTINGS.
978
979         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
980         of GDK settings changes to the GtkSettings object.
981
982         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
983         double-click-timeout property to GDK.
984
985         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
986         Define GDK boxed types here.
987
988         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
989         gdk/gdkenumtypes.[ch] for enum definitions.
990
991         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
992         * gtk/gtk-boxed.defs: Comment out GDK types
993         * gtk/gtktypeutils.h: Remove GDK types
994         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
995
996 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
997
998         * Applied patch from Ron Steinke to add signal accumulators
999         so that signals with the convention 'TRUE return means
1000         handled' stop emission on a TRUE return.
1001
1002         * gtk/gtkmain.[ch]: Add private accumulator 
1003         _gtk_boolean_handled_accumulator, used throughout GTK+.
1004         
1005         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1006
1007         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1008         
1009         * gtk/gtkwidget.c: Add accumulators for event signals,
1010         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1011         for ::mnemonic-activate.
1012
1013         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1014
1015 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1016
1017         * gtk/gtkwidget.c: Add missing include.
1018
1019 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1020
1021         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1022         marshaller.
1023
1024         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1025         "changed" signal to "range_changed".
1026
1027         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1028         removing a tree from one model would remove all trees from that
1029         model.
1030         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1031         changed signal instead.
1032
1033 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1034
1035         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1036         chaining up to parent impl, since we have a INPUT_ONLY
1037         window.
1038
1039         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1040         foreground color for the cursor.
1041
1042 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1043
1044         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1045         param spec when caching property values, since we unref it
1046         later when we free the style.
1047
1048         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1049         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1050
1051 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1052
1053         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1054         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1055         stupidity.
1056
1057 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1058
1059         [ First pass at adding style properties. Still needs some definite
1060         fine-tuning. ]
1061
1062         * gtk/gtkbutton.c: Add ::default_spacing style property.
1063          
1064         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1065         ::indicator_spacing style properties.
1066
1067         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1068         style properties.
1069
1070         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1071         rather than a normal property.
1072
1073         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1074         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1075
1076         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1077         Honor ::interior_focus.
1078         
1079         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1080         TRUE.
1081
1082         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1083         Add ::slider_width, ::trough_border, ::stepper_size,
1084         ::stepper_spacing style properties.
1085
1086         * gtk/gtkscale.[ch] Add ::slider-length style property.
1087
1088 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1089
1090         * gdk/linux-fb/gdkwindow-fb.c:
1091         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1092         warnings that were spewed on startup.
1093
1094         * gtk/gtkwindow-decorate.c:
1095         gtk_window_reposition -> _gtk_window_reposition
1096
1097 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1098
1099         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1100         Add boxed type for GtkRequistion. Use it for ::size-request.
1101
1102         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1103         Add a new GtkBorder structure useful for geometry properties
1104         for widgets. Add corresponding GTK_TYPE_BORDER.
1105         
1106         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1107         Support automatic parser selection like
1108         gtk_settings_install_property_parser().
1109
1110         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1111         functionality for use by gtk_widget_class_install_style_property.
1112         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1113
1114 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1115
1116         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1117         g_param_spec_unichar(). 
1118
1119 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1120
1121         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1122         _NET window managers.
1123
1124         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1125
1126 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1127
1128         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1129         bad needs to be nuked, not just deprecated.
1130
1131         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1132         gtk_widget_popup().
1133
1134         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1135         
1136         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1137         widget.
1138         
1139         * docs/Changes-2.0.txt: updates.
1140         
1141 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1142
1143         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1144         for (i = 0; i < 100; i ++)
1145           g_print ("I will confirm it compile before committing\n");
1146
1147 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1148
1149         * gtk/gtktreestore.c: Initial work on implementing the
1150         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1151
1152 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1153
1154         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1155         reference counts around emissions where the widget is used afterwards.
1156         added freeze/thaws around multiple properties being notified.
1157         (_gtk_widget_get_aux_info): cleanups.
1158         
1159         * gtk/gtksettings.c (gtk_settings_install_property): provide
1160         default parsing functions for gdkcolor, enums and flags.
1161
1162         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1163         applied by owen.
1164         backed out gtk_window_get_location(), gtk_window_set_location(),
1165         gtk_window_get_size() and gtk_window_set_size(), these
1166         have to be sorted out wrg x/y/width/height/default_with/default_height
1167         properties.
1168         kept a flag in GtkWindowGeometryInfo to handle user
1169         resetting default sizes.
1170         cleaned up ZVT comments.
1171         bunch of assorted bug fixes, notification fixes.
1172         (_gtk_window_reposition): make this a really internal function.
1173         
1174         * gtk/testgtk.c: fixups.
1175         
1176 2001-03-31  Hans Breuer  <hans@breuer.org>
1177
1178         * config.h.win32.in : disable USE_MMX for msvc build cause
1179         the assembler doesn't fit and is out of my scope. Disable
1180         USE_GMODULE for msvc build as wel. The right way to share
1181         binaries on win32 would be to use libtiff.dll etc. To reduce
1182         installation hassles IMO it's better to include all fileformats
1183         builtin to gdk-pixbuf
1184
1185         * gdk-pixbuf/makefile.msc : new file
1186
1187         * gdk/gdk.def : updated
1188
1189         * gdk/win32/gdkevents-win32.c : don't erase the background if
1190         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1191         buttons
1192         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1193
1194         * gdk/win32/gdkwindow-win32.c : added three new functions like
1195         the X version. Only one is implemented, because the other two
1196         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1197         be default behaviour on win32 anyway ...
1198
1199         * gtk/gtk.def : updated
1200
1201         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1202         from where it was built and add an additional rule to automagically
1203         build gtkmarshal.[hc]
1204
1205         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1206         before array access for the current entry isn't finished
1207
1208         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1209         use g_return_val_if_fail
1210
1211         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1212         for the static array, but let the compiler calculate it. It
1213         makes me wonder if gcc isn't capable to catch bugs like this ...
1214
1215 2001-03-31  James Henstridge  <james@daa.com.au>
1216
1217         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1218         constant "-1" in the aux info structure.
1219
1220 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1221
1222         * gtk/gtkbutton.c (gtk_button_get_property):
1223         * gtk/gtklabel.c:
1224         Remove leaks.
1225         
1226         * gtk/gtkcontainer.c:
1227         * gtk/gtkhscale.c:
1228         * gtk/gtkhscrollbar.c:
1229         * gtk/gtklayout.c:
1230         * gtk/gtkmisc.c:
1231         * gtk/gtkprogress.c:
1232         * gtk/gtkprogressbar.c:
1233         * gtk/gtkrange.c:
1234         * gtk/gtktable.c:
1235         * gtk/gtkviewport.c:
1236         * gtk/gtkvscale.c:
1237         * gtk/gtkvscrollbar.c:
1238         * gtk/gtkwidget.c:
1239         Property patches, based on patches from John Margaglione and Lee Mallabone.
1240
1241 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1242
1243         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1244         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1245         inline API function docs.
1246         (gtk_spin_button_new_with_range): New convenience constructor.
1247         (gtk_spin_button_set_increments): New adjustment helper.
1248         (gtk_spin_button_set_range): New adjustment helper.
1249
1250         * gtk/testgtk.c : added test of the new convenince constructor and
1251         value_changed signals.
1252
1253 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1254
1255         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1256         listen to the reorder signal.
1257
1258 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1259
1260         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1261         to get the aux info structure fo the widget.
1262
1263         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1264         above function.
1265
1266         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1267
1268         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1269         to get the size of the window manager frame, basically the same
1270         code that gdk_window_get_root_origin() had
1271         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1272
1273         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1274         gdk_window_resize() if the window is realized and resizeable
1275
1276         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1277         typo so that setting gravity works
1278
1279         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1280         allocation if auto_shrink is on, even if the default size
1281         has not changed.
1282
1283         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1284         g_return_if_fail
1285
1286 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1287
1288         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1289         reordering/sorting work.  Now pretty much works.
1290
1291         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1292         reorder mostly work.  Still need to get the parity correct.
1293
1294         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1295         signal, so I can listen for the sort_column_changed signal so I
1296         can change my "sort_indicator" property.  Cool.
1297
1298 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1299
1300         [ Patch from Havoc Pennington, hp@redhat.com ]
1301
1302         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1303         Add functions gdk_window_begin_resize_drag/begin_move_drag
1304         to start resizing or moving a toplevel window. This
1305         is done either using the _NET_WM_MOVERESIZE protocol,
1306         or, if that isn't present, by emulation.
1307
1308         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1309         to export the above to GTK+-land.
1310
1311         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1312         
1313         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1314         Move this function into gdkwindow, since we need it
1315         when implementing fallback resizing.
1316
1317         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1318         Fix typo when setting gravity.
1319
1320         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1321         Add an optional (but on by default) resize grip for resizing 
1322         the parent window.
1323
1324 01-03-29  Alexander Larsson  <alexl@redhat.com>
1325
1326         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1327         Don't return TRUE from the event handler, that blocks all
1328         event signals on the tooltip widget. Now you can press buttons
1329         in toolbars again.
1330
1331 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1332
1333         * gtk/testtext.c (create_buffer): Add missing NULL on
1334         valist.
1335
1336         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1337         c-n-p problem with INCONSISTENT property.
1338
1339         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1340
1341         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1342         hook.
1343
1344         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1345         signal as a hook for extending the default popup menu
1346
1347         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1348         use radio menu items for the input method menuitems
1349
1350         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1351         inserted unicode from Ctrl-Shift-hex input method
1352
1353         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1354         validatation here, already done at GtkTextBuffer level.
1355
1356         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1357         popup_menu run action signal and Shift+F10 and Menu keybindings.
1358
1359         * gtk/gtkentry.c: implement a default handler for popup_menu
1360
1361         * gtk/gtktextview.c: implement a default handler for popup_menu
1362
1363         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1364         from a key event
1365         
1366         * gtk/gtklabel.c: remove "trailer" cruft
1367
1368 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1369
1370         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1371         handle reordering of trees.  Seems to mostly work w/ the exception
1372         of the parity flag.
1373
1374         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1375         signal.
1376
1377 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1378
1379         * gtk/gtkwidget.h: c++ fixes.
1380
1381 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1382
1383         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1384         memory.
1385
1386 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1387
1388         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1389         Nils Barth fixing event return values. (#51041)
1390
1391         * gtk/gtkwidget.c: Fix some return values for default
1392         functions.
1393
1394         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1395         return values for trough_keys functions.
1396
1397         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1398         value for add_accelerator (shoudl have been a void
1399         return.)
1400
1401         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1402         Fix return type of EVENT.
1403
1404         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1405         signal return a boolean.
1406
1407 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1408
1409         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1410         reordered signal.
1411
1412         * tests/testtreesort.c (main): fix spelling.
1413
1414 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1415
1416         * gtk/gtkliststore.c: More work on implementing sortable
1417         interface.
1418
1419 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1420
1421         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1422         reference the widgets in the resulting list. (#11821)
1423         This makes this consistent with gtk_container_children.
1424
1425         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1426         uses of gtk_window_list_toplevels.
1427
1428 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1429
1430         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1431         a virtual function to set whether the IM context should use 
1432         the preedit string. (#51922)
1433         
1434 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1435
1436         * gdk/gdkpango.h: Remove stale FIXME comment.
1437
1438 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1439
1440         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1441         Fixed bug that returned NULL if a filename was selected.
1442
1443 2001-03-24  Havoc Pennington  <hp@pobox.com>
1444
1445         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1446         to contain the word "theme"
1447
1448 2001-03-24  Havoc Pennington  <hp@pobox.com>
1449
1450         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1451         slower but finer-grained
1452         (gtk_hsv_focus): get initial focus on the ring or triangle 
1453         according to tab direction
1454
1455         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1456
1457 2001-03-23  Havoc Pennington  <hp@pobox.com>
1458
1459         * gtk/gtkhsv.c: make this somewhat key-navigable
1460
1461         * gtk/gtkfontsel.c: mnemonics
1462
1463         * gtk/gtkgamma.c: mnemonics
1464
1465         * gtk/gtkcolorsel.c: add mnemonics to labels
1466
1467 2001-03-22  Havoc Pennington  <hp@pobox.com>
1468
1469         Applied big patch from Seth Lytle to fix event handler return
1470         values, slightly modified.
1471
1472         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1473         handled.
1474         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1475         select_day
1476
1477         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1478         (gtk_clist_button_release): return TRUE if handled
1479
1480         * gtk/gtkcolorsel.c (mouse_release):
1481         (palette_activate): 
1482         (palette_press): 
1483         (palette_new): 
1484         (mouse_press): 
1485         (get_screen_color): 
1486         fixed return type (void to gboolean), return TRUE,
1487         added GTK_SIGNAL_FUNC cast
1488
1489         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1490         (void to gboolean), and return TRUE
1491         (gtk_combo_button_release): changed return value to TRUE after
1492         gtk_grab_add on combo->popwin
1493
1494         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1495         collapse or expand
1496
1497         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1498         button/motion
1499
1500         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1501         press/release and motion that trigger act
1502
1503         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1504
1505         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1506         for GDK_Return
1507         
1508         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1509         (gtk_list_button_release): return TRUE if selection
1510
1511         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1512         press
1513
1514         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1515         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1516
1517         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1518         nothing triggered
1519         (gtk_notebook_button_release): return TRUE if we do anything
1520
1521         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1522         (gtk_spin_button_button_release): return TRUE or chained retval
1523
1524         * gtk/gtktext.c (gtk_text_button_press): 
1525         (gtk_text_button_release): return TRUE
1526         (gtk_text_key_press): remove redundant retval code
1527         
1528         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1529         and sensitive
1530         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1531         TRUE if sensitive
1532
1533         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1534         return TRUE
1535
1536 2001-03-23  Havoc Pennington  <hp@redhat.com>
1537
1538         * gtk/testgtk.c: fix warnings
1539
1540         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1541
1542         * gtk/gtktextview.c: fix warnings
1543
1544         * gtk/gtktext.c (find_cursor_at_line): fix warning
1545
1546         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1547
1548         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1549         of this function
1550
1551         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1552         fix warning
1553
1554         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1555
1556         * gtk/gtkfontsel.c: fix warning
1557
1558         * gtk/gtkcolorsel.c: fix warnings
1559
1560 2001-03-23  Havoc Pennington  <hp@redhat.com>
1561
1562         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1563
1564         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1565
1566         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1567         and deprecated gtk_check_menu_item_set_show_toggle().
1568         
1569         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1570
1571         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1572
1573         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1574
1575 2001-03-23  Havoc Pennington  <hp@redhat.com>
1576
1577         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1578         some docs
1579
1580 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1581
1582         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1583         this.
1584
1585         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1586         set_cell to set_value
1587
1588         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1589         set_cell to set_value
1590
1591 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1592
1593         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1594         fix braino.
1595         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1596         support.
1597
1598         * gtk/gtktreeview.c: Addition of initial sortable support.
1599
1600         * gtk/gtktreestore.c: Addition of initial sortable support.
1601
1602         * gtk/gtkliststore.c: Addition of initial sortable support.
1603
1604         * gtk/gtkmarshal.list: yet another marshaller.
1605
1606         * gtk/gtktreedatallist.[ch]: shared code between the store models
1607         for handling sorting headers.
1608
1609 2001-03-22  Havoc Pennington  <hp@redhat.com>
1610
1611         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1612         (gtk_container_unset_focus_chain): Add ability to override the 
1613         focus chain for a container explicitly
1614
1615 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1616
1617         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1618         added PROP_MNEMONIC_WIDGET.
1619
1620         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1621         (gtk_window_remove_mnemonic): 
1622         (gtk_window_add_mnemonic): fixed assertions.
1623         (gtk_window_activate_mnemonic): constrain modifier checks to those
1624         permitted by gtk_accelerator_get_default_mod_mask().
1625         got rid of gtk_window_get_default_accel_group().
1626
1627         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1628         activatable widgets either by focussing or a warning.
1629         added a signal accumulator to ::activate_mnemonic which stops the
1630         emission once a handler returned TRUE.
1631
1632 2001-03-22  Havoc Pennington  <hp@pobox.com>
1633
1634         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1635         the stock item label
1636
1637         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1638
1639         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1640
1641         * demos/gtk-demo/*.c: Add mnemonics all over the place
1642
1643         * gtk/gtklabel.h: mark parse_uline deprecated
1644
1645 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1646
1647         * gtk/gtkitemfactory.[ch]:
1648         Add support for stock and normal imagemenuitems.
1649         
1650         * gtk/testgtk.c:
1651         Add some tests for mnemonics, stock toolbars, stock
1652         and image menuitems in itemfactory and gdk_window_scroll.
1653
1654 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1655
1656         * gtk/gtkbutton.[ch]:
1657         * gtk/gtkdialog.c:
1658         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1659         removed accel_group argument. Renamed gtk_button_new_accel() to
1660         gtk_button_new_with_mnemonic() and removed accel_group argument.
1661
1662         * gtk/gtkcheckbutton.[ch]:
1663         New function gtk_check_button_new_with_mnemonic().
1664
1665         * gtk/gtkentry.c:
1666         Override activate_mnemonic and just grab focus.
1667
1668         * gtk/gtkitemfactory.c:
1669         Don't add menu uline accel group, instead use mnemonics support.
1670
1671         * gtk/gtklabel.[ch]:
1672         New support for mnemonics.
1673
1674         * gtk/gtkmarshal.list:
1675         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1676
1677         * gtk/gtkmenu.[c]:
1678         * gtkmenushell.c:
1679         Use mnemonics instead of accel groups for uline
1680         support in menu items.
1681         Removed gtk_menu_get_uline_accel_group() and
1682         gtk_menu_ensure_uline_accel_group().
1683
1684         * gtk/gtkmenuitem.c:
1685         Override activate_mnemonic to handle switching between
1686         menu items if there are collisions.
1687         
1688         * gtk/gtknotebook.c:
1689         Connect to activate_mnemonic on the tab_label, so that
1690         activating it switches to that notebook page.
1691
1692         * gtk/gtkwidget.[ch]:
1693         Add activate_mnemonic signal. New function
1694         gtk_widget_activate_mnemonic() to emit it.
1695         Default implementation does activate/grab_focus.
1696
1697         * gtk/gtkwindow.[ch]:
1698         Add support for mnemonics in windows.
1699         New functions:
1700         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1701         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1702
1703         * gtk/testgtk.c:
1704         Update to function name changes.
1705         
1706 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1707
1708         * gtk/gtkimagemenuitem.[c]:
1709         Add gtk_image_menu_item_new_from_stock()
1710
1711 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1712
1713         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1714         Fix buglet in meeting.
1715
1716 2001-03-19  Havoc Pennington  <hp@redhat.com>
1717
1718         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1719         add a bunch of accessor functions. This is because we have
1720         reasonable expectations of extending what fields it contains in
1721         the future.
1722
1723         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1724         changes
1725
1726         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1727         GtkIconSource   
1728
1729 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1730
1731         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1732         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1733
1734         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1735           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1736           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1737           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1738         Change float to double everywhere with the exception of 0<->1.0 alignment
1739         and GtkCurve.
1740
1741 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1742
1743         * gdk/win32/gdkdrawable-win32.c
1744         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1745         output.
1746
1747         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1748         gdkwin32.h.
1749
1750 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1751
1752         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1753         print_event_state, print_event): Use preprocessor macro to make
1754         code more compact. Print also GDK_WINDOW_STATE events.
1755         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1756         
1757         * gtk/gtk.def
1758         * gtk/makefile.mingw.in: Update.
1759
1760         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1761         to catch also Cygwin.
1762
1763 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1764
1765         * gtk/gtkspinbutton.[hc]: added rc-style argument
1766         GtkSpinButton::shadow_type.
1767         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1768         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1769         rc-style settings.
1770
1771         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1772
1773         * gtk/gtkwidget.c: quark cleanups.
1774
1775         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1776         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1777         to create_rc_style() (we don't do cloning in standard OO sense).
1778         added per rc style properties.
1779         
1780         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1781         property values and for caching those. some cleanups.
1782         
1783         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1784         
1785         * gtk/gtksettings.[hc]: new file for global rc-file properties
1786         (at least currently, should get extended to support X properties
1787         and other communication mechanisms).
1788         
1789         * gtk/gtkwidget.[hc]: added style property support:
1790         (gtk_widget_class_install_style_property_parser): install style
1791         property pspec with parser function for rc-file values other
1792         than LONG, DOUBLE or STRING.
1793         (gtk_widget_class_install_style_property): same as above without
1794         parser (parsers are going to be needed quite infrequently).
1795         (gtk_widget_style_get_property): retrive style property value.
1796         (gtk_widget_style_get_valist): same as above with varargs support,
1797         has NOCOPY semantics.
1798         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1799
1800 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1801
1802         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1803         "row_activated" signal.
1804
1805         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1806         stupidity.  Lets actually pass in the row with this signal...
1807
1808 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1809
1810         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1811
1812         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1813
1814         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1815         everything into the ::destroy function, and freed a lot more.
1816
1817 2001-03-16  Havoc Pennington  <hp@redhat.com>
1818
1819         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1820         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1821         are now allowed.
1822
1823 2001-03-16  Havoc Pennington  <hp@redhat.com>
1824
1825         * Applied patch from Nils Barth (bug # 51041) to 
1826         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1827         in various places.
1828
1829 2001-03-15  Havoc Pennington  <hp@redhat.com>
1830         
1831         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1832         for properties to set on the tag.
1833
1834         * gtk/testtext.c: fixups to reflect create_tag change
1835         
1836         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1837         background/foreground stipple are objects, not boxed.
1838
1839         * demos/gtk-demo/textview.c: intellihancing
1840
1841 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1842
1843         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1844         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1845
1846 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1847
1848         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1849         Fix sign error with queued region translations.
1850
1851 2001-03-15  HideToshi Tajima  <tajima@happy>
1852
1853         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1854         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1855         * gtk/gtkentry.c (update_im_cursor_location): 
1856         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1857         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1858         set_cursor_pos to set_cursor_location in GtkInputContext class
1859
1860 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1861
1862         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1863         the location of the cell relative to its area.
1864         * gtk/gtkcell*: modified for above change
1865         * gtk/gtktreeview.c: modified for above change.
1866
1867 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1868
1869         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1870          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1871         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1872
1873 2001-03-14  Havoc Pennington  <hp@redhat.com>
1874
1875         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1876         
1877         * gtk/gtk.h: remove gtkdata.h
1878
1879         * gtk/Makefile.am: remove gtkdata
1880         
1881         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1882         not "disconnect" on the adjustments.
1883         
1884         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1885         GtkData
1886
1887         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1888         not GtkData
1889
1890         * configure.in: handle case where X render exists, but Pango lacks
1891         Xft support.
1892
1893 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1894
1895         * gtk/gtktoolbar.[ch]:
1896         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1897         to add stock items to toolbars.
1898
1899         * gtk/Makefile.am:
1900         Remove ../gdk/gdkim.h from gdk_headers.
1901
1902 2001-03-15  Sven Neumann  <sven@gimp.org>
1903
1904         * gdk/gdkim.h: removed
1905         
1906         * gdk/gdkprivate.h
1907         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1908
1909 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1910
1911         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1912         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1913         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1914         set_cursor_pos() virtual method
1915
1916         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1917         (gtk_im_context_xim_set_cursor_pos): add implementation for
1918         set_cursor_pos() method
1919
1920         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1921         position to input methods
1922
1923 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1924
1925         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1926         code a lot.
1927
1928         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1929         g_mem_chunk.
1930         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1931         (_gtk_tree_data_list_node_to_value): Fix to switch on
1932         G_TYPE_FUNDAMENTAL.
1933         (_gtk_tree_data_list_value_to_node): Fix to switch on
1934         G_TYPE_FUNDAMENTAL.
1935         (_gtk_tree_data_list_node_copy): Fix to switch on
1936         G_TYPE_FUNDAMENTAL.
1937
1938 2001-03-12  Havoc Pennington  <hp@redhat.com>
1939
1940         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1941         to convert to new property API. Also, change default_width and
1942         default_height get_property to return 0 as the flag value for
1943         "unset"; -1 is not a valid value for these fields.
1944
1945 2001-03-12  Havoc Pennington  <hp@redhat.com>
1946
1947         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1948         enum with registration for icon sizes, instead of strings.
1949
1950         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1951         gtkwidget.c: Fix to reflect GtkIconSize
1952         
1953 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1954
1955         Make GtkFB compile and link.
1956         
1957         * gdk/linux-fb/gdkdrawable-fb2.c:
1958         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1959         
1960         * gdk/linux-fb/gdkwindow-fb.c:
1961         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1962         Added gdk_window_shape_combine_region.
1963         Added assorted placeholders for unimplemented new GdkWindow API calls.
1964
1965 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1966
1967         * gtk/gtkfilesel.c:
1968         Add more test when converting filenames from/to utf-8.
1969         Don't allow entering text in the filename entry which isn't allowed in
1970         a filename. Just beep instead.
1971
1972 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1973
1974         * gtk/gtkclist.c:
1975         Scroll using gdk_window_scroll(). Don't wait for exposes.
1976         Move the column headers in an order that makes them flash less.
1977
1978 2001-03-10  Hans Breuer  <hans@breuer.org>
1979
1980         * gdk/gdk.def : updated
1981
1982         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1983         to offseting the clip_mask at the right place
1984
1985         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1986         for all the gdkClasses, especially not for the input_only case.
1987         Otherwise flickering wont be avoidable, because we don't get
1988         WM_ERASEBKGND message for these windows.
1989
1990         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1991         and fixed massive redraw problems apparently triggered by Alexanders 
1992         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1993         but it seems to work quite well :-)
1994
1995         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1996         prototype
1997
1998 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1999
2000         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2001         (gtk_list_store_set_cell): Fix a stupid typo.
2002
2003 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2004
2005         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2006         select_all not work if you're in SINGLE mode (it doesn't make that
2007         much sense, anyway.)
2008
2009         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2010         handle types more sanely.
2011         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2012         (_gtk_tree_data_list_node_copy): handle types more sanely.
2013
2014         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2015         GValue better. Converts the type as well.
2016
2017         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2018         GValue better. Converts the type as well.
2019
2020 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2021
2022         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2023         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2024         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2025         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2026
2027         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2028         gdk_im/gdk_ic.
2029
2030 2001-03-09  Hans Breuer  <hans@breuer.org>
2031
2032         * gdk/gdk.def : updated
2033
2034         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2035         for their palette
2036
2037         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2038         removing
2039
2040         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2041         removing and implemented Havoc's GdkWindow state functions; 
2042         stick/unstick only as no-op, cause I don't know how to emulate 
2043         on win32 ...
2044
2045         * gtk/gtk.def : updated
2046
2047         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2048
2049         * gtk/gtktypeutils.c : #include <string.h>
2050
2051         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2052
2053 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2054
2055         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2056         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2057         not a boxed.
2058
2059 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2060
2061         * docs/Changes-2.0.txt:
2062         Document expose event->region change and that gtk_widget_event
2063         doesn't allow passing expose events.
2064
2065         * gdk/gdkevents.h:
2066         Add region to expose event.
2067         
2068         * gdk/gdkevents.c:
2069         Handle event->region in gdk_event_copy() and gdk_event_free().
2070
2071         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2072         Generate expose_event->region when creating expose events.
2073
2074         * gdk/x11/gdkevents-x11.c:
2075         Generate expose events with regions when translating X events.
2076
2077         * gtk/gtkcontainer.[ch]:
2078         Default expose handler that propagates expose events to NO_WINDOW
2079         children. New function gtk_container_propagate_expose()
2080
2081         * gtk/gtkwidget.[ch]:
2082         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2083         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2084         expose events. New function gtk_widget_send_expose() to send expose
2085         events. New function gtk_widget_region_intersect() to calculate
2086         window/region intersections.
2087         
2088         * gtk/gtkmain.c (gtk_main_do_event):
2089         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2090         Use gtk_widget_send_expose() to send expose events.
2091         
2092         * gtk/gtkbin.c:
2093         * gtk/gtkbox.c:
2094         * gtk/gtkfixed.c:
2095         * gtk/gtkimagemenuitem.c:
2096         * gtk/gtklist.c:
2097         * gtk/gtkpacker.c:
2098         * gtk/gtktable.c:
2099         * gtk/gtktree.c:
2100         Remove expose handler, using the default container implementation
2101         instead.
2102         
2103         * gtk/gtkbutton.c:
2104         * gtk/gtkcheckbutton.c:
2105         * gtk/gtkeventbox.c:
2106         * gtk/gtkfixed.c:
2107         * gtk/gtkhandlebox.c:
2108         * gtk/gtklayout.c:
2109         * gtk/gtklistitem.c:
2110         * gtk/gtkmenu.c:
2111         * gtk/gtkmenubar.c:
2112         * gtk/gtkmenuitem.c:
2113         * gtk/gtknotebook.c:
2114         * gtk/gtkoptionmenu.c:
2115         * gtk/gtkpaned.c:
2116         * gtk/gtkscrolledwindow.c:
2117         * gtk/gtktogglebutton.c:
2118         * gtk/gtktoolbar.c:
2119         * gtk/gtktreeitem.c:
2120         * gtk/gtkviewport.c:
2121         Chain expose handler to parent class handler. Use
2122         gtk_container_propagate_expose() to propagate exposes.
2123
2124         * gtk/gtkclist.c (check_exposures):
2125         * gtk/gtktext.c (process_exposes):
2126         Use gtk_widget_send_expose instead of gtk_widget_event.
2127
2128 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2129
2130         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2131
2132 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2133
2134         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2135         unref the nodes.   Fixes bug #50058.
2136
2137         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2138         "::ref_iter" to "::ref_node".
2139         (gtk_tree_model_unref_node): change "::unref_iter" to
2140         "::unref_node". Fixes bug #50064.
2141
2142 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2143
2144         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2145         support for invisible cells.
2146          (gtk_tree_view_bin_expose): ditto
2147
2148 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2149
2150         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2151         on gobjects.
2152
2153         * tests/testtreefocus.c (main): New test file.
2154
2155         * tests/testtreeview.c: update to latest glib changes.
2156
2157         * tests/testtreecolumns.c: update to latest glib changes.
2158
2159 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2160
2161         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2162
2163 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2164
2165         * *.c: added accumulator data argument to g_signal_newc()
2166         functions.
2167
2168         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2169         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2170         * gtk/treestoretest.c (make_window):
2171         s/g_signal_connect/g_signal_connectc/.
2172
2173         * gtk/gtktextbuffer.c: completed signal arg fixups,
2174         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2175
2176 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2177
2178         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2179         G_CONST_RETURN.
2180
2181         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2182         ::hierarchy-changed signal when a widget changes
2183         from anchored to unanchored or vice versa.
2184         (anchored means 
2185          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2186         Use a private flag to keep track of this efficiently.
2187
2188 2001-03-07  Havoc Pennington  <hp@redhat.com>
2189
2190         * gtk/testgtk.c (create_spins): uglify so that size request gets
2191         tested.
2192
2193         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2194         request on values for upper/lower, completes #6152
2195
2196 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2197
2198         * Makefile.am: Remove gtk-config-2.0 again.
2199         (Grrrr, pkg-config. And stops make loops.)
2200
2201 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2202
2203         * gtk/gtksignal.[hc]: removed old emission hook API.
2204         
2205         * docs/Changes-2.0.txt: fixed sections.
2206         
2207         * gtk/gtktextbuffer.c: signal arg fixups.
2208
2209 2001-03-07  Havoc Pennington  <hp@redhat.com>
2210
2211         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2212
2213         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2214         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2215         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2216         validation and the redraw which is higher priority than the
2217         validation.
2218
2219 2001-03-07  Havoc Pennington  <hp@redhat.com>
2220
2221         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2222         (gtk_entry_set_property): remove trailer
2223
2224         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2225         (gtk_entry_get_width_chars): new functions, to set size request to 
2226         a given number of characters
2227
2228         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2229
2230         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2231         (gtk_dialog_get_has_separator): new function
2232         (run_delete_handler): fix to not emit "response" signal
2233         because we already did in the delete event handler installed
2234         at dialog creation time.
2235         
2236         * gtk/gtkdialog.h: add a has_separator property,
2237         add GTK_DIALOG_NO_SEPARATOR flag
2238
2239 2001-03-07  Havoc Pennington  <hp@redhat.com>
2240
2241         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2242         off decorations for a window.
2243
2244         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2245         changes
2246
2247         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2248         to get location of PangoLayout inside the label, closes #51198
2249
2250         * gtk/testgtk.c (create_bbox): fix up button box usage
2251
2252         * gtk/testcalendar.c (create_calendar): fix up button box usage
2253
2254         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2255
2256         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2257
2258         * gtk/gtkhbbox.h: deprecations
2259
2260         * gtk/gtkvbbox.h: deprecations
2261
2262         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2263         emulate deprecated gtk_button_box_get_spacing
2264
2265         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2266         the "set global default" functions
2267         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2268         GtkBox base class
2269
2270         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2271
2272         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2273         render the icon, return the missing image icon.
2274
2275         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2276         image icon if the load fails.   
2277
2278         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2279         when no image is found; should be the Netscape "missing image"
2280         icon eventually but for now is a random image
2281
2282         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2283         role for the session manager
2284
2285         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2286
2287         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2288         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2289
2290         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2291
2292 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2293
2294         * gtk/*.c: marshaller fixes.
2295         
2296         * gtk/gtkmarshal.list: extreme cleanup.
2297
2298         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2299         param spec for now.
2300
2301         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2302         where appliable.
2303
2304         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2305         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2306         which are not reference counted:
2307         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2308         PangoFontDescription, GtkTreeIter and GtkTreePath.
2309
2310 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2311
2312         * gtk/gtktreeselection.h: 
2313         * gtk/gtktreemodel.c:
2314         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2315         file should be included directly, and gobject/gmarshal.h
2316         as well as gtk/gtkmarshal.h even can't be included directly.
2317
2318         * Makefile.am: grr, install gtk-config-2.0.
2319
2320         * gtk/testgtk.c:
2321         * gtk/simple.c:
2322         * gtk/gtkmenu.c:
2323         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2324         passing "*signal*::*" args to gtk_widget_set().
2325         
2326         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2327         
2328         * gtk/*.c: removed trailer arg from property setters and getters.
2329         macro fixups.
2330
2331 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2332
2333         * gtk/gtklabel.c (set_markup): Removed warning
2334
2335 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2336
2337         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2338         field to allow you to hide cell renderers.
2339
2340         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2341
2342         * gtk/gtktreeview.c: Add support for invisible cells.
2343
2344 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2345
2346         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2347         Add "clicked" signal back to columns.
2348
2349         * ChangeLog: remove conflict markers.
2350
2351 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2352
2353         * gtk/gtkbutton.c: Add animation of activation by, on 
2354         activate, pressing the button, and adding a timeout that 
2355         releases the button after 250ms or on key release and
2356         emits ::clicked. (#51501)
2357
2358         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2359         action area, we connect to ::clicked instead of ::activate
2360         so the dialog stays up through the animation.
2361
2362 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2363
2364         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2365         check the ignore_enter flag for the menu shell that
2366         the item is actually a child of, not for attached
2367         submenus. (#51536)
2368
2369 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2370
2371         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2372         special key-press grab handling for widgets within
2373         GtkWindows. Otherwise, fall through to normal case.
2374
2375         This prevents key events being sent twice to GtkInvisible
2376         widgets, which can cause all sorts of mischief.
2377
2378 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2379
2380         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2381         widget is in effect, give the grab widget a first
2382         crack at KEY_PRESS/RELEASE events. (#424)
2383
2384 2001-03-06  James Henstridge  <james@daa.com.au>
2385
2386         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2387         offset for the window_state_event to point at window_state_event
2388         rather than no_expose_event.
2389
2390 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2391
2392         * gtk/gtkimmodule.h: fix busted /* comment */
2393
2394 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2395
2396         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2397         object properties.
2398
2399 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2400
2401         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2402         add object properties.
2403
2404         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2405         to add object properties.
2406
2407         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2408         object properties.
2409
2410         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2411         add object properties.
2412
2413         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2414         object properties.
2415
2416 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2417
2418         * gtk/gtktreemodel.c: renamed "child_toggled" to
2419         "has_child_toggled".
2420
2421         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2422         handle new signal name.
2423
2424         * gtk/gtktreestore.c: Updated to handle new signal name.
2425         * gtk/gtklisttore.c: Updated to handle new signal name.
2426         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2427
2428 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2429
2430         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2431         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2432
2433 2001-03-05  Michael Natterer  <mitch@gimp.org>
2434
2435         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2436         pixbuf-engine coincidentially also failed to make one of it's
2437         parent_class pointers static, causing overwriting of GtkLabel's
2438         parent_class pointer in pixbuf_style_class_init().
2439         (Will commit the fix to the pixbuf-engine too).
2440
2441 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2442
2443         * gdk/gdkwindow.h:
2444         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2445         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2446         gdk_window_set_icon_list for net wmspec functionality.
2447
2448         * gdk/x11/gdkwindow-x11.c:
2449         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2450         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2451         gdk_window_set_icon_list.
2452         Added gdk_wmspec_change_state helper function and used it in the code.
2453         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2454
2455         * gtk/gtkdialog.c (gtk_dialog_init):
2456         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2457
2458         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2459         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2460
2461         * gtk/gtkwindow.c:
2462         new function gtk_window_set_type_hint.
2463         On realize, set type hint and modal hint.
2464
2465         * gtk/gtkwindow.h:
2466         Added type_hint field and gtk_window_set_type_hint.
2467
2468 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2469
2470         * gtk/gtklabel.[ch]:
2471         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2472         New function gtk_label_get_accel_keyval () to get the underline accelerator
2473         of the label. Setting the label pattern overrides other attributes.
2474
2475 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2476
2477         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2478         Added missing initializers to gtk_rc_style_init().
2479
2480 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2481
2482         * gtk/gtktextview.c: fixed bug #51097 about setting 
2483         gtk_text_view_set_border_window_size() if the widget is 
2484         already realized.
2485
2486 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2487
2488         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2489
2490         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2491         comment. Won't do to have duplicated doc comments between
2492         the platform subdirs.
2493
2494 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2495
2496         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2497           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2498
2499         Detectable auto-repeat - make a repeating key generate
2500         press/press/press/release instead of press/release pairs.
2501
2502         If we have Xkb and XkbSetDectableAutoRepeat supports
2503         that, we do it that way. Otherwise, when we get
2504         a release event, we check ahead with XPending to see
2505         if the next key is a KeyPress with the same keycode
2506         and timestamp. (Not 100% reliable, but pretty close.)
2507           
2508 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2509         
2510         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2511         special key-press grab handling for widgets within
2512         GtkWindows. Otherwise, fall through to normal case.
2513  
2514         This prevents key events being sent twice to GtkInvisible
2515         widgets, which can cause all sorts of mischief.
2516  
2517 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2518  
2519         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2520         widget is in effect, give the grab widget a first
2521         crack at KEY_PRESS/RELEASE events. (#424)
2522  
2523 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2524
2525         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2526         to extend the selection. (Roughly based on patch
2527         from Jay Cox, #50939)
2528
2529         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2530         to properly handle previous GDK_BUTTON_PRESS. 
2531         (Patch from Jay Cox, #50938)
2532
2533         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2534         '\0' back along with the deleted text. (#51148)
2535
2536 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2537
2538         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2539         the group when extracting it from the X keyboard event.
2540
2541         * modules/input/Makefile.am modules/input/imipa.c: 
2542         Simple module for entering IPA. (Do we need a 
2543         gtk-stupid-input-tricks CVS module?)
2544
2545 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2546
2547         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2548         const.
2549
2550         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2551
2552         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2553         is no focus widget for the dialog currently, grab the focus as well
2554         as the default.
2555
2556         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2557         the action area's children to iterate through, not the
2558         dialog's children.
2559
2560 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2561
2562         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2563         Add plug-socket tests. (Won't work worth a darn until I commit
2564         the rest of the plug-socket changes, but no reason these
2565         can't go into CVS now.)
2566
2567 2001-03-02  Havoc Pennington  <hp@redhat.com>
2568
2569         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2570         _gdk_region_get_xrectangles()
2571
2572         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2573
2574         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2575
2576         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2577         function, contributed by Ron Steinke    
2578
2579         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2580         gdk_net_wm_supports
2581
2582         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2583         New function, contributed by Ron Steinke
2584
2585         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2586         used to line up the text in the entry when using the entry for
2587         editable sheet cell hacks
2588
2589         * gtk/testgtk.c (create_entry): test the activate_default setting
2590         on GtkEntry
2591
2592         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2593         cause the entry to activate the default button for a dialog when 
2594         activated
2595         (gtk_entry_get_activates_default): new function
2596
2597 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2598
2599         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2600         Hwang to move call to sync_selection() up a few lines
2601         to before the row list is modified, to fix crash when
2602         removing rows in the undo_selection list.
2603
2604         (Test case provided by Daniel Elstner:
2605
2606         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2607
2608 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2609
2610         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2611         of tree->root_tree in parent_set rather than _map(), 
2612         fixing #50892 in a bit better manner.
2613
2614 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2617
2618 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2619
2620         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2621         gtk_default_draw_shadow.
2622
2623 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2624
2625         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2626         warning, make warnings more verbose, treat a error
2627         in shmat as permanent, and don't try again.
2628         (#51163, Ed Randall.)
2629
2630 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2631
2632         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2633         delay for the first click before starting to scroll.
2634         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2635
2636         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2637         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2638
2639 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2640
2641         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2642         cleanup to remove some references to unused
2643         ->xoffset, ->yoffset.
2644
2645 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2646
2647         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2648         mask. (#51039, fix from Martin Maierhofer)
2649
2650 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2651
2652         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2653         for unshifted + and shifted = for non-us keyboards.
2654         Make <Control>+ and <Control>- work as well as 
2655         <Control>KP_Plus, <Control>KP_Minus for recursive
2656         open/close.  (#2682, René Seindal)
2657
2658 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2659
2660         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2661         the active menu item before deactivating the menu,
2662         so gtk_menu_popdown doesn't change the history. (#50964)
2663         
2664 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2665
2666         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2667         draw lines with text_gc rather than black_gc.
2668         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2669
2670 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2671
2672         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2673         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2674         less interrelated then it was, but it still requires the
2675         GtkTreeView to map it.
2676
2677         * test/testtreecolumn.c: Now I can add a column to one view,
2678         remove it, add it to the another view, remove it, then re-add it
2679         to the first.  Nifty.
2680
2681 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2682
2683         * docs/tutorial/gtk-tut.sgml: Minor corrections
2684
2685 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2686
2687         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2688         GtkRowReference.
2689
2690 2001-02-28  Havoc Pennington  <hp@redhat.com>
2691
2692         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2693         draw_default
2694         (gtk_widget_draw_focus): remove this function; we could instead
2695         make it just gtk_widget_draw(), but in most cases I think the
2696         result would be broken user code, so think it's better to have
2697         that code not compile and get fixed
2698         (gtk_widget_draw_default): ditto
2699
2700         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2701         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2702         
2703         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2704         widgets lose/get the default, instead of calling draw_default
2705         
2706         * docs/Changes-2.0.txt: note about all this
2707
2708         Then fixed every widget in GTK, I won't list all the filenames.
2709
2710 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2711
2712         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2713         _gtk_tree_row_reference_deleted.
2714         (inserted_callback): Proxy out to
2715         _gtk_tree_row_reference_inserted.
2716         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2717         get around signal emission ordering problem.
2718
2719         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2720         fix to work with SINGLE 
2721         (_gtk_tree_selection_internal_select_node): Major sanitization on
2722         selections.  SINGLE now seems to work.
2723
2724         * tests/Makefile.am: add testtreecolumn.c:
2725
2726         * tests/testtreecolumn.c: New test.  Mostly points out selection
2727         bugs currently, but will test columns later.
2728
2729         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2730         selection bug.  I hate touching this code -- it's scary.
2731
2732 2001-02-26  Havoc Pennington  <hp@redhat.com>
2733
2734         * gtk/testgtk.c: test the window state stuff
2735
2736         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2737         window come to the user's attention as if it were just created
2738         (gtk_window_iconify): new function
2739         (gtk_window_deiconify): new function
2740         (gtk_window_stick): new function
2741         (gtk_window_unstick): new function
2742         (gtk_window_maximize): new function
2743         (gtk_window_unmaximize): new function
2744
2745         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2746
2747         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2748
2749         * gdk/x11/gdkevents-x11.c: create window state events when
2750         appropriate
2751         (gdk_wmspec_supported): new function
2752
2753         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2754         iconification before showing the window
2755         (gdk_window_deiconify): new function
2756         (gdk_window_stick): new function
2757         (gdk_window_unstick): new function
2758         (gdk_window_maximize): new function
2759         (gdk_window_unmaximize): new function
2760
2761         * gdk/gdkwindow.c: store the window state in the window; 
2762         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2763         window->mapped.
2764         (gdk_window_get_state): return the current window state
2765
2766         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2767         (gdk_event_get_state): handle GDK_WINDOW_STATE
2768         (gdk_synthesize_window_state): function to create the window state
2769         events
2770
2771         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2772         event, for changes to "window state" such as maximized, sticky, 
2773         etc.
2774         
2775         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2776         focuses a window
2777
2778         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2779         finds out if we support a given WM spec hint
2780
2781 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2782
2783         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2784
2785 2001-02-25  Hans Breuer  <hans@breuer.org>
2786
2787         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2788         cause we want to loose those prototypes only in the latter case
2789
2790         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2791         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2792         impl member variable instead
2793
2794         * gtk/gtk.def : updated
2795
2796         * gtk/gtklist.c : 
2797         * gtk/gtkmenus.c : include <string.h> for memset ()
2798
2799         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2800         for everthing built here, but for gtk-x.x.dll only. This solves
2801         problem of indifferent gtk type definitions
2802
2803 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2804
2805         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2806
2807 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2808
2809         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2810         column that is exposed.
2811
2812         (_gtk_tree_view_update_size): Changed name from set_size, and
2813         changed function to do more work, and not force people calling it
2814         to figure out the size.  Simplifies a lot of code elsewhere.
2815
2816 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2817
2818         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2819         return solid masks for xpms that have no transparent color.
2820         This makes the ..._create_from_xpm... API backwards
2821         compatible.
2822
2823 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2824
2825         * README.win32: Update. Mention the gtk-1-3-win32-production
2826         branch.
2827
2828         * gdk/win32/bdfcursor.c: New file. A program that generates
2829         xcursors.h. Thanks to Stefan Ondrejicka.
2830
2831         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2832         compact format.
2833
2834         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2835
2836         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2837         function, uses xcursors.h.
2838         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2839         cursor from inline data instead of using LoadCursor() to generate
2840         it from a resource.
2841
2842         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2843         event, must check the Windows message for mouse button state, as
2844         the GDK event state might not have been built if it is
2845         undelivered. Remove one goto.
2846
2847         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2848         SetCursor() if the current cursor as returned by GetCursor() is
2849         the window's previous cursor. The ChildWindowFromPoint() test
2850         apparently didn't work correctly.
2851
2852         * gdk/win32/rc/*.cur: Remove.
2853
2854         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2855
2856         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2857
2858         * gtk/makefile.{mingw,msc}.in: Updates.
2859
2860 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2861
2862         * gtk/gtktreemodel.h: add functions for signal emission.
2863
2864         * gtk/gtktreestore.c: move to use above functions instead of
2865         g_signal_emit.
2866
2867         * gtk/gtkliststore.c: ditto
2868
2869 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2870
2871         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2872         GObject instead of GtkObject.
2873
2874         * gtk/gtkliststore.c: ditto.
2875
2876         * gtk/gtktreemodelsort.c: ditto.
2877
2878         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2879         GtkTreeModelIface, instead of in each model.
2880
2881 2001-02-21  Havoc Pennington  <hp@redhat.com>
2882
2883         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2884         unbreak this function
2885
2886         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2887         properties
2888
2889         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2890         properties
2891
2892         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2893         properties
2894
2895         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2896         mean unset the max length
2897
2898 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2899
2900         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2901         Changed name to be set_cell_data_func to make it clear what
2902         the functino does.  Close bug #51069.
2903
2904 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2905
2906         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2907         have memory actually freed.  Keeps box running longer.
2908
2909 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2910         
2911         * gtk/gtkseparatormenuitem.[ch]:
2912         Added new menu separator item. The drawing and size handling
2913         is still done in GtkMenuItem, but the API is a bit more sane.
2914         
2915         * gtk/Makefile.am:
2916         Add gtkseparatormenuitem.[ch].
2917
2918         * gtk/gtk.h:
2919         Add gtkseparatormenuitem.h.
2920         
2921         * gtk/gtkentry.c:
2922         * gtk/gtkmenufactory.c:
2923         * gtk/gtktextview.c:
2924         Use the new API for menu separators.
2925         
2926         * demos/gtk-demo/menus.c (create_menu):
2927         Add some GtkSeparatorMenuItem demo code.
2928
2929 2001-02-20  Havoc Pennington  <hp@redhat.com>
2930
2931         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2932         Lee Mallabone
2933
2934         * gtk/gtkarrow.c: Convert to new property API, patch from 
2935         Lee Mallabone
2936
2937 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2938
2939         * tests/testtreeview.c (toggled_callback): fix to reflect change
2940         in GtkTreeModelStore.
2941
2942 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2943
2944         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2945         function to create an icon set from a pixbuf.
2946
2947 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2948
2949         * gtk/gtkcellrenderertext.[ch]:
2950         Add a "markup" property.
2951
2952         * gtk/treestoretest.c:
2953         Use the markup property, remove some leftover stuff from
2954         GtkTreeModelMapping.
2955
2956 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2957
2958         * gtk/gtklabel.c (gtk_label_set_selectable):
2959         Queue a redraw if the selectable setting was changed.
2960
2961 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2962
2963         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2964         Actually copy the whole gc, not just the public parts.
2965         
2966         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2967         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2968         labels.
2969
2970 2001-02-19  Havoc Pennington  <hp@pobox.com>
2971
2972         * gdk/gdkwindow.c: docs
2973
2974         * gdk/gdkrgb.c: docs
2975
2976         * gdk/gdkregion-generic.c: docs
2977
2978         * gdk/gdkgc.c (gdk_gc_set_values): docs
2979
2980         * gdk/gdkdraw.c: docs
2981
2982         * gdk/gdkdrawable.h: deprecate drawable get/set data
2983
2984 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2985
2986         * demos/gtk-demo/dialog.c: Add simple new demo.
2987
2988 2001-02-19  Havoc Pennington  <hp@redhat.com>
2989
2990         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2991         insert_child_anchor signal, bug #50245
2992
2993         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2994         from create_child_anchor, so the anchor is passed in
2995
2996         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2997         (_gtk_widget_segment_new): have the child anchor object passed in, 
2998         instead of creating it.
2999
3000         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3001         to gtk_text_buffer_get_modified
3002
3003 2001-02-19  Havoc Pennington  <hp@redhat.com>
3004
3005         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3006         changed GLib without fixing GTK
3007
3008         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3009         functions to have an underscore in front. Most of them should 
3010         probably just go away, but for starters don't export them.
3011         Bug #50482
3012
3013 2001-02-19  Havoc Pennington  <hp@redhat.com>
3014
3015         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3016         excluded by default
3017
3018         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3019         clean up the old code a bit
3020
3021         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3022         inconsistent state
3023
3024         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3025         draw inconsistent state
3026
3027         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3028         (create_menu): add inconsistent test
3029
3030         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3031         new function
3032         (gtk_check_menu_item_get_inconsistent): new function
3033         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3034         state (using etched in for now)
3035
3036         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3037         draw inconsistent state
3038
3039         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3040         function, used when the user has selected a range of stuff in
3041         different states
3042         (gtk_toggle_button_get_inconsistent): accessor for that
3043         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3044         don't know what else to do)
3045
3046 2001-02-19  Hans Breuer <hans@breuer.org>
3047
3048         * gtk/gtk.def : updated exported symbols
3049
3050         * gtk/makefile.msc.in : updated
3051
3052         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3053         a colormap, when invoked from testgtk::entry. I'm not sure where
3054         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3055         avoids immediate crashing ...
3056
3057         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3058         any objections ?
3059
3060         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3061         0 parameter. At least msvc doesn't like macros with var args. 
3062         I simply removed the extra 0, was it a feature or a typo ?
3063
3064         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3065         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3066         because the value assignment to the internal struct wasn't working.
3067         I'm not absolutely sure. The problem could have been resolved by
3068         changing the "func" declartion in the struct, but was the pointer
3069         to the function pointer intended ?
3070
3071         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3072
3073         * gdk/gdk.def : updated exported symbols
3074
3075         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3076         only use SetDIBitsToDevice if there is a palette at the drawable
3077         and the image is GDK_VISUAL_PSEUDO_COLOR
3078
3079         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3080
3081         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3082
3083         * gdk/*/makefile.msc : updated
3084
3085 2001-02-19  Havoc Pennington  <hp@redhat.com>
3086
3087         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3088         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3089
3090         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3091         (gdk_key_repeat_restore): nuke
3092
3093         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3094         (gdk_init_check): no atexit func
3095
3096         * gdk/gdkrgb.h: mark some stuff deprecated
3097
3098         * gdk/gdkcolor.h: mark some stuff deprecated
3099         
3100         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3101
3102         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3103
3104 2001-02-16  Havoc Pennington  <hp@redhat.com>
3105
3106         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3107         scroll steps.
3108
3109         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3110         steps, and add Ctrl-arrow shortcuts for paging visually as with
3111         HScale, since Page Up and Page Down move logically.
3112
3113         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3114         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3115         
3116         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3117         steps
3118         (gtk_range_scroll): handle the visual steps
3119
3120         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3121         scroll steps
3122
3123         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3124         steps, not the logical ones.
3125
3126         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3127         (scroll_vertical): handle up/down steps
3128
3129 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3130
3131         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3132         Copy data and free data with free().
3133
3134         * gdk-pixbuf/gdk-pixbuf.c:
3135         * gdk-pixbuf/io-jpeg.c:
3136         * gdk-pixbuf/io-png.c:
3137         Use g_try_malloc/g_free instead malloc/free.
3138         
3139         * gdk-pixbuf/test-gdk-pixbuf.c:
3140         Must... initialize... gobject...
3141         
3142         * gdk-pixbuf/pixops/timescale.c:
3143         * gtk/gtkcalendar.c:
3144         Use g_malloc instead of malloc.
3145         
3146 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3147
3148         * gtk/testgtkrc:
3149         Comment out property assignments, these don't work yet.
3150
3151 2001-02-17  Havoc Pennington  <hp@pobox.com>
3152
3153         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3154         bit.
3155
3156 2001-02-17  Havoc Pennington  <hp@pobox.com>
3157
3158         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3159         shadowed variables that had broken size request in some cases,
3160         leading to bogus tooltips (#50996)
3161
3162 2001-02-06  Jon K Hellan  <hellan@acm.org>
3163
3164         Implement fast browsing of tooltips, bug #50619
3165         
3166         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3167         and last_popdown
3168         
3169         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3170         use_sticky_delay and last_popdown.
3171         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3172         time of popdown.
3173         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3174         is NULL.
3175         (gtk_tooltips_recently_shown): New static function.  Return true
3176         if < sticky_delay has elapsed since last popdown.
3177         (gtk_tooltips_event_handler): Display window after sticky_delay
3178         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3179         since last popdown.
3180         
3181 2001-02-17  Havoc Pennington  <hp@pobox.com>
3182
3183         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3184         instead of (). #6394
3185
3186         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3187         G_CONST_RETURN, make it return by reference, #50473
3188         
3189 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3190
3191         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3192         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3193         setup fields contain garbage (e.g. subwindow, breaking
3194         gdk_drawable_ref() upon event copy).
3195         (gtk_menu_stop_navigating_submenu_cb): same here.
3196
3197         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3198         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3199         * gtk/gtkclist.c (vertical_timeout): 
3200         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3201         default-zero-intialization for unions to memset(,0,), as unions are
3202         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3203         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3204
3205         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3206         g_closure_sink() warning.
3207
3208         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3209         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3210         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3211         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3212         
3213 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3214
3215         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3216         gtk_*_store_get, and moved to GtkTreeModel.
3217
3218         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3219
3220         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3221
3222         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3223
3224         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3225         set the func.
3226
3227         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3228         freeze/thaw notify between setting all the properties for a cell.
3229
3230         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3231
3232 2001-02-15  Havoc Pennington  <hp@redhat.com>
3233
3234         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3235         the X coordinates so they're with respect to the line, rather than 
3236         with respect to the layout.
3237
3238         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3239         Mallabone
3240
3241         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3242         and inverted test
3243
3244         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3245         #50806
3246
3247         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3248
3249         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3250         gtk_text_iter_is_end
3251
3252         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3253         rename gtk_text_buffer_get_end_iter
3254
3255         * gtk/testgtk.c (create_labels): Add test for selectable
3256
3257         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3258         the selection stuff. This code is kind of broken since it doesn't 
3259         use the theme engine.
3260
3261         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3262         fix infinite loop and y offset problem
3263         (gdk_draw_layout_line_with_colors): fix foreground color handling
3264
3265         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3266         that makes the label selectable.
3267         
3268         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3269         layout when the style is set, since fonts etc. could have changed.      
3270
3271 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3272
3273         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3274
3275         * gtk/gtktreemodelsimple.[ch]: removed.
3276
3277 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3278
3279         * gtk/gtktreemodelmapping.[ch]:
3280         New files. Implement GtkTreeModelMapping.
3281         
3282         * gtk/Makefile.am:
3283         Add gtktreemodelmapping.[ch].
3284         
3285         * gtk/gtk.h:
3286         Add gtktreemodelmapping.h
3287
3288         * gtk/treestoretest.c:
3289         Test the GtkTreeModelMapping
3290
3291 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3292
3293         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3294         have a demo, we might as well pass in real values.  Thanks to
3295         clahey for pointing this out.
3296
3297 2001-02-14  Havoc Pennington  <hp@pobox.com>
3298
3299         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3300         "static" to a private function
3301         (gtk_image_menu_item_class_init): remove destroy handler,
3302         add "image" object property
3303
3304 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3305
3306         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3307         Add a shortcut if the window and the current clip_region doesn't
3308         overlap. This is needed when there are a lot of windows in a
3309         window. The layout test in testgtk is a good test.
3310
3311         * gdk/linux-fb/gdkwindow-fb.c:
3312         Whitespace fix.
3313
3314 2001-02-13  Sven Neumann  <sven@convergence.de>
3315
3316         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3317
3318 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3319
3320         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3321         Don't reference last_cursor if it is null. Fixes crash when rotating
3322         the screen before having moved the mouse.
3323
3324         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3325
3326         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3327
3328         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3329         when using 90 or 270 degrees rotation.
3330
3331 2001-02-12  Havoc Pennington  <hp@pobox.com>
3332
3333         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3334         it always set the foreground, even if we were only using
3335         a stipple.
3336         (gdk_draw_layout_line_with_colors): new function, allow
3337         override colors
3338         (gdk_draw_layout_with_colors): new function, allow override
3339         colors
3340         (gdk_pango_layout_line_get_clip_region): function to get the clip
3341         region for a logical text range
3342         (gdk_pango_layout_get_clip_region): get the clip region for a
3343         logical text range
3344
3345         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3346         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3347         the right number of arguments.
3348
3349         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3350         enhance the function to check that node data corresponds to a 
3351         view still belonging to the tree.
3352
3353         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3354         GtkTreePath
3355         (gtk_tree_view_inserted): ditto
3356         (gtk_tree_view_child_toggled): ditto
3357
3358         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3359         simplify this code.
3360
3361         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3362         a PangoAttrList
3363
3364         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3365
3366         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3367
3368         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3369         size in the size request 
3370         (gtk_menu_bar_size_allocate): consider toggle size here
3371
3372         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3373         that displays a widget in the toggle slot
3374
3375         * gtk/testgtk.c: test GtkImageMenuItem
3376
3377         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3378         
3379         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3380         request and allocation
3381
3382         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3383
3384         * gtk/gtkcheckmenuitem.c
3385         (gtk_check_menu_item_toggle_size_request): ditto
3386         
3387 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3388
3389         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3390         reference.
3391
3392         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3393         and refuse to initialize GTK+ if they fail.
3394
3395 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3396
3397         * configure.in: Add check for gtk-doc version.
3398
3399 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3400
3401         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3402         where the xpad/ypad was only being used on one side!
3403
3404 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3405
3406         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3407         function, copied from X11 version.
3408
3409         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3410         DestroyCursor failures. The reason for the problem (despite the
3411         inconsistent messages from GetLastError()) was that
3412         DestroyCursor() cannot be called while a cursor is set in a
3413         window. Set the new cursor first and then destroy the old one.
3414         Thanks to jpe@archaeopteryx.com.
3415
3416         * gdk/win32/gdkcc-win32.c: Remove.
3417
3418         * gdk/win32/Makefile.am: Remove from here, too.
3419         
3420         * gdk/gdk.def
3421         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3422
3423         * gtk/gtk.def
3424         * gtk/makefile.mingw.in: Updates.
3425
3426 2001-02-08  Havoc Pennington  <hp@redhat.com>
3427
3428         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3429         add a widget to a bin that already has a child.
3430
3431         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3432
3433         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3434         
3435         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3436
3437         * gdk/gdk.h: remove gdkcc.h
3438
3439         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3440
3441         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3442         GdkPixbuf, since the previous implementation was GdkColorContext
3443         dependent.
3444
3445         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3446         
3447 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3448
3449         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3450         a sane value!
3451
3452 2001-02-08  Havoc Pennington  <hp@redhat.com>
3453
3454         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3455         lighten them.
3456
3457 2001-02-08  Havoc Pennington  <hp@redhat.com>
3458
3459         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3460         validation idle
3461
3462         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3463         cell renderer
3464
3465         * demos/pixbuf-demo.c (timeout): remove deprecated
3466         gtk_widget_draw
3467
3468         * demos/testpixbuf-save.c (main): remove deprecated
3469         gtk_drawing_area_size
3470
3471         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3472         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3473         at the start of the allocation.
3474         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3475         unsetup or NULL model.
3476
3477         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3478         even/odd/sorted cells in the tree view.
3479
3480         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3481         bugfixes
3482
3483         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3484         backgrounds with draw_flat_box using different detail for even/odd
3485         rows.
3486
3487         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3488         row, so we can draw the alternating colors thing
3489
3490         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3491         property from a synonym property, notify for the synonym.
3492         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3493         (gtk_text_tag_get_property): Always return the font, even if
3494         all its fields aren't set
3495
3496         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3497         store the attr list; it leaves us with no way to change attributes
3498         in _render according to the render flags, and no way to implement
3499         get_property. Instead store all the specific text attributes. 
3500         Separate whether an attribute is enabled from its value. Sync all
3501         properties with GtkTextTag, make them all consistent, etc.
3502
3503         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3504         renderers can highlight the sort row/column     
3505
3506         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3507         accessor functions to get values; this has the side effect of
3508         showing up which accessor functions were missing. Added those.
3509
3510         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3511         set_alignment, to be consistent with GtkLabel, GtkMisc
3512
3513         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3514         arrow.
3515
3516         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3517
3518         * gtk/gtktreesortable.h: updates in here
3519
3520 2001-02-07  Sven Neumann  <sven@convergence.de>
3521
3522         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3523         pango dimensions after painting the background. We used to draw
3524         gigantic flat boxes here.
3525
3526 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3527
3528         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3529         error introduced with earlier commit) (pointed out by
3530         Ollie Lho)
3531
3532 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3533
3534         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3535         which are no longer necessary.
3536
3537 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3538
3539         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3540
3541 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3542
3543         * gdk/gdk.def
3544         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3545         Provide dummy implementations.
3546
3547 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3548
3549         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3550
3551         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3552         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3553         deprecated this function.
3554
3555         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3556         argument.
3557
3558 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3559
3560         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3561
3562 2001-02-03  Havoc Pennington  <hp@pobox.com>
3563
3564         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3565         Mikael Hermansson with patch from Mikael (if there was a toggle
3566         start one after the first character in the range, this function
3567         was broken). Bug #50380
3568
3569 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * configure.in: Remove confusing comment about X11.
3572
3573 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3574
3575         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3576         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3577         
3578 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3579
3580         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3581         it breaks things on BSD. If you want to compile GTK+ with
3582         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3583         when configuring, since GTK+ simply can't be "pure ANSI" 
3584         in the header files it uses. (#8170, Greg Hudson)
3585
3586 2001-02-02  Havoc Pennington  <hp@redhat.com>
3587
3588         * gtk/gtkwindow.c: docs
3589
3590         * gtk/gtkwidget.c: docs
3591         (gtk_widget_set_colormap): add a reference to the colormap
3592         (gtk_widget_get_default_colormap): add a reference to the colormap
3593
3594         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3595
3596         * gtk/gtktextiter.c: docs
3597
3598         * gtk/gtkmain.c (gtk_propagate_event): docs
3599
3600         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3601         (gtk_paned_set_position): docs
3602
3603         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3604         sort interface, no implementation yet.
3605
3606         * demos/testpixbuf.c (new_testrgb_window): replace
3607         gtk_drawing_area_size() with gtk_widget_set_usize()
3608
3609         * demos/testpixbuf-drawable.c (main): ditto
3610         
3611         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3612
3613         * gtk/gtktextbuffer.c: docs
3614
3615         * gtk/gtkstock.c: docs
3616
3617         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3618
3619         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3620
3621         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3622         
3623         * gtk/gtkimage.c: add some docs in here
3624         (gtk_image_size_request): change name of
3625         gtk_widget_render_stock_icon
3626         (gtk_image_get_icon_set): don't dup returned string
3627         (gtk_image_get_icon_set): don't dup returned string
3628
3629         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3630         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3631         and gtkiconfactory.h functions
3632
3633         * gtk/gtkiconfactory.c: add some docs in here
3634
3635         * gtk/gtkmain.c (gtk_get_default_language): document
3636         (gtk_get_current_event): document
3637         (gtk_get_current_event_state): document
3638         (gtk_get_event_widget): document
3639
3640         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3641
3642         * gtk/gtkcontainer.c: Add some documentation
3643         (gtk_container_add): give a more explanatory warning on adding an
3644         already-parented widget, this is kind of a FAQ and also a common
3645         typo that's easier to debug with a nice warning 
3646
3647         * gtk/gtkcellrenderertoggle.c
3648         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3649         adding this, it's useless
3650         (gtk_cell_renderer_toggle_set_active): remove
3651         (gtk_cell_renderer_toggle_get_radio): add
3652
3653         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3654         the NULL cell renderer, that doesn't make any sense to me. 
3655
3656         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3657         demo code should never use deprecated features.
3658
3659         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3660         code should never use deprecated features.
3661
3662         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3663         gtk_widget_queue_clear_area deprecated
3664
3665         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3666         deprecated
3667
3668         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3669
3670         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3671         a GdkImage deprecated, replaced by new consistently-named
3672         functions       
3673
3674         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3675
3676         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3677
3678         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3679         deprecated
3680
3681         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3682         so it won't appear in docs and confuse people.
3683
3684         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3685
3686         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3687         macros deprecated. (can't mark the type itself deprecated, since
3688         GtkProgressBar is not deprecated and we need the type decl to use
3689         GtkProgressBar)
3690
3691         * gtk/gtkpixmap.h: Mark deprecated
3692
3693         * gtk/gtkoldeditable.h: Mark deprecated
3694
3695         * gtk/gtklist.h: Mark deprecated
3696
3697         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3698         for anything anymore.
3699
3700         * gtk/gtkctree.h: Mark deprecated
3701
3702         * gtk/gtkclist.h: Mark deprecated
3703
3704         * gtk/gtkpreview.h: Mark deprecated
3705
3706         * gtk/gtkpacker.h: Mark deprecated
3707
3708         * gtk/gtktipsquery.h: Mark deprecated
3709
3710         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3711
3712         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3713
3714         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3715
3716         * gtk/gtkruler.h: Add comment that it will move out of GTK
3717
3718         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3719
3720         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3721
3722 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3723
3724         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3725         gdk_colormap_sync private since it was never exported
3726         in a header file.
3727
3728         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3729         colormap->colors[] for StaticGray, StaticColor colormaps.
3730
3731         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3732         was being used as if it was image->bits_per_pixel.
3733
3734         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3735         for the image in the GdkImage structure since it isn't
3736         reconstructable, and we need it to handle packed types
3737
3738         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3739         the assumption that on Win32 image->bits_per_pixel == image->depth,
3740         always.
3741
3742         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3743
3744         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3745         warning message if no converter can be found. 
3746
3747 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3748
3749         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3750         chars to isupper() / tolower(). (#567)
3751
3752         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3753         to clear up 64-bit warnings. (#567)
3754
3755 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3756
3757         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3758         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3759
3760         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3761         since some people set $(libdir) separately. (#1290, David Kaelbling)
3762
3763 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3764
3765         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3766         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3767         MAXPATHLEN, but the code here depends on a fixed value.)
3768         (#4524)
3769
3770 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3771
3772         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3773         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3774
3775 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3776
3777         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3778         viewable there is no way that moving the node will cause the 
3779         focus row to become not viewable, so omit check on the visibility
3780         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3781
3782 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3783
3784         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3785         selection before inserting new text.
3786
3787 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3788
3789         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3790         Make the sensitivity of the reparented child track that of
3791         the original parent menu item. (#34218, David Hodson)
3792
3793         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3794         the case where the current item is destroyed properly.
3795
3796         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3797         some edge cases with child-less menuitems.
3798         
3799 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3800
3801         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3802         key pop down window. (#12074, Jon K Hellan)
3803
3804 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3805
3806         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3807         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3808         The solution here isn't perfect - you get an extraneous
3809         emission of "toggle", which could conceivably confuse an app,
3810         but better than the current situation. LXR search seems to
3811         indicate that no apps in GNOME CVS connect to "toggle".
3812
3813 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3814
3815         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3816         gtk_public_h_sources to directly here to avoid warning when
3817         building srcdir != builddir. (#9656)
3818
3819 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3820
3821         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3822         handlers in gtkrange.c return the proper values (TRUE == handled)
3823         (#10316).
3824
3825         This is just the tip of the iceberg, but gtkrange.c is the
3826         most common place where the propagation is problematical,
3827         and also a place where it is almost certainly safe to change
3828         this in the stable branch.
3829
3830         (You don't want right click popups on a range control or anything...)
3831
3832 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3833
3834         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3835         area on focus out, even if a background pixmap isn't set.
3836         (#13941)
3837         
3838 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3839
3840         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3841         to deal with setting the shape properly when scrolling arrows are
3842         turned on, but not visible because there is sufficient space.
3843         (#13432)
3844
3845 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3846
3847         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3848         items with submenus, destroy the item along with the submenu.
3849         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3850         properly.
3851
3852         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3853         later.
3854
3855 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3856
3857         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3858         the focus widget sometimes wasn't drawn with the default if there
3859         was no default widget.
3860
3861         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3862         unreference pixmaps. 
3863
3864         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3865         for some extra safety.
3866
3867 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3868
3869         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3870         the text of a cell to the old pointer value better, by
3871         copying the new text before freeing the old text. Some code
3872         cleanup. (#8079, Karl Nelson)
3873
3874 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3875
3876         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3877         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3878
3879 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3880
3881         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3882         item from a menu, check to see if it matches 
3883         menu->old_active_menu_item, and if so, unref and clear
3884         old_active_menu_item (Patch from Pavel Cisler)
3885
3886         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3887         menu_shell->active_menu_item, if it is the child being
3888         removed. (Patch based on that of Gene Ragan, #50337)
3889
3890 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3891
3892         * gdk/linux-fb/gdkselection-fb.c: 
3893         * gdk/linux-fb/gdkcolor-fb.c: 
3894         * gdk/linux-fb/gdkdrawable-fb2.c: 
3895         * gdk/linux-fb/gdkfont-fb.c: 
3896         * gdk/linux-fb/gdkim-fb.c: 
3897         * gdk/linux-fb/gdkinput.c: 
3898         * gdk/linux-fb/gdkkeyboard-fb.c: 
3899         * gdk/linux-fb/gdkmain-fb.c: 
3900         * gdk/linux-fb/gdkrender-fb.c: 
3901         A bunch of whitespace cleanup.
3902         
3903 2001-01-30  Havoc Pennington  <hp@pobox.com>
3904
3905         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3906         #ifdef GTK_ENABLE_BROKEN.
3907
3908         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3909         GTK_ENABLE_BROKEN just before including the broken headers.
3910         
3911         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3912         deprecated types registered.
3913
3914         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3915         we have to test the broken stuff.
3916
3917         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3918         
3919 2001-01-30  Havoc Pennington  <hp@redhat.com>
3920
3921         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3922         here where prev pointer was set to the wrong thing
3923
3924         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3925         (gtk_tree_path_is_descendant): new function
3926
3927         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3928         cached length
3929         (gtk_list_store_get_iter): don't modify iter if we can't get the
3930         path.
3931
3932         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3933         
3934         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3935         GtkTreeDragDest
3936
3937         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3938         was causing segfault
3939
3940         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3941         pointer to NULL
3942
3943         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3944
3945         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3946         on returning FALSE
3947         (gtk_list_store_iter_children): ditto
3948         (gtk_list_store_iter_nth_child): ditto
3949         (gtk_list_store_iter_nth_child): ditto
3950         (gtk_list_store_iter_parent): ditto
3951
3952         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3953         on iter->user_data != NULL instead of silently accepting it.
3954         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3955         we are returning TRUE.
3956         (gtk_tree_store_iter_children): ditto
3957         (gtk_tree_store_iter_nth_child): ditto
3958         (gtk_tree_store_iter_parent): ditto
3959         (gtk_tree_store_insert): remove handling of parent->user_data ==
3960         NULL, replace with parent == NULL       
3961
3962         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3963         and a comment explaining things
3964
3965         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3966         interface support to GtkTreeStore.
3967
3968         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3969         FALSE if no prev, fix
3970
3971         * gtk/gtktreeview.c (set_source_row): use a row reference
3972         (set_dest_row): use a row reference
3973
3974 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3975
3976         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3977         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3978         (gtk_tree_selection_select_iter): The same as above.
3979
3980 2001-01-26  Havoc Pennington  <hp@redhat.com>
3981
3982         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3983         which holds a handle to a specific row (particular set of values
3984         in the model, i.e. pointer-identity row).
3985
3986         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3987         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3988         Still need to use it for the src/dest row saved on the drag context.
3989
3990 2001-01-26  Havoc Pennington  <hp@redhat.com>
3991
3992         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3993
3994         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3995         not offset by TREE_VIEW_HEADER_HEIGHT
3996         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3997         TREE_VIEW_HEADER_HEIGHT
3998
3999         * configure.in (included_loaders): for me, --with-included-loaders
4000         generates the error "the specified loader yes does not exist",
4001         i.e. the arg defaults to "yes", so change test for value ""
4002         to test for value "yes", and include all loaders in that case.
4003
4004         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4005
4006         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4007         handle TREE_VIEW_VERTICAL_SEPARATOR
4008         (gtk_tree_view_bin_expose): fix to consider the row offset as
4009         pointing halfway into vertical separator.       
4010         (gtk_tree_view_draw_node_focus_rect): ditto
4011
4012         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4013         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4014         (TRUE) to be called.
4015
4016         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4017         debug mode where the invalid region is colored in on invalidate,
4018         so you can see the flicker and know whether your redraw code is 
4019         doing a good job.
4020
4021         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4022         tree window coordinates (clip rect is in tree window coords)
4023
4024         * gtk/Makefile.am: add gtktreednd.[hc]
4025
4026         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4027
4028         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4029         drag-and-drop data operations on a model (so we can set up tree
4030         drag-and-drop automatically)
4031
4032         * gtk/testgtk.c: Add a window to change sensitivity in the
4033         GtkLabel test; add a way to change the entry frame in GtkEntry
4034         test
4035
4036         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4037         (gtk_entry_get_has_frame): new functions to remove the frame
4038         around an entry
4039         (gtk_entry_size_request): shrink requisition if no frame
4040         (gtk_entry_draw_focus): don't draw frame if no frame
4041
4042         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4043         checks inside a cell renderer
4044         (gtk_default_draw_option): ditto for options
4045
4046         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4047         children from the alignment, not the button
4048         (gtk_tree_view_column_init): ref/sink the column, to emulate
4049         GObject refcounting.
4050
4051         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4052         
4053         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4054         Use theme functions to draw the toggles 
4055
4056         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4057
4058         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4059         GdkPangoAttrEmbossed to use in rendering insensitive text
4060
4061         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4062
4063         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4064         using new GDK features
4065         
4066 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4067
4068         * gtk/gtkimage.c:
4069         Splitted gtk_image_clear into gtk_image_clear() and
4070         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4071         to avoid leaks.
4072
4073         * gtk/gtklabel.c (set_markup):
4074         Don't leak text.
4075
4076         * gtk/gtktextlayout.c:
4077         Always free display->shaped_objects.
4078
4079         * gtk/testgtk.c (create_clist):
4080         Don't leak custom style.
4081
4082 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4083
4084         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4085         Don't leak image. Simplify using gdk_colormap_query_color().
4086         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4087
4088         * linux-fb/gdkcolor-fb.c:
4089         Implemented gdk_colormap_query_color.
4090
4091 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4092
4093         * linux-fb/gdkcursor-fb.c:
4094         Don't leak built-in cursors.
4095
4096         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4097         Don't leak tmp_points.
4098
4099         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4100         Don't modify desc. Don't leak font if the PangoFont
4101         isn't found.
4102         
4103         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4104         Free dash_list.
4105
4106         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4107         Don't leak string.
4108         
4109 2001-01-20  Havoc Pennington  <hp@pobox.com>
4110
4111         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4112         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4113         me, matches Pango
4114
4115 2001-01-22  Havoc Pennington  <hp@redhat.com>
4116
4117         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4118
4119         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4120
4121         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4122         Remove, move back to gdk-pixbuf
4123
4124         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4125         to all the word functions
4126
4127         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4128         before doing anything on NULL layout or if we don't have the focus
4129
4130         * gtk/testtext.c (fill_example_buffer): "justification"
4131
4132         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4133         to be called "justification" not "justify"
4134
4135         * demos/gtk-demo/textview.c (create_tags): "justification"
4136         
4137         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4138
4139 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4140
4141         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4142         Don't leak visible_region. Use visible_region instead of region.
4143         
4144         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4145         Don't do extra gdk_drawable_ref(). This is not X.
4146         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4147         gdk_fb_focused_window is ref:ed.
4148         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4149         windows.
4150
4151 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4152
4153         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4154         Don't leak the PangoFontDescriptor.
4155
4156 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4157
4158         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4159         when not realized.
4160         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4161         (gtk_tree_view_realize): add scroll_to support
4162         (gtk_tree_view_finalize): add a finalize method.  Populate.
4163         (gtk_tree_view_insert_column): ref and sink the column.
4164         (gtk_tree_view_append_column): ref and sink the column.
4165         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4166         individual nodes.  Should make the code much more efficient, if
4167         actually used.
4168
4169 2001-01-19  Havoc Pennington  <hp@redhat.com>
4170
4171         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4172         byte_offset variable was being used to mean both "offset into
4173         layout" and "offset into buffer line" which was no longer true
4174         with addition of preedit string; fix
4175
4176 2001-01-19  Havoc Pennington  <hp@redhat.com>
4177
4178         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4179
4180         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4181         function
4182
4183         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4184         implement
4185
4186         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4187         scroll_to_cell, matches TextView scroll functions better
4188         (gtk_tree_view_tree_to_widget_coords): new function
4189         (gtk_tree_view_widget_to_tree_coords): new function
4190         (gtk_tree_view_get_visible_rect): new function
4191         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4192         (gtk_tree_view_draw_node_focus_rect): new function moved from
4193         draw_focus, also, use width of bin_window as width of the focus
4194         rect
4195         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4196         already-expanded rows
4197         (gtk_tree_view_get_cell_rect): new function
4198         (gtk_tree_view_get_path_at_pos): return the click position
4199         relative to the passed-in cell
4200         (gtk_tree_view_set_expander_column): new function
4201
4202         * configure.in: remove gtk-config-2.0 chmod
4203
4204         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4205         and properly handle drags with targets we don't understand
4206         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4207         scrolling anyway
4208         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4209         mark invisible
4210
4211         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4212         function
4213         (gtk_drag_dest_get_target_list): new function
4214         (gtk_drag_dest_set_target_list): new function
4215         
4216         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4217
4218         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4219         related to drag-and-drop
4220
4221 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4222
4223         * gdk/linux-fb/gdkprivate-fb.h:
4224         Define EMULATE_GDKFONT.
4225         Add extra pango_font stuff to GfkFontPrivate.
4226         
4227         * gdk/linux-fb/gdkdrawable-fb2.c:
4228         * gdk/linux-fb/gdkfont-fb.c:
4229         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4230         emulation using PangoFont.
4231
4232 2001-01-17  Havoc Pennington  <hp@pobox.com>
4233
4234         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4235         all the non-deprecated set_foo functions. Added missing object
4236         properties, and added g_object_notify() to setters. 
4237         Wrote docs.
4238         
4239 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4240
4241         * gtk/gtkmain.c
4242         * gtk/gtkrc.c: (Win32) Use the new
4243         g_win32_get_package_installation_(sub)directory() functions.
4244
4245         * config.h.win32.in: New file.
4246         
4247         * config.h.win32: Removed.
4248
4249         * configure.in: Output config.h.win32.
4250
4251         * Makefile.am: Add it to EXTRA_DIST.
4252
4253         * gtk/gtk.def: Update.
4254
4255 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4256
4257         * gtk/gtklabel.c (gtk_label_size_request): Set the
4258         attributes onto the PangoLayout even if they are newly
4259         created from label->pattern.
4260
4261 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4262
4263         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4264
4265         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4266         structures in functions. Fixes bug where gtk_dataset_*
4267         was accidentally still being used in one place, causing
4268         every dest side event to be treated independently.
4269
4270         * gtk/gtkdnd.c: Remove last vestages of handling
4271         ::draw (fixes warning)
4272         
4273         * gtk/gtkentry.[ch]: Add drag and drop support.
4274
4275         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4276         new function gtk_check_drag_threshhold() for checking
4277         to check if (dx,dy) has exceeded the threshhold for starting
4278         a drag and use it everywhere.
4279
4280 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4281
4282         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4283         add -I{includedir}/gtk-2.0.
4284
4285         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4286         gdk/gdk-pixbuf.h: Doc fixups.
4287         
4288         * gtk/gtkobject.h: Remove trailing , from enum
4289
4290 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4291
4292         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4293         Doh! Mixed up x and y.
4294
4295         * gdk/linux-fb/gdkglobals-fb.c:
4296         Removed gdk_fb_pointer_grab_window_events,
4297         added _gdk_fb_pointer_grab_owner_events and
4298         _gdk_fb_keyboard_grab_owner_events.
4299
4300         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4301         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4302         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4303         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4304         Send crossing events after ungrab finished.
4305         (gdk_keyboard_grab): Set ..._owner_events
4306         (type_masks): Move out of function.
4307         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4308         gdk_fb_keyboard_event_window): New functions, return the
4309         window an event should be targeted at. Handles grabs and
4310         event propagation. Can return NULL.
4311         (gdk_event_make): Remove event_mask checking. Now always
4312         returns an event.
4313                 
4314         * gdk/linux-fb/gdkkeyboard-fb.c:
4315         * gdk/linux-fb/gdkproperty-fb.c:
4316         * gdk/linux-fb/gdkselection-fb.c:
4317         Use new event_window/gdk_event_make() behaviour.
4318         
4319         * gdk/linux-fb/gdkmouse-fb.c:
4320         Use new event_window/gdk_event_make() behaviour.
4321         Only send motion events if in the same window.
4322         If grabbed, use cursor from window if sibling of grabbed
4323         window, and cursor from grabbed window otherwise.
4324
4325         * gdk/linux-fb/gdkprivate-fb.h:
4326         Update gdk_fb_window_send_crossing_events, gdk_event_make
4327         and grab varaible declarations. Add gdk_fb_*_event_window().
4328
4329         * gdk/linux-fb/gdkwindow-fb.c:
4330         Use new event_window/gdk_event_make() behaviour.
4331         Keep correct track of focus window.
4332         (gdk_window_set_events): Set all specific button motion masks
4333         if GDK_BUTTON_MOTION_MASK set.
4334
4335         * gtk/gtkdnd.c (gtk_drag_update):
4336         Free info->last_event if gdk_drag_motion returned FALSE.
4337
4338 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4339
4340         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4341         Eliminate redraws when input-only windows are shown or
4342         hidden. Thanks to jpe@archaeopteryx.com.
4343
4344 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4345
4346         * docs/faq/gtk-faq.sgml: FAQ update:
4347           - Update to bugzilla
4348           - Add GTK+ and security/SUID/SGID
4349           - Add DnD question
4350
4351 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4352
4353         * gdk/linux-fb/gdkdnd-fb.c:
4354         Some cleanups.
4355         
4356 2001-01-15  Havoc Pennington  <hp@pobox.com>
4357
4358         * tests/testtreeview.c: add test stuff for CellRendererToggle
4359
4360         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4361         accessor
4362
4363         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4364         only toggle on button press (would do release like GtkButton, but
4365         we'd need implicit grab code for treeview cells)
4366
4367 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4368
4369         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4370
4371         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4372         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4373
4374         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4375         to g_{locale,filename}_{to,from}_utf8 to match current API.
4376
4377         * gtk/makefile.msc.in (gtk_OBJECTS)
4378         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4379
4380         * gtk/gtk.def: Update.
4381
4382 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4383
4384         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4385         implementaion that more closely mimics the events that an X server
4386         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4387         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4388         with nested preview widgets, for instance, more responsive when
4389         you move the mouse quickly into them.
4390         (find_window_for_pointer_event): Make it actually compile.
4391         (gdk_event_translate): Set send_event to the value of
4392         InSendMessage (). This doesn't really mean the same as X11's
4393         send_event flag, but is close enough, says jpe@archaeopteryx.com
4394
4395 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4396
4397         * gdk/linux-fb/gdkdnd-fb.c:
4398         Implemented drag and drop.
4399         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4400         when it tries to free and then copy the same event (info->last_event).
4401         I am not sure about why this happens, but will continue looking.
4402
4403 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4404
4405         * gdk/linux-fb/gdkwindow-fb.c:
4406         Use gdk_window_invalidate_rect instead of
4407         gdk_window_invalidate_rect_clear to minimise flashing.
4408         When hiding windows you need to clear the root window though.
4409
4410 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4411
4412         * gdk/linux-fb/gdkdrawable-fb2.c:
4413         For optization, add an full_shapes argument to gdk_fb_clip_region.
4414         If this is false, only the cliprects of the shapes are used.
4415
4416         * gdk/linux-fb/gdkprivate-fb.h:
4417         Export gdk_fb_window_peek_shape.
4418         Add full_shapes to gdk_fb_clip_region.
4419
4420         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4421         When moving a window, don't clear everything under the it, just the
4422         root window. Makes stuff faster and flash less.
4423         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4424         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4425         offset of the shape.
4426         
4427
4428 2001-01-12  Havoc Pennington  <hp@redhat.com>
4429
4430         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4431         current invalid region, fixes redraw bug while scrolling the 
4432         text widget
4433
4434         * gtk/gtktextview.c, gtk/gtktextview.h:
4435         Rearrange the scrolling/validation/etc. code in a major way, 
4436         so it seems to make sense to me. Probably isn't genuinely that
4437         much better, but...
4438
4439         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4440         notifies
4441
4442         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4443
4444 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4445
4446         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4447         Hide mouse pointer while rotation. Show it afterwards.
4448
4449 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4450
4451         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4452         windows in consideration when generating clip region.
4453
4454         * gdk/linux-fb/gdkfb.h:
4455         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4456
4457         * gdk/linux-fb/gdkprivate-fb.h:
4458         Add shape to GdkWindowFBDatat.
4459         exported gdk_fb_window_get_abs_shape().
4460         removed gdk_fb_draw_lines declaration.
4461
4462         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4463         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4464         send focus changes when there is a grabbed window.
4465         (gdk_window_get_pointer): Handle shaped windows.
4466         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4467         (gdk_fb_window_peek_shape): Returns the shape for a window,
4468         handles GDK_FB_USE_CHILD_SHAPE.
4469         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4470         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4471         (gdk_window_shape_combine_mask): Implement.
4472
4473         * gtk/gtkwindow-decorate.c:
4474         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4475         setting the shape of a window makes the window transparent.
4476
4477 2001-01-11  Havoc Pennington  <hp@redhat.com>
4478
4479         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4480
4481 2001-01-10  Havoc Pennington  <hp@redhat.com>
4482
4483         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4484         add this function, bug 40251
4485
4486         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4487         of type macro   
4488
4489 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4490
4491         * acconfig.h:
4492         Added ENABLE_SHADOW_FB
4493
4494         * configure.in:
4495         Added --disable-shadowfb
4496
4497         * gdk/linux-fb/gdkcursor-fb.c:
4498         Update shadowfb when updating cursor
4499
4500         * gdk/linux-fb/gdkdrawable-fb2.c:
4501         Added wrappers for shadowfb that calls  the normal drawable
4502         methods, but calls gdk_shadow_fb_update(bounding box) when
4503         GdkWindows are drawed to.
4504         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4505         which also returns the bounding box.
4506
4507         * gdk/linux-fb/gdkfb.h:
4508         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4509
4510         * gdk/linux-fb/gdkgeometry-fb.c:
4511         Update shadowfb when scrolling window.
4512
4513         * gdk/linux-fb/gdkglobals-fb.c:
4514         Add _gdk_fb_screen_angle.
4515         
4516         * gdk/linux-fb/gdkkeyboard-fb.c:
4517         Test code for screen rotation. Shift-F2 in the xlate driver
4518         rotates the screen.
4519
4520         * gdk/linux-fb/gdkmain-fb.c:
4521         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4522
4523         * gdk/linux-fb/gdkmouse-fb.c:
4524         Use fb_width/height instead of modeinfo.xres/yres.
4525
4526         * gdk/linux-fb/gdkprivate-fb.h:
4527         Added fb_men, fb_width, fb_height & fb_stride. When using
4528         shadow fb these can differ from the framebuffer stuff.
4529         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4530         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4531         _gdk_fb_screen_angle. Removed CM, RP.
4532
4533         * gdk/linux-fb/gdkrender-fb.c:
4534         Added code for shadowfb handling and screen rotation using
4535         shadowfb.
4536
4537         * gdk/linux-fb/gdkwindow-fb.c:
4538         Use fb_mem, fb_stride, fb_width, fb_height.
4539         Added recompute_rowstride to reset the rowstride of all windows.
4540         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4541         window abs positions and window rowstrides. Usefull when the
4542         rotation has changed.
4543
4544 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4545
4546         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4547
4548 2001-01-10  Havoc Pennington  <hp@redhat.com>
4549
4550         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4551         where sibling == iter
4552         (gtk_tree_store_insert_after): handle sibling == iter
4553         (gtk_tree_store_prepend): remove stamp checks
4554         (gtk_tree_store_insert_before): ditto
4555         (gtk_tree_store_append): ditto
4556         (gtk_tree_store_get_path): ditto
4557         (gtk_tree_store_get_value): ditto
4558         (gtk_tree_store_iter_has_child): ditto
4559         (gtk_tree_store_iter_n_children): ditto
4560         (gtk_tree_store_iter_nth_child): ditto
4561         (gtk_tree_store_insert_after): ditto
4562         (gtk_tree_store_is_ancestor): ditto
4563         (gtk_tree_store_iter_depth): ditto
4564         (gtk_tree_store_insert_before): assert that sibling's parent is
4565         the same as the passed-in parent
4566         (gtk_tree_store_insert_after): assert that sibling's parent is
4567         the same as the passed-in parent
4568
4569         
4570         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4571         function to get the first iterator in a model
4572         
4573         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4574         conventionally the "root" in this sense is just NULL afaict.
4575
4576         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4577         where sibling == iter
4578         (gtk_list_store_insert_after): handle case where sibling == iter
4579
4580         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4581         automated tests for ListStore, TreeStore
4582
4583         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4584         (gtk_list_store_insert): update tail pointer, and fix it to work
4585         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4586         (gtk_list_store_append): use tail to be faster
4587         (gtk_list_store_prepend): fix it, update tail pointer
4588         (gtk_list_store_insert_after): fix it, update tail pointer
4589
4590         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4591         the list
4592
4593 2001-01-09  Havoc Pennington  <hp@redhat.com>
4594
4595         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4596         is NULL due to a pending resize
4597
4598         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4599         column width to values less than 1
4600
4601         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4602         width to be between min/max width, and still set the width 
4603         even if autosize is turned on, so the tree view can use this 
4604         function in order to autosize.
4605         (gtk_tree_view_column_init): set initial width to 1 not 0
4606
4607         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4608         setter function to modify column width, so we get notification
4609         (gtk_tree_view_insert_iter_height): ditto
4610         (gtk_tree_view_calc_size): ditto
4611         (gtk_tree_view_check_dirty): ditto
4612
4613         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4614         properties to change all the interesting attributes of the tree
4615         view column.
4616         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4617         (gtk_tree_view_column_get_clickable): add
4618         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4619         attributes; assume a cell renderer with equivalent object
4620         properties has been swapped in. Do g_object_notify().
4621         (gtk_tree_view_column_set_visible): g_object_notify
4622         (gtk_tree_view_column_get_sizing): rename from get_col_type
4623         (gtk_tree_view_column_set_sizing): g_object_notify
4624         (gtk_tree_view_column_set_width): add g_object_notify
4625         (gtk_tree_view_column_set_min_width): ditto
4626         (gtk_tree_view_column_set_max_width): ditto
4627         (gtk_tree_view_column_set_title): ditto
4628         (gtk_tree_view_column_set_clickable): ditto
4629         (gtk_tree_view_column_set_widget): ditto
4630         (gtk_tree_view_column_set_justification): ditto
4631
4632 2001-01-09  Havoc Pennington  <hp@redhat.com>
4633
4634         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4635         there are no rows in the model
4636
4637         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4638         NULL, then return the start of the list
4639
4640         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4641         if we can't get any rows from an empty model 
4642
4643         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4644         extraneous * after function pointer typedef usage
4645
4646         * Makefile.am: don't specify full path to cp and rm
4647
4648         * gtk/gtkcellrenderertextpixbuf.c
4649         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4650         NULL before dereferencing, fixes a segfault that happened from
4651         time to time
4652
4653         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4654         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4655         and reindent the function
4656         (gtk_cell_renderer_pixbuf_get_size): indentation
4657
4658         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4659         we quit it
4660         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4661         (gtk_dialog_set_default_response): New function, to set default
4662         button
4663         (gtk_dialog_set_response_sensitive): New function, to set 
4664         sensitivity of buttons
4665
4666         * gtk/gtkcellrendererpixbuf.c
4667         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4668         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4669
4670         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4671         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4672         also boxed types.
4673         (_gtk_tree_data_list_value_to_node): ditto
4674
4675         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4676         --gtk-debug=tree
4677
4678         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4679
4680         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4681
4682 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4683
4684         * gdk/win32/gdkevents-win32.c: Implement better mouse
4685         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4686         (find_window_for_pointer_event): New function.
4687         (gdk_event_translate): Use it when handling mouse events.
4688
4689 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4690
4691         * configure.in:
4692         Added --with-included-loaders option
4693
4694         * gdk-pixbuf/Makefile.am:
4695         * gdk-pixbuf/gdk-pixbuf-io.c:
4696         Add support for including selected gdk-pixbuf loaders only.
4697
4698         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4699         gtk_window_set_has_frame):
4700         Added inline documentation.
4701
4702         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4703         * docs/reference/gdk/tmpl/windows.sgml:
4704         Added inline documentation.
4705
4706 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4707
4708         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4709         realizing buttons that have already been realized.
4710
4711 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4712
4713         * tests/testtreeview.c (main): Show menu items before adding to
4714         option menu.
4715
4716         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4717         around if we kill them.
4718
4719         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4720         Return if we pass in a NULL model.
4721
4722 2001-01-08  Havoc Pennington  <hp@redhat.com>
4723
4724         * tests/testtreeview.c: hack on this some
4725
4726         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4727         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4728         list
4729         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4730
4731         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4732         functions
4733
4734 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4735
4736         * gtk/gtkwindow-decorate.[hc]:
4737         * gtk/Makefile.am:
4738         New files. Contains an implementation of a minimal WM for
4739         linux-fb.
4740
4741         * gtk/gtkwindow.h:
4742         Add the possibility for GtkWindows to specify a frame. This
4743         is used for the window decoration code, but could concievably
4744         be used for X programs too (xmms style windows).
4745         GtkWindow->frame is the toplevel window if the window is framed.
4746         The signal frame_event gets all events that are targeted to
4747         GtkWindow->frame.
4748         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4749         
4750         * gtk/gtkwindow.c:
4751         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4752         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4753
4754 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4755
4756         * docs/README.linux-fb:
4757         Correct filename ~/.pangoft2_aliases
4758
4759         * gdk/gdkwindow.h:
4760         Added new function gdk_window_get_decorations.
4761
4762         * gdk/linux-fb/gdkfb.h:
4763         Removed _gdk_window_get_decorations declaration.
4764         Renamed _gdk_window_set_child_handler to
4765         gdk_fb_window_set_child_handler.
4766
4767         * gdk/linux-fb/gdkwindow-fb.c:
4768         Renamed _gdk_window_set_child_handler to
4769         gdk_fb_window_set_child_handler.
4770
4771         * gdk/x11/gdkwindow-x11.c:
4772         New function gdk_window_get_mwm_hints().
4773         Implemented gdk_window_get_decorations.
4774
4775         * docs/reference/gdk/tmpl/windows.sgml:
4776         * docs/reference/gdk/gdk-sections.txt:
4777         Added gdk_window_get_decorations docs.
4778         
4779 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4780
4781         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4782         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4783         gdk_fb_window_send_crossing_events):
4784         Possibly send focus events when the mouse moves from one
4785         window to another.
4786
4787 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4788
4789         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4790         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4791         to match current API.
4792
4793         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4794         environment variable is set, don't call g_error when on a
4795         palettized (PseudoColor) display. Some people want to use GTK+ 
4796         in 256-colour mode even though works only partially.
4797
4798         * gdk/gdk.def
4799         * gtk/gtk.def
4800         * gtk/makefile.mingw.in: Update.
4801
4802 2001-01-05  Havoc Pennington  <hp@redhat.com>
4803
4804         * tests/testtreeview.c: hack on this a bit
4805
4806         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4807         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4808
4809         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4810         was spelled incorrectly
4811         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4812
4813         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4814         from gtk_tree_view_set_headers_active   
4815
4816         * gtk/gtktexttag.c:
4817         (gtk_text_tag_get_property): handle PROP_DIRECTION
4818         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4819         properties, bug 40235
4820
4821         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4822         forward_to_line_end
4823
4824 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4825
4826         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4827         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4828         for unicode,locale,filename conversion functions.
4829
4830 2001-01-05  Havoc Pennington  <hp@redhat.com>
4831
4832         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4833         broken if called on the first position in the buffer.
4834
4835         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4836         forward_to_delimiters to be called only if we aren't already at
4837         the delimiters.
4838
4839 2001-01-05  Havoc Pennington  <hp@redhat.com>
4840
4841         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4842
4843 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4844
4845         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4846         colormap in here. Sync from X port.
4847         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4848         Sync from X port.
4849         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4850         This happens now and then, and i don't think it is a bug.
4851         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4852         != endpoint.
4853         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4854         GDK_LINE_SOLID.
4855
4856         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4857         some of the fields filled in at least.
4858
4859         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4860         miLineArcD is no more, remove it from the function definition.
4861
4862 2001-01-04  Havoc Pennington  <hp@redhat.com>
4863
4864         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4865         this
4866
4867         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4868         user_data instead of tree_node
4869
4870         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4871         TREE_VIEW_COLUMN_SIZE
4872
4873         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4874         "size" field to "width" finishes bug 40061
4875
4876         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4877         for bitfields, bug 40268
4878
4879 2001-01-04  Havoc Pennington  <hp@redhat.com>
4880
4881         Rename some stuff:
4882         
4883         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4884
4885         s/GtkModelSimple/GtkTreeModelSimple/g;
4886         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4887         s/gtk_model_simple/gtk_tree_model_simple/g;
4888         s/gtkmodelsimple/gtktreemodelsimple/g;
4889
4890         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4891
4892         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4893         s/column_set_col_type/column_set_sizing/g;
4894
4895         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4896         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4897
4898         s/GtkCellRendererType/GtkCellRendererState/g;
4899         
4900         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4901         (gtk_cell_renderer_toggle_class_init): change "state" property to
4902         "active", to match GtkToggleButton
4903         (gtk_cell_renderer_toggle_get_active): new function, bug
4904         40269
4905         (gtk_cell_renderer_toggle_set_active): new function
4906         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4907         state through gtk_cell_renderer_set_active
4908
4909 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4910
4911         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4912         temporarily until they work again.  Brought up to date with
4913         changes in the model.
4914         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4915         model.
4916
4917 2001-01-04  Havoc Pennington  <hp@redhat.com>
4918
4919         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4920         equal to the line length, then position iterator before paragraph 
4921         separators. Fixes crash reported by Mikael Hermansson when
4922         pressing left arrow from the start of a line.   
4923
4924         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4925         about byte indexes off the end
4926         (iter_set_from_char_offset): add g_error about char offsets
4927         off the end
4928
4929 2001-01-03  Havoc Pennington  <hp@redhat.com>
4930
4931         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4932
4933         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4934         of private functions; remove inclusion of private headers.
4935
4936         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4937         function, so we don't need private functions in gtktextdisplay.c
4938
4939         * gtk/gtktextiterprivate.h: underscore-ification
4940
4941         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4942         to instead say "only useful to implement widgets"
4943
4944         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4945         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4946         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4947
4948         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4949         This function was completely broken
4950
4951         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4952
4953         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4954
4955         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4956
4957         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4958
4959         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4960
4961         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4962
4963         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4964         gtk_paint_layout
4965
4966         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4967         gtk_paint_layout
4968
4969         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4970         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4971         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4972         which were not implemented.     
4973
4974         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4975         insert_pixbuf signal. Rename delete_text to delete_range since it
4976         also deletes pixbufs and child anchors. This almost closes bug
4977         40245 (still need to deal with child anchors)
4978
4979         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4980         insert_pixbuf, change signal names as appropriate, change types of
4981         signals taking marks/tags to have the specific type, not just
4982         G_TYPE_OBJECT
4983         
4984         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4985         closes bug 40051
4986
4987         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4988         unnecessary remove_contents() call
4989         (gtk_option_menu_class_init): add a "changed" signal, closes
4990         bug 40039
4991         (gtk_option_menu_update_contents): emit "changed" if the 
4992         active menu item changes
4993
4994         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4995         cast to GtkObject, reported by Jonas Borgstrom
4996         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4997         we can't do stuff with side effects in finalize. Instead, spew a
4998         warning if the loader isn't closed.
4999
5000         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5001         colormap in here, non-X ports probably need to sync to this change
5002
5003         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5004         assertion that colormap != NULL, you can set the colormap to NULL
5005         if you like.
5006         
5007         * Makefile.am: remove gtk-config-2.0
5008
5009         * configure.in: Use pkg-config to locate GLib. Remove
5010         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5011         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5012         Use pkg-config to locate Pango. Output correct Pango libs to
5013         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5014
5015         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5016         files
5017         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5018         X11 pc files
5019
5020         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5021         unref from here
5022
5023 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5024
5025         * configure.in:
5026         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5027
5028 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5029
5030         * gtk/gtktextlayout.c
5031         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5032         variable when moving back onto a single line.
5033
5034 2001-01-01  Havoc Pennington  <hp@redhat.com>
5035
5036         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5037
5038         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5039
5040         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5041         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5042
5043 2001-01-01  Havoc Pennington  <hp@redhat.com>
5044
5045         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5046
5047         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5048         GtkTextAttributes
5049
5050         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5051         #40246
5052         (gtk_text_attributes_copy_values): rename from 
5053         gtk_text_attributes_copy
5054         (gtk_text_attributes_copy): a more standard GTK copy function, 
5055         which returns a new object
5056
5057 2001-01-01  Havoc Pennington  <hp@redhat.com>
5058
5059         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5060         
5061         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5062         don't fill in tree_view->priv->selection, kind of an unexpected
5063         side effect
5064
5065         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5066         gtkintl.h
5067         
5068         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5069         gtkintl.h
5070         (gtk_cell_renderer_get_property): remove calls to g_value_init
5071
5072         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5073         gtkintl.h
5074
5075         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5076         and include gtkintl.h
5077         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5078         property names
5079
5080         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5081         GtkTreeSelection
5082         (_gtk_tree_selection_new_from_with_view): rename, return
5083         GtkTreeSelection
5084         (_gtk_tree_selection_set_tree_view): rename with uscore
5085         (gtk_tree_selection_get_selected): fill in the "model" out param
5086         first, so it gets filled in even if we return at the top of the 
5087         function
5088         (gtk_tree_selection_real_select_all): add a comment and an else{}
5089         to clarify this a bit
5090         (gtk_tree_selection_real_unselect_all): add the same else{}
5091
5092         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5093         set_tree_view to have underscore prefixes, move them to the
5094         private header, fix return type of new_with_tree_view
5095         (struct _GtkTreeSelection): mark struct
5096         fields private  
5097
5098         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5099         GtkTreeModelFlags, not a guint
5100         (gtk_tree_path_prev): return gboolean not gint
5101         (gtk_tree_path_up): return gboolean not gint
5102
5103         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5104         return GtkTreeModelFlags, not a guint
5105
5106         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5107         that child model is non-null before unrefing it
5108         (g_value_int_compare_func): make this a qsort compare func, not 
5109         a boolean predicate
5110
5111         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5112         (add -umn to the end), and mark it unimplemented
5113         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5114         I don't see what it's for - doesn't the model always sort itself?
5115         (gtk_tree_model_sort_set_compare): this had the wrong signature
5116
5117         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5118         Fix the docs to say that it destructively replaces existing
5119         attributes (previously said that it added attributes).
5120         (gtk_tree_view_column_set_visible): canonicalize bool before
5121         equality testing. Also, check for realization before
5122         hiding/showing the tree_column->window; if this window could exist
5123         before realization, then it's busted and needs fixing, we can't 
5124         create GDK resources pre-realization. Also, remove
5125         superfluous queue_resize(), since set_size() does that for us.
5126         (gtk_tree_view_column_set_col_type): check realization before 
5127         using tree_column->window
5128
5129         * gtk/gtktreedatalist.c: fix filename in copyright notice
5130
5131 2000-12-31  Havoc Pennington  <hp@pobox.com>
5132
5133         * gtk/gtktextview.c: Rearrange all the
5134         scroll-while-dragging-or-selecting code to be different, not
5135         necessarily better. ;-)
5136         (gtk_text_view_scroll_to_mark): Change this
5137         function to take within_margin as a fraction instead of a pixel
5138         value, and to take alignment arguments (indicating where to align 
5139         the mark inside the visible area)
5140         
5141         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5142         to GtkObject
5143
5144         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5145         behavior so that offsets past the end of the line are not 
5146         allowed, and an offset equal to the line length moves the iterator
5147         to the next line
5148         (gtk_text_iter_set_line_index): make parallel change
5149         (gtk_text_iter_get_bytes_in_line): add this function
5150         
5151         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5152         of byte indexes off the end of the line; byte index at the end of
5153         the line now returns FALSE and doesn't fill in the requested
5154         values, byte index past the end of the line is an error.  Also,
5155         don't allow -1 offset anymore, since its meaning is unclear.
5156
5157         This change exposes some bug in visual cursor motion, where we
5158         end up with a huge invalid byte index; needs fixing. Symptom of 
5159         bug is a crash when you hit up arrow.
5160         
5161         (_gtk_text_line_char_locate): match the change to byte_locate
5162
5163         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5164         from start of line properly. fixes bug reported by Mikael
5165         Hermansson where backspace would delete all text before the
5166         cursor.
5167
5168 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5169
5170         * gdk/win32/gdkwindow-win32.c
5171         (gdk_window_impl_win32_get_visible_region): New function, as in
5172         the X11 backend.
5173         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5174         instead of duplicating the same code here.
5175
5176         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5177         GDK_COLORMAP macro.
5178
5179         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5180         destroy function.
5181         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5182         access that.
5183
5184         * gtk/gtk.def: Update.
5185
5186         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5187
5188 2000-12-30  Havoc Pennington  <hp@pobox.com>
5189
5190         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5191         colormap on input only windows, to avoid special cases all over
5192         the code for these windows.
5193
5194 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5195
5196         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5197         we are on a palettized display ("PseudoColor" in X11), as the code
5198         for that doesn't work anyway, and never has.
5199
5200 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5201
5202         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5203         Don't use isprint() for chars > 255.
5204
5205 2000-12-21  Havoc Pennington  <hp@redhat.com>
5206
5207         * tests/testtreeview.c: more work
5208
5209 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5210
5211         * docs/README.linux-fb:
5212         Update the docs to the new pangoft2 way.
5213
5214 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5215
5216         * configure.in:
5217         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5218         pango version.
5219         Remove modules/linux-fb/Makefile.
5220
5221         * gdk/linux-fb/gdkdrawable-fb2.c:
5222         Render glyphs using freetype.
5223
5224         * gdk/linux-fb/gdkfb.h:
5225         Add new fb-specific functions needed for managing windows.
5226
5227         * gdk/linux-fb/gdkmain-fb.c:
5228         Remove gdk_font_init/fini() calls.
5229
5230         * gdk/linux-fb/gdkpango-fb.c:
5231         Remove old implementation. Use pangoft2 instead.
5232
5233         * gdk/linux-fb/gdkprivate-fb.h:
5234         Remove PangoFBFont and related stuff.
5235
5236         * gdk/linux-fb/gdkwindow-fb.c:
5237         Implement drawable->get_visible_region.
5238         Implement support for _gdk_window_set_child_handler () and
5239         _gdk_window_get_decorations().
5240
5241         * modules/Makefile.am:
5242         Remove linux-fb subdir.
5243
5244         * modules/linux-fb/*:
5245         Removed all.
5246         
5247 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5248
5249         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5250         calls, as they are no longer needed.
5251
5252         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5253         
5254         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5255         figure out how to emit a signal on an interface.
5256
5257 2000-12-20  Havoc Pennington  <hp@redhat.com>
5258
5259         * tests: new directory to contain tests, gtk/test* should move
5260         here sometime (with appropriate on-cvs-server hackery)
5261
5262         * tests/testtreeview.c, tests/Makefile.am: a test
5263         
5264         * configure.in (AC_OUTPUT): add tests/Makefile
5265
5266         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5267         and "invisible_set" which were missing
5268
5269         * gtk/gtkrbtree.h: some cheesy indentation fix
5270         
5271 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5272
5273         * gtk/gtkinvisible.c (gtk_invisible_realize):
5274         Attach the style to the window so that the style it is not
5275         leaked when unrealizing the window.
5276
5277 2000-12-18  Havoc Pennington  <hp@redhat.com>
5278
5279         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5280         begin/end user action where appropriate
5281         (gtk_text_view_commit_handler): add begin/end user action
5282
5283         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5284         bracket interactive operations with begin/end user action pair.
5285         
5286         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5287         "interactive" arg from insert_text and delete_text signals.
5288         Add begin_user_action, end_user_action signals
5289         (gtk_text_buffer_begin_user_action): 
5290         (gtk_text_buffer_end_user_action): New functions to delimit 
5291         a user-visible action
5292
5293         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5294         signals.
5295         
5296 2000-12-18  Havoc Pennington  <hp@redhat.com>
5297
5298         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5299         was pretty non-working.
5300
5301         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5302         by passing the length to g_utf8_validate().
5303
5304 2000-12-16  Havoc Pennington  <hp@pobox.com>
5305
5306         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5307         Port to GObject, can go back in gdk-pixbuf after setting up 
5308         a gdk-pixbuf-marshal.h header over there.
5309
5310         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5311         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5312         args
5313         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5314         set
5315         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5316         here, do it when we create the buttons later
5317         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5318         (gtk_tree_view_map): paranoia checks that column->button is shown 
5319         and unmapped
5320         (gtk_tree_view_size_request): only request visible children.
5321         Move header size calculation in here, for cleanliness, and 
5322         to maintain invariants for child widgets if we eventually 
5323         let users set different children inside the buttons
5324         (gtk_tree_view_map_buttons): factor out code to map buttons,
5325         since it was being called several times
5326         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5327         windows instead of just moving them; their height may change 
5328         if we allow random widgets in there, or the theme changes.
5329         (gtk_tree_view_size_allocate): move button size allocation 
5330         above emitting the scroll signals, to ensure a sane state when we
5331         hit user code
5332         (gtk_tree_view_button_release): remove queue_resize after
5333         tree_view_set_size(), set_size() will handle any resize queuing
5334         that's needed
5335         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5336         draw_focus goo
5337         (gtk_tree_view_focus): use gtk_get_current_event() and
5338         gdk_event_get_state()
5339         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5340         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5341         semicolon
5342         (gtk_tree_view_create_button): show the button here
5343         (gtk_tree_view_button_clicked): actually emit the clicked signal
5344         on the column
5345         (_gtk_tree_view_set_size): return right away if the size is
5346         unchanged, as a cheesy optimization
5347         (gtk_tree_view_setup_model): rename set_model_realized to 
5348         setup_model to match the flag that indicates whether we've 
5349         called it
5350         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5351         exist, because set_scroll_adjustment does that and it shouldn't
5352         matter what order you call these in
5353         (gtk_tree_view_get_vadjustment): ditto
5354         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5355         for paranoia
5356         (gtk_tree_view_set_headers_visible): call
5357         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5358         (gtk_tree_view_append_column): clarify whether the return value
5359         is the count of columns before or after, and do the increment 
5360         separately from the return statement so you can tell from the code.
5361         (gtk_tree_view_remove_column): ditto
5362         (gtk_tree_view_insert_column): ditto
5363         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5364         outside the existing range, the docs say that outside-range
5365         columns are allowed, so we handle them as documented. (Presumably
5366         this allows a nice loop with column != NULL as test.)
5367         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5368         mean (left/right/center etc.).
5369         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5370         (gtk_tree_view_expand_row): add docs
5371         (gtk_tree_view_collapse_row): add docs
5372
5373         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5374         function to emit the clicked signal on a column
5375         
5376         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5377         state of an event
5378         (gdk_event_get_time): don't treat GDK_SCROLL 
5379         as a button event, remove default case from switch so gcc 
5380         will whine if we don't explicitly handle all event types
5381
5382         * gtk/gtktreeselection.h: added some FIXME 
5383         
5384         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5385         "columns" to "n_columns" and "column" to "columns" for clarity
5386
5387 2000-12-16  Havoc Pennington  <hp@pobox.com>
5388         
5389         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5390         stuff. This should make e.g. the delete key work again in the
5391         text widget...
5392         (gtk_text_iter_forward_cursor_positions): handle negative count
5393         (gtk_text_iter_backward_cursor_positions): handle negative count
5394         (gtk_text_iter_forward_word_ends): handle negative count
5395         (gtk_text_iter_backward_word_starts): handle negative count
5396
5397         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5398         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5399         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5400         GObject. No doubt will cause breakage.
5401
5402         * demos/gtk-demo/textview.c: remove hacks around
5403         non-GObject-ification of the text objects
5404
5405         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5406         the text tag
5407         
5408 2000-12-14  Havoc Pennington  <hp@pobox.com>
5409
5410         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5411         that we have Xrender
5412
5413 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5414
5415         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5416         Add two virtualized functions gdk_drawable_get_clip_region - to
5417         get the clip region when drawing.
5418         
5419         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5420         use invalidate_region.
5421
5422         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5423         region.
5424
5425         * acconfig.h configure.in: Check for Xft. For now, assume
5426         that if Xft is found, Pango was compiled with Xft support
5427         as well.
5428
5429         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5430         gdk_colormap_query_color().
5431         
5432         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5433         with Xft if appropriate.
5434
5435         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5436         a pangoxft context if we have XFT and the environment
5437         variable GD_USE_XFT is set.
5438         
5439         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5440         and also possibly an XftDraw structure.
5441
5442         * gtk/gtkfontsel.c: Handle the case where the font from the
5443         style doesn't match any of the fonts a bit better.
5444         
5445         * gtk/testgtk.c: Add tabs between directional segments for
5446         hebrew/arabic test. (Not really necessary, just a little
5447         prettier.)
5448
5449 2000-12-14  Havoc Pennington  <hp@redhat.com>
5450
5451         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5452         reading a file
5453
5454 2000-12-14  Havoc Pennington  <hp@redhat.com>
5455
5456         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5457         unused call to get_last_line()
5458
5459         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5460         here until boxed is working (and maybe after that - we should
5461         really not gratuitously break old code)
5462
5463         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5464         specific types for font_desc and tabs args, move them to
5465         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5466         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5467
5468         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5469         use GTK_TYPE_POINTER for signal signatures as a hack-around
5470
5471         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5472         PangoTabArray
5473
5474         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5475         make static
5476         (line_display_index_to_iter): make static
5477
5478         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5479         to marshal a string not a boxed
5480
5481         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5482
5483         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5484         since the UTF-8 isn't validated yet
5485
5486         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5487         lines to end in '\n'
5488         
5489         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5490         forward_to_delimiters, and grapheme boundaries
5491         (gtk_text_view_delete_from_cursor): properly handle non-newline
5492         delimiters, and grapheme boundaries
5493
5494         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5495         to gtk_text_iter_forward_to_delimiters, and make it work properly
5496         if empty lines end with a character other than '\n'
5497
5498         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5499         position
5500
5501 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5502
5503         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5504
5505         * gtk/gtk.def
5506         * gdk/gdk.def: Update.
5507
5508         * gdk/win32/gdkmain-win32.c
5509         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5510         gdkmain-win32.c here.
5511
5512         * gdk/win32/makefile.mingw.in (all): No need to make
5513         gdk-win32res.o here, the makefile one step up will call us to make
5514         it.
5515
5516         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5517         gdkkeys-win32.
5518
5519         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5520
5521         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5522         call to g_source_add().
5523
5524         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5525         leak. Thanks to Andreas Kemnade.
5526
5527 2000-12-13  Havoc Pennington  <hp@pobox.com>
5528
5529         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5530
5531         * gtk/gtktext*.[hc]: update accordingly
5532         
5533 2000-12-13  Havoc Pennington  <hp@pobox.com>
5534
5535         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5536         header file
5537
5538         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5539
5540 2000-12-13  Alex Larsson  <alexl@redhat.com>
5541
5542         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5543         Add support for ps2 intellimouse.
5544
5545         * gdkkeyboard-fb.c:
5546         Move shift-F1 repaint handling to xlate handler only.
5547         
5548         * docs/README.linux-fb:
5549         Add imps2 to docs.
5550         Document the new refresh keys.
5551         
5552 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5553
5554         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5555
5556         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5557         ::position and ::padding.
5558
5559         * gtk/gtkcontainer.c: make ::border_width an INT property.
5560
5561         * gtk/gtkpacker.c: make ::position an INT property.
5562
5563         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5564         guard against NULL h/v scrollbars, since this is used at construction
5565         time.
5566
5567         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5568         internal gtk_clist_constructor().
5569
5570         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5571         gtk_ctree_constructor().
5572
5573         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5574         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5575
5576         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5577         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5578
5579         * gtk/gtkwidget.[hc]:
5580         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5581         and gtk_widget_get().
5582         (gtk_widget_new): use g_object_new_valist().
5583         (gtk_widget_set): use g_object_set_valist().
5584
5585         * gtk/gtkobject.[hc]:
5586         removed gtk_object_arg_get_info(), gtk_object_getv(),
5587         gtk_object_query_args(), gtk_object_newv(),
5588         gtk_object_class_add_signals(),
5589         gtk_object_class_user_signal_new(),
5590         gtk_object_class_user_signal_newv(),
5591         gtk_object_arg_set(), gtk_object_arg_get(),
5592         gtk_object_args_collect(),
5593         gtk_object_default_construct(),
5594         gtk_object_constructed(),
5595         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5596         removed nsignals, signals and n_args members from GtkObjectClass.
5597         (gtk_object_new): use g_object_new_valist().
5598         (gtk_object_set): use g_object_set_valist().
5599         (gtk_object_get): use g_object_get_valist().
5600         
5601         * gtk/gtkcompat.h: define gtk_object_default_construct().
5602         
5603         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5604         g_object_new().
5605
5606         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5607         fucntions, cleaned up method assignments (make sure your structures
5608         are setup properly before calling out). removed all GTK_CONSTRUCTED
5609         hacks ;)
5610
5611 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5612
5613         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5614         off-by-one error in checks. (Dave Lambert)
5615
5616 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5617
5618         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5619         Don't free gdk_fb_keyboard twice.
5620
5621 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5622
5623         * gtk/testgtk.c:
5624         (create_tooltips): 
5625         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5626         use GObject swapped_signal:: properties instead.
5627
5628         * gtk/gtkcellrenderertoggle.c: 
5629         * gtk/gtkcellrenderertextpixbuf.c: 
5630         * gtk/gtkcellrenderertext.c: 
5631         * gtk/gtkcellrendererpixbuf.c: 
5632         * gtk/gtkcellrenderer.c:
5633         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5634         missing warnings for invalid property ids, install properties
5635         with g_object_class_install_property() now.
5636         
5637         * gtk/gtksignal.c:
5638         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5639         
5640 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5641         
5642         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5643         to determine if a window is the focus widget within
5644         its toplevel.
5645
5646         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5647         to be boolean.
5648
5649         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5650         of the case where the container CAN_FOCUS to here instead
5651         of having it in each individual move-the-focus place.
5652
5653         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5654         focusing to be geometric in a much more obvious sense. Arrowing
5655         around is still non-intuitive because it isn't perfect and
5656         because entries, etc, grab the arrow keys, but it at least
5657         usually will do what you expect now.
5658         
5659         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5660         file.
5661
5662         * gtk/gtknotebook.c: Change tabs to be a single item in
5663         the focus chain. Make movement of focus on tabs with arrow
5664         keys wrap around.
5665         
5666         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5667         CHECK_FIND_CHILD macro to give informative error messages
5668         instead of silent returns.
5669
5670         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5671         flag since we handle GdkReturn on the tabs.
5672
5673         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5674         windows rather than sending expose events directly.
5675
5676         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5677         definition for GtkNotebookPage into .c file, since it is private.
5678
5679         * gtk/testgtk.c (create_notebook): Add option for 
5680         testing borderless notebook.
5681
5682         * gtk/testgtk.c (page_switch): Removed egregious poking
5683         around in GTK+ internals.
5684
5685         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5686
5687         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5688         properly through gtk_clist_focus. Make the title headers a
5689         single item in the tab-focus chain, and make left-right wrap
5690         around.
5691
5692         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5693         focus method so that wrapping around works properly.
5694
5695         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5696         that is handled for the widget now. 
5697
5698 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5699
5700         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5701         widgets as TOPLEVEL.
5702
5703         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5704         TOPLEVEL widgets are containers.
5705
5706         * gtk/gtkinvisible.h: Remove useless include.
5707
5708 2000-12-11  Havoc Pennington  <hp@redhat.com>
5709
5710         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5711         Handle chopping off \r\n and 0x2029 in addition to \n before
5712         passing to PangoLayout
5713
5714         * gtk/gtkimcontextsimple.c
5715         (gtk_im_context_simple_get_preedit_string): 
5716         return an empty string if no match is pending
5717
5718         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5719         assertion that the returned preedit string was sane
5720
5721         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5722         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5723         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5724
5725 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5726
5727         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5728         Fix up finalizer to chain to its parent.
5729
5730 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5731
5732         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5733         Clearified the difference between the keyboard types. Wrote a note
5734         about the magic sysrq key to get out of raw mode.
5735
5736 2000-12-09  James Henstridge  <james@daa.com.au>
5737
5738         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5739         member to hold masks for detecting the start of a protocol packet.
5740         (mouse_devs): add packet start masks for ps2 and ms device types.
5741         Left the mask for fidmour blank, as I have no idea what it should
5742         be.
5743         (handle_mouse_io): skip bytes until we get to the start of a
5744         packet.  My Logitech mouse seems to be passing an extra NULL pad
5745         byte, and GPM does a similar thing here.
5746         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5747         this is the ms mouse driver.
5748         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5749         completely broken except for button1.  It was checking the wrong
5750         bit in the packet for the status of the right mouse button, and
5751         wrongly assuming right == button2 rather than 3.  I fixed that and
5752         also added support for middle button (button2).
5753
5754 2000-12-08  Havoc Pennington  <hp@redhat.com>
5755
5756         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5757         that cause a segfault on text insertion
5758
5759         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5760         warning
5761
5762         * gtk/gtktextiter.c (test_log_attrs): use
5763         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5764
5765         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5766         Get log attrs for a line, using a cache stored on the buffer
5767         
5768         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5769         reported by Jeff Franks
5770
5771 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5772
5773         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5774         /dev/ttyS0 -> /dev/mouse
5775
5776 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5777
5778         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5779         Added dummy gdk_fontset_load.
5780
5781 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5782
5783         * docs/README.linux-fb:
5784         * docs/Makefile.am:
5785         Initial GtkFB docs.
5786         
5787         * gdk/linux-fb/Makefile.am:
5788         Define GDK_DATA_PREFIX.
5789
5790         * gdk/linux-fb/gdkmain-fb.c:
5791         Fix typo.
5792         Change default display to /dev/fb0.
5793
5794         * gdk/linux-fb/gdkpango-fb.c:
5795         Add $(prefix)/share/fonts/ to font path.
5796         
5797 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5798
5799         * gdk/linux-fb/gdkkeyboard-fb.c:
5800         New file containing the abstracted keyboard driver. Most code
5801         taken from gdkinput-ps2.c
5802
5803         * gdk/linux-fb/gdkinput-ps2.c:
5804         Removed file.
5805         
5806         * gdk/linux-fb/Makefile.am:
5807         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5808
5809         * gdk/linux-fb/gdkcolor-fb.c:
5810         display->fb was renamed to display->fb_fd.
5811
5812         * gdk/linux-fb/gdkcursor-fb.c:
5813         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5814
5815         * gdk/linux-fb/gdkinput.c:
5816         Moved gdk_input_init here from gdkinput-ps2.c
5817
5818         * gdk/linux-fb/gdkmain-fb.c:
5819         display->fb was renamed to display->fb_fd.
5820         Now the tty and the console is opened here instead
5821         of in the keyboard driver. Also check GDK_VT to see what
5822         tty to open.
5823         Move gdk_beep () here from gdkinput-ps2.c
5824         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5825
5826         * gdk/linux-fb/gdkmouse-fb.c:
5827         Add header.
5828         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5829         Return correct keyboard modifiers.
5830         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5831
5832         * gdk/linux-fb/gdkprivate-fb.h:
5833         Add tty and vt info to display.
5834         Add orignal modeinfo storage to display
5835         Update global functions
5836
5837         * gdk/linux-fb/gdkwindow-fb.c:
5838         Added gdk_fb_window_find_focus().
5839         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5840
5841 2000-12-07  Havoc Pennington  <hp@pobox.com>
5842
5843         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5844         function, noticed by Alex
5845
5846 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5847
5848         * configure.in: Detect freetype properly
5849
5850         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5851         above.
5852
5853 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5854
5855         * gdk/linux-fb/Makefile.am:
5856         Add gdkmouse-fb.c
5857         
5858         * gdk/linux-fb/gdkmouse-fb.c:
5859         New file. Abstracted the mouse drivers a bit.
5860
5861         * gdk/linux-fb/gdkcursor-fb.c:
5862         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5863
5864         * gdk/linux-fb/gdkinput-ps2.c:
5865         Removed old mouse handling code. Moved cursor handling code
5866         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5867         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5868         gdk_mouse_get_info.
5869
5870         * gdk/linux-fb/gdkmain-fb.c:
5871         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5872
5873         * gdk/linux-fb/gdkprivate-fb.h:
5874         Removed public gdk_fb_find_common_ancestor, added and renamed
5875         functions for the new mouse handling code.
5876
5877         * gdk/linux-fb/gdkwindow-fb.c:
5878         Moved gdk_fb_window_send_crossing_events here. added global
5879         variable gdk_fb_window_containing_pointer. made
5880         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5881         renamed to gdk_mouse_get_info.
5882
5883 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5884
5885         * gdk/linux-fb/gdkevents-fb.c:
5886         Update to match latest gmain/gsource changes.
5887
5888         * gdk/linux-fb/gdkinput-ps2.c:
5889         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5890         it links. Will be implemented later.
5891
5892 2000-12-03  Havoc Pennington  <hp@pobox.com>
5893
5894         * gdk/Makefile.am: add gdkkeys.[hc]
5895
5896         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5897         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5898
5899         * acconfig.h, configure.in: add checks and command line options
5900         for XKB
5901
5902         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5903         
5904         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5905         and group in the key event
5906
5907         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5908         field with the low-level hardware key code, and a group
5909         field with the keyboard group
5910
5911         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5912         and declare a couple globals used for keymap handling
5913         
5914         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5915         hold down Shift-Control and type a hex number to get a Unicode 
5916         character corresponding to the hex number
5917         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5918         (return bytes not chars)
5919
5920 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5921
5922         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5923         to avoid waste on 64-bit platforms.
5924
5925 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5926
5927         * INSTALL: Fix link to PNG home, remove reference
5928         to fribidi.
5929
5930         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5931         
5932         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5933         tested.)
5934
5935         * gtk/gtkcheckmenuitem.c: Permanently turn on
5936         always_show_toggle.
5937
5938         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5939         be NULL. (Vladimir Klebanov, #26545)
5940
5941         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5942         some signed/unsigned comparison problems. (#6510,
5943         David Kaelbling)
5944
5945         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5946         return type to boolean (Oskar Liljeblad, #18648)
5947
5948 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5949
5950         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5951         Remove bogus colormap setting.
5952
5953 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5954
5955         * gdk/linux-fb/gdkcolor-fb.c:
5956         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5957
5958         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5959         Must set colormap.
5960         
5961 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5962
5963         * docs/tutorial/gtk-tut.sgml: DND updates
5964
5965 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5966
5967         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5968         Remove old debug g_warning().
5969         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5970         or an implementation, just pass the implementation to draw_drawable_2.
5971         
5972         * gdk/linux-fb/gdkprivate-fb.h:
5973         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5974
5975         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5976         clear and invalidate area when window is destroyed.
5977         (send_map_events): Remove old commented out code.
5978
5979 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5980
5981         * gdk/linux-fb/gdkpango-fb.c:
5982         Use italic instead of oblique in font aliases.
5983         
5984         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5985         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5986         other unsupported functions.
5987
5988 2000-12-04  Havoc Pennington  <hp@redhat.com>
5989
5990         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5991
5992         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5993
5994         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5995
5996         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5997         hack to avoid infinite loops (synthetic expose event) - 
5998         Owen has more appropriate fixes in a branch he'll check in later.
5999
6000         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6001         separator, CR, and CRLF as line ends
6002
6003         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6004         into lines using pango_find_paragraph_boundary(); other bits of
6005         the widget are still going to be broken if the boundary isn't '\n'
6006         though
6007
6008 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6009
6010         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6011         multiply.
6012
6013         * gdk/linux-fb/gdkpango-fb.c:
6014         Copied some 26.6 scaling macros from pango to clean up the rounding.
6015         (pango_fb_font_get_glyph_info): Correct sign on x value.
6016
6017         * gdk/linux-fb/gdkprivate-fb.h:
6018         Removed unreferenced external functions.
6019
6020         * modules/linux-fb/Makefile.am: Use ` instead of '.
6021
6022         * modules/linux-fb/basic.c:
6023         Remove dead code. In particular the dummy lang engine which broke all
6024         pango layouts in GtkFB. Don't include tables-big.i anymore.
6025
6026         * modules/linux-fb/tables-big.i:
6027         Upgrade to latest version from pango. Left for reference, basic_ranges
6028         moved to basic.c.
6029         
6030 2000-12-04  Havoc Pennington  <hp@redhat.com>
6031
6032         Fix bugs Alex found:
6033         
6034         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6035         to "draw"
6036
6037         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6038
6039         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6040
6041         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6042         implementation in here, apparently the expose() implementation was
6043         dead code.
6044
6045 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6046
6047         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6048         Return positive descent.
6049
6050 2000-12-02  Havoc Pennington  <hp@pobox.com>
6051
6052         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6053         method and signal
6054         
6055         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6056         calls gdk_window_process_updates() to push the exposes through
6057         (gtk_widget_class_init): No more draw signal, no
6058         gtk_widget_real_draw()  
6059         
6060         * gtk/gtkbin.c (gtk_bin_draw): remove
6061
6062         * gtk/gtkbox.c (gtk_box_draw): remove
6063
6064         * gtk/gtkbutton.c (gtk_button_draw): remove
6065
6066         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6067
6068         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6069
6070         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6071
6072         * gtk/gtkclist.c (gtk_clist_draw): remove
6073
6074         * gtk/gtkentry.c (gtk_entry_draw): remove
6075
6076         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6077
6078         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6079
6080         * gtk/gtkframe.c (gtk_frame_draw): remove
6081
6082         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6083
6084         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6085
6086         * gtk/gtklayout.c (gtk_layout_draw): remove
6087
6088         * gtk/gtklist.c (gtk_list_draw): remove
6089
6090         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6091
6092         * gtk/gtkmenu.c (gtk_menu_draw): remove
6093
6094         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6095
6096         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6097
6098         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6099
6100         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6101
6102         * gtk/gtkpacker.c (gtk_packer_draw): remove
6103
6104         * gtk/gtkrange.c (gtk_range_draw): remove
6105
6106         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6107
6108         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6109
6110         * gtk/gtktable.c (gtk_table_draw): remove
6111
6112         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6113
6114         * gtk/gtktext.c (gtk_text_draw): remove
6115
6116         * gtk/gtktextview.c (gtk_text_view_draw): remove
6117
6118         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6119
6120         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6121
6122         * gtk/gtktree.c (gtk_tree_draw): remove
6123
6124         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6125
6126         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6127
6128         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6129
6130         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6131
6132         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6133
6134         * gtk/gtkwindow.c (gtk_window_draw): remove
6135
6136 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6137
6138         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6139         a GtkToggleButton is both insensitive and active, it was being
6140         drawn by the GtkButton draw handler which doesn't check the
6141         state. Now it's calling gtk_toggle_button_paint instead.
6142         
6143 2000-12-01  Havoc Pennington  <hp@redhat.com>
6144
6145         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6146         dangling pointers to the appearance attributes from the 
6147         line display
6148
6149         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6150         width/height to mean "full width/height of drawable"
6151
6152         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6153         click to select word/line
6154         
6155         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6156         when getting log attrs. Get a slice, so that pixmaps and stuff
6157         are properly handled.
6158
6159         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6160         paste into the selection (replaces selection now, previously
6161         crashed or added to selection). Reveals longstanding btree bug -
6162         select multiple lines, middle-click on the selection, boom. This
6163         isn't related to my changes though.
6164
6165         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6166         PangoLogAttrs changes
6167         (gtk_entry_move_backward_word): ditto
6168
6169         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6170         functions return bool whether the iter moved onto a
6171         dereferenceable position.
6172  
6173         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6174         functions for motion in terms of display lines.
6175
6176         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6177         get the buffer a mark is inside
6178         
6179 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6180
6181         * gdk/linux-fb/Makefile.am:
6182         * modules/linux-fb/Makefile.am:
6183         Freetype 2 final uses freetype-config
6184
6185         * gdk/linux-fb/gdkpango-fb.c:
6186         Upgrade to use Freetype 2 final.
6187         More flexible support for font aliases, this also fixes a bug with
6188         GtkFontSelector, as the aliases must be visible in the font/family list,
6189         or GtkFontSelector reads uninitialized memory.
6190
6191 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6192
6193         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6194         XGetIMValues to properly terminate variable argument list, and do
6195         NULL return check for ic_values and xim_styles.
6196
6197         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6198         Restore preedit state after XmbResetIC().
6199         
6200         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6201         XvaCreateNestedList() should take XvaNestedList, but not
6202         XvaNestedList*.
6203
6204         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6205         preedit_draw_callback, preedit_caret_callback): Match
6206         "preedit-changed" signal name to "preedit_changed" to be
6207         consistent to the spec.
6208
6209         * gtk/gtkimcontextsimple.c (check_table):
6210         Match "preedit-changed" to "preedit_changed" to be consistent
6211         to the spec.
6212
6213 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6214
6215         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6216         gc->clip_region == NULL>
6217
6218 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6219
6220         Changes by Hans Breuer:
6221         
6222         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6223         Dont't use negative width and height as max_hints. This fixes
6224         Owen's recent testgtk changes for win32.
6225
6226         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6227         gdk_win32_hdc_release): These are exported and may be called with
6228         other drawable types than our GdkDrawableImplWin32 (?).
6229
6230         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6231         so always #define USE_BACKING_STORE.
6232
6233         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6234         of printf for debugging output.
6235
6236         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6237         
6238         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6239
6240         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6241         declaration.
6242
6243         * gtk/gtktexttypes.h: Ditto.
6244
6245         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6246         (GDK_VoidSymbol) also if in case of arg check failure.
6247
6248         * gtk/gtkimcontextsimple.c
6249         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6250         position to the pointer, but to the variable it points to.
6251
6252         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6253
6254         * gtk/gtk.def: Updates.
6255
6256 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6257
6258         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6259         GTK_TYPE_TREE_MODEL.
6260
6261 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6262
6263         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6264         Set the size of the font from the description.
6265         (gdk_text_width): Gross hack that calculates the width
6266         of text by text_length * size/2. This is necessary because
6267         GtkLabel does some ugly gtk_string_width call to calculate
6268         an good size.
6269         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6270
6271 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6272
6273         * docs/tutorial/gtk-tut.sgml: DND updates
6274
6275 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6276
6277         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6278         If you pass width or height == 0 to gdk_window_clear_area they
6279         should be calculated from the window size.
6280
6281 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6282
6283         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6284         a grab, but no grab-cursor, use the cursor from the grabbed
6285         window. (gdk_fb_window_send_crossing_events): Send normal
6286         enter/leave notifications if grab and owner_events == TRUE.
6287
6288 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6289
6290         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6291         Do implicit button grabs, even if the window doesn't
6292         want the event.
6293         (gdk_fb_window_send_crossing_events): If there is a
6294         grab, only the grabbed window gets normal enter/leave
6295         notifications. On ungrab go from grabbed window to current.
6296         Don't send any notification to b when propagating from c -> b.
6297         If setting a grab on window, don't set prev_window.
6298         (handle_mouse_input): Send enter/leave events to the window the
6299         mouse is over, not the grabbed one.
6300         
6301 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6302
6303         * gdk/gdkregion-generic.c: Zap warning.
6304         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6305         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6306
6307 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6308
6309         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6310         The cursor should be hidden if it is part of either the
6311         source or destination region. Not only if it is in both.
6312         (gdk_window_set_transient_for): Silence warnings.
6313
6314 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6315
6316         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6317         The default mode in X is Pie Arcs, therefore that is
6318         what Gtk+ uses.
6319
6320 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6321
6322         * gdk/linux-fb/gdkinput-ps2.c:
6323         Implement correct EnterNotify/LeaveNotify:
6324         (gdk_fb_window_send_crossing_events): New function that sends
6325         all GdkCrossingEvents from the last mouse-window to the specified
6326         destination.
6327         (gdk_fb_window_visibility_crossing): Removed function.
6328         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6329         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6330         instead of gdk_window_get_pointer() for better readability.
6331
6332         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6333         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6334
6335         * gdk/linux-fb/gdkprivate-fb.h:
6336         removed gdk_fb_window_visibility_crossing, added
6337         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6338
6339         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6340         New function that finds the least common ancestor of two windows.
6341         (gdk_window_show, gdk_window_hide):
6342         Use gdk_fb_window_send_crossing_events.
6343         (gdk_fb_window_move_resize): Send configure events to toplevel
6344         windows. Use gdk_fb_window_send_crossing_events.
6345
6346 2000-11-27  Havoc Pennington  <hp@redhat.com>
6347
6348         * gtk/gtkprivate.h (enum): Remove a trailing comma
6349
6350 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6351
6352         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6353         the "changed" callback of the adjustment.  We need to redraw the
6354         spin button's arrows when the adjustment's range changes.
6355         (adjustment_changed_cb): Draw the arrows.
6356         (gtk_spin_button_value_changed): Draw the arrows.
6357
6358 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6359
6360         * gdk/linux-fb/gdkselection-fb.c:
6361         Initial selection implementation.
6362
6363         * gtk/gtkselection.c:
6364         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6365         requestor in gtk_selection_request.
6366         
6367         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6368         Added gdk_selection_property atom.
6369
6370         * gdk/linux-fb/gdkprivate-fb.h:
6371         Export _gdk_selection_window_destroyed.
6372         Removed mask_off_x/y from GdkCursorPrivateFB.
6373         Removed hbearing, added top, left to PangoFBGlyphInfo.
6374
6375         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6376         Call _gdk_selection_window_destroyed
6377         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6378         the root window has been created.
6379         (static_dx_hack, static_dy_hack, compare_draw_rects,
6380         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6381         in region. They are already sorted. Instead just traverse them in
6382         reverse if draw_direction < 0.
6383         
6384         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6385         Double-clicks must be sent after the normal button_press.
6386         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6387         
6388         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6389         Pass _gdk_fb_screen_gc instead of NULL.
6390
6391         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6392         Initialize gdk_selection_property.
6393         (gdk_event_make): Remove unused code.
6394
6395         * gdk/linux-fb/gdkcursor-fb.c:
6396         Make the pixmap for the cursor the same size as the mask. Also remove
6397         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6398         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6399         Now the whole cursor is visible.
6400
6401         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6402         Fix bug where xdest+height instead of ydest+height was used
6403         to calculate if the source and dest overlapped. This fixes the
6404         redraw bug when the main window in testgtk was scrolled when
6405         partially covered by a tall window.
6406         Copy rectangles in region in order depending on draw_direction.
6407         Also moved the draw_direction flipping of start_y and end_y into
6408         the gc functions, as this might not be what all of them want.
6409         (gdk_fb_draw_lines): Support dashed lines.
6410         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6411         so that the text is positioned correctly (was 1 pixel high).
6412
6413         gdk/linux-fb/gdkgc-fb.c:
6414         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6415         all lines were drawn a pixel to short. Also checked the default of
6416         the rest of the values, and they're the same as X now.
6417
6418         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6419         Clean up pixel positioning of the glyphs. Just use bgy->top and
6420         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6421         to all divisions to get correct rounding behaviour.
6422
6423         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6424         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6425         Moved start_y/end_y flip into draw_drawable implementations.
6426         Flip also x rendering when draw_direction < 0.
6427         Remove unneccesary multiply with draw_direction.
6428
6429 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6430
6431         * docs/tutorial/gtk-tut.sgml:
6432           - get rid of gtk_toggle_button_toggled FUD
6433           - start DND section - needs work - based on:
6434                 http://wolfpack.twu.net/docs/gtkdnd/
6435
6436 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6437
6438         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6439         Correct calculation of font metrics. Now GtkEntrys have sane
6440         size.
6441
6442 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6443
6444         * gdk/gdktypes.h:
6445         Add new type GdkSpan
6446         
6447         * docs/reference/gdk/gdk-sections.txt,
6448         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6449         gdk/gdkregion.h:
6450         Implement and document gdk_region_spans_intersect_foreach.
6451
6452         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6453         Add new file gdkrender-fb.c which contains all core
6454         rendering code.
6455         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6456         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6457         (optimized rectangle fillers).
6458
6459         * gdk/linux-fb/gdkdrawable-fb2.c:
6460         Move all rendering code to gdkrender-fb.c.
6461         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6462         Use the new span intersection functions in gdk_fb_fill_spans.
6463         gdk_fb_draw_rectangle() clips filled rectangles and calls
6464         gc->fill_rectangle with the result.
6465         gdk_fb_fill_spans() gets extra argument "sorted".
6466
6467         * gdk/linux-fb/gdkevents-fb.c:
6468         Remove unused includes and defines.
6469         New function gdk_fb_get_time() to get correct time for events.
6470
6471         * gdk/linux-fb/gdkinput-ps2.c:
6472         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6473         Make sure to set the time of all events.
6474
6475         * gdk/linux-fb/gdkmain-fb.c:
6476         Use gdk_fb_get_time ().
6477
6478         * gdk/linux-fb/gdkprivate-fb.h:
6479         New virtual GC calls: fill_span & fill_rectangle.
6480         Export gdk_fb_get_time().
6481         gdk_fb_fill_spans() gets extra argument "sorted".
6482
6483         * gdk/linux-fb/mi*.c:
6484         Use GdkSpan instead of GdkRectangle.
6485         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6486         from XFree 4 source)
6487         
6488 2000-11-22    <jrb@redhat.com>
6489
6490         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6491         reversing the order in an if statement will do.  Doing so managed
6492         to make the treemodelsort half work.  Other half will follow after
6493         I get the insert function fully fixed.
6494
6495 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6496         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6497         more than 2 bits. Besides, I need to implement an evil hack. :)
6498
6499 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6500
6501         * docs/tutorial/gtk-tut.sgml: minor corrections
6502
6503 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6504         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6505           convert to and from relative path's and iters.
6506
6507         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6508           testing sorting functions a bit better.  Currently broken -- will
6509           fix in morning.
6510
6511 2000-11-20  Havoc Pennington  <hp@redhat.com>
6512
6513         * gtk/gtkwidget.c: Documented a bunch of functions in here
6514         (gtk_widget_realize): Warn if you try to realize
6515         a widget with no parent that isn't a toplevel
6516         (gtk_widget_intersect): return a gboolean
6517
6518 2000-11-20  Havoc Pennington  <hp@redhat.com>
6519
6520         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6521         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6522         scrolling to be implemented in GDK to finish. Also, right now
6523         we just size_allocate all children on every layout change,
6524         which is pretty lame. Test commented out of testtext.c, 
6525         until it works better.
6526
6527 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6528
6529         * gdk/linux-fb/gdkdrawable-fb2.c:
6530         Removed unused arguments from gdk_fb_drawable_get_pixel().
6531
6532         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6533         Renamed fidur specific mouse packet data in MouseDevice to
6534         generic. Used it in ps2 mouse handling code to avoid blocking
6535         reads.
6536
6537 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6538
6539         * demos/gtk-demo/main.c: Changed to have the list become
6540         non-italic when the demo window is destroyed through an external
6541         event (like a close button).  Doing so found three bugs in the
6542         widget.
6543
6544         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6545
6546         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6547         we actually set the cell.
6548
6549         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6550
6551         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6552         free a leaked path.  Thanks memprof.
6553
6554 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6555
6556         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6557         off-by-one error when destroying allocated segments
6558         on failure. (Elliot)
6559
6560 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6561
6562         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6563         memleaks found by Evan Martin.
6564
6565 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6566
6567         * Released 1.3.2
6568         
6569         * NEWS: Updates for 1.3.2
6570
6571 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6572
6573         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6574         but in general for window system specific events.
6575
6576         * gtk/gtk.def
6577         * gtk/makefile.mingw.in
6578         * gtk/makefile.msc.in: Update.
6579         
6580         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6581
6582 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6583
6584         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6585         distribute gtk.immodules.
6586
6587         * gtk/Makefile.am (install-data-local): Don't install the
6588         gtk.immodules file created for the uninstalled modules;
6589         instead run gtk-query-immodules after install
6590
6591 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6592
6593         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6594         -rpath to the right install location.
6595
6596         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6597         -export-dynamic.
6598
6599         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6600         properly.
6601
6602 2000-11-15  Havoc Pennington  <hp@pobox.com>
6603
6604         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6605         patch from Mikael Hermansson to temporarily stop blinking while
6606         the user is using the keyboard to type or navigate. 
6607
6608         Also, when blinking, stay on for longer than we stay off. Also,
6609         return from start_cursor_blink if !cursor_visible, to save
6610         checking that flag all over the place before we call
6611         start_cursor_blink.
6612
6613 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6614
6615         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6616         only contain a "fontset" line, which is now ignored.
6617
6618         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6619         double-click-to-select-word work.
6620         
6621 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6622
6623         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6624         Don't move back one char when we are actually at the end of the 
6625         paragraph.
6626
6627 2000-11-15  Robert Brady  <robert@suse.co.uk>
6628
6629         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6630         'o' < 'p'.
6631         
6632         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6633         bind_textdomain_codeset.
6634
6635         (gtk_init_check): Make the warning about translating default:LTR
6636         sterner.
6637         
6638 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6639
6640         * **/Makefile.am : remove unecessary rules for win32-specific
6641         config-substituted targets. If you want these rules, use
6642         --enable-maintainer-mode (called automatically by autogen.sh).
6643         Stops a lot of unneccessary make-time warnings.
6644
6645         * gtk/gtktext{layout,display}.c: Factor in total width as
6646         well as screen when figuring alignment for word-wrap as well as
6647         no wrap; this is necessary to handle lines that cannot be wrapped
6648         at all.
6649
6650 2000-11-15  Havoc Pennington  <hp@redhat.com>
6651
6652         * gtk/testtext.c: Implement essential color cycling feature
6653
6654 2000-11-15  Havoc Pennington  <hp@redhat.com>
6655
6656         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6657         when we invalidate the main window.
6658
6659         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6660         GtkTextView will now invalidate the side windows for us when text
6661         changes.
6662
6663 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6664
6665         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6666         unconditionally, since we may need to update the horizontal
6667         scrollbars even if the height didn't change.
6668
6669         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6670         the extra attrs, since some of them affect size.
6671
6672         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6673         x_offset correctly.
6674
6675 2000-11-15  Havoc Pennington  <hp@redhat.com>
6676
6677         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6678         don't move the first line out into the margin, instead move the
6679         whole paragraph in order to make space for the first line within 
6680         the margin
6681
6682 2000-11-15  Havoc Pennington  <hp@redhat.com>
6683
6684         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6685         xoffset in addition to yoffset, so horizontal scrolling doesn't
6686         break redraws
6687
6688 2000-11-15  Havoc Pennington  <hp@redhat.com>
6689
6690         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6691         from the cursor
6692         (render_layout_line): fix reversed test that caused weird
6693         underlines to get drawn
6694
6695 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6696
6697         * gdk/linux-fb/gdkprivate-fb.h:
6698         Fix debug macros.
6699         
6700 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6701
6702         * gdk/linux-fb/gdkprivate-fb.h:
6703         Added virtual functions set_pixel, get_color,
6704         fill_span and draw_drawable to the GC.
6705         Added global _gdk_fb_screen_gc to use instead of
6706         NULL when drawing to the screen.
6707         Added _gdk_fb_gc_calc_state() prototype.
6708
6709         * gdk/linux-fb/gdkgc-fb.c:
6710         Call _gdk_fb_gc_calc_state() on any gc state change.
6711
6712         * gdk/linux-fb/gdkglobals-fb.c:
6713         Add _gdk_fb_screen_gc
6714                 
6715         * gdk/linux-fb/gdkdrawable-fb2.c:
6716         _gdk_fb_gc_calc_state() calculates best functions
6717         for the GC state and depth.
6718         Moved bpp specialized code to separate functions.
6719         Added optimized 24 bpp AA draw_drawable.
6720
6721         * gdk/linux-fb/gdkevents-fb.c:
6722         Silence gcc warning.
6723
6724         * gdk/linux-fb/gdkimage-fb.c:
6725         Use _gdk_fb_screen_gc
6726
6727         * gdk/linux-fb/gdkwindow-fb.c:
6728         Init and use _gdk_fb_screen_gc
6729
6730         * gdk/linux-fb/mitypes.h:
6731         Remove unused types.
6732
6733 2000-11-14  Havoc Pennington  <hp@pobox.com>
6734
6735         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6736         to pixels
6737
6738 2000-11-14  Havoc Pennington  <hp@pobox.com>
6739
6740         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6741
6742         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6743         unknown char, no real reason we were using a variable. 
6744         Remove gtk_text_unknown_char variable. Fix all the text widget
6745         files accordingly.
6746
6747         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6748         since the Unicode spec seems to prefer that character for our
6749         purposes.
6750
6751 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6752
6753         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6754         value of g_getenv() isn't freeable, so g_strdup it.
6755
6756         * modules/input/inuktitut.c: Inuktitut input method.
6757
6758         * modules/input/Makefile.am: Build this.
6759         
6760 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6761
6762         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6763         of gtk programs.
6764
6765 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6766
6767         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6768         reversed > that was causing Home to go to end of previous line.
6769
6770         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6771         modified-keypresses (leave for bindings.)
6772
6773         * modules/input/Makefile.am: Remove useless -export-dynamic
6774         from module LDFLAGS.
6775
6776 2000-11-14  Havoc Pennington  <hp@redhat.com>
6777
6778         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6779         higher.
6780
6781         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6782         account. Also, render rise, underline, background, etc. for
6783         pixbufs as well as text. Also, draw underlines one pixel higher.
6784
6785         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6786         PangoAttribute for the rise, so it gets drawn properly. Also,
6787         add the GtkTextAppearance attribute for pixbuf/widget segments
6788         as well; we should go ahead and have rise, underline, background,
6789         stipple work for those
6790
6791         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6792         Pango
6793
6794 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6795
6796         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6797
6798         * gtk/gtk.def: Update.
6799
6800         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6801         included.
6802         (gtk_rc_get_im_module_file): Use run-time installation directory
6803         on Win32.
6804
6805         * gdk/win32/rc/gdk.rc: Remove.
6806         * gdk/win32/rc/gdk.rc.in: New file.
6807         * gdk/win32/rc/Makefile.am: New file
6808         * gdk/win32/Makefile.am: Corresponding changes.
6809
6810         * gtk/gtk.rc: Remove.
6811         * gtk/gtk-win32.rc.in: New file.
6812         * gtk/Makefile.am: Corresponding changes.
6813
6814         * configure.in: Corresponding changes.
6815
6816         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6817         has a built gtkcompat.h. Developers using CVS code on Win32 can
6818         hand-edit it from gtkcompat.h.in.
6819
6820         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6821         gtkcompat.h from gtkcompat.h.win32.
6822
6823 2000-11-14  Havoc Pennington  <hp@redhat.com>
6824
6825         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6826         to default to GDK_ACTION_MOVE if the drag is within a single
6827         widget. Defaults to GDK_ACTION_COPY between widgets.
6828
6829 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6830
6831         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6832
6833         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6834
6835         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6836         srcdir != builddir
6837
6838         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6839
6840         * configure.in (GTK_VERSION): Up to 1.3.2
6841
6842         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6843         gtkimcontextxim.h
6844
6845         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6846         missing doc comment.
6847
6848 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6849
6850         * modules/linux-fb/basic.c:
6851         Use the glib iconv wrappers.
6852
6853 2000-11-13  Havoc Pennington  <hp@pobox.com>
6854
6855         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6856         still more bugs.
6857
6858         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6859         scroll the GdkWindows before realization.
6860
6861 2000-11-13  Havoc Pennington  <hp@redhat.com>
6862
6863         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6864         where GC didn't always get updated properly
6865
6866         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6867         of fonts instead of setting the entire font
6868
6869         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6870         setting entire font
6871
6872         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6873
6874         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6875         a bunch of individually-settable font attributes. You can still 
6876         use the "font" and "font_desc" args, they just set all the font
6877         attributes at once.
6878
6879 2000-11-13 Elliot Lee <sopwith@redhat.com>
6880
6881         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6882
6883 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6884
6885         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6886         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6887
6888         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6889         work better.
6890
6891 2000-11-13  Havoc Pennington  <hp@redhat.com>
6892
6893         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6894         the module file.
6895
6896         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6897         dest->language
6898
6899         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6900         settings
6901
6902         * gtk/gtktextview.c: Implement object args and setters/getters for
6903         all the aspects of the GtkTextAttributes that are not set from
6904         GtkWidget attributes. This is spacing, justification, margins,
6905         etc.
6906
6907         (gtk_text_view_set_arg)
6908         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6909         args
6910         (gtk_text_view_class_init): Add args for justify, left_margin,
6911         right_margin, indent, and tabs
6912         
6913
6914         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6915         attribute properly
6916
6917         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6918         replace with indent attribute
6919
6920         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6921         PANGO_SCALE
6922
6923         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6924         rearranging code to do that
6925         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6926         i.e. don't subtract the top_margin first, just to keep
6927         all margin-futzing in one place.
6928
6929         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6930
6931         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6932         special case of last line, Pango now handles this itself.
6933         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6934         Y coordinate
6935         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6936         (find_display_line_above): wasn't moving the byte index as it
6937         iterated over lines, so always returned byte 0. Also, port to use
6938         PangoLayoutIter.
6939         (find_display_line_below): same problem as
6940         find_display_line_above. Also, port to use PangoLayoutIter.
6941
6942 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6943
6944         * gdk/linux-fb/*.[ch]:
6945         Massive reindent to gtk+ standard. My hands hurt.
6946
6947         * gdk/linux-fb/gdkcolor-fb.c:
6948         Move GdkColorPrivateFB from inherited to windowing_data
6949
6950         * gdk/linux-fb/gdkcursor-fb.c:
6951         _gdk_cursor_new_from_pixmap made static
6952
6953         * gdk/linux-fb/gdkdnd-fb.c:
6954         GdkDragContextPrivate moved to windowing_data
6955
6956         * gdk/linux-fb/gdkdrawable-fb2.c:
6957         Removed endian.h, use glib endianness macros instead
6958         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6959         and GDK_DRAWABLE_IMPL_FBDATA
6960
6961         * gdk/linux-fb/gdkfont-fb.c:
6962         Add empty gdk_font_load(). Needed for linking of Gtk+.
6963
6964         * gdk/linux-fb/gdkimage-fb.c:
6965         Removed endian.h, use glib endianness macros instead
6966         Moved GdkImagePrivateFB to windowing_data
6967         gdk_image_new_bitmap didn't always allocate enough
6968         memory.
6969
6970         * gdk/linux-fb/gdkinput-ps2.c:
6971         Added semi-working support for MS serial mice.
6972
6973         * gdk/linux-fb/gdkprivate-fb.h:
6974         s/GdkWindowPrivate/GdkWindowObject/
6975         Removed GdkWindowPrivate typedef
6976         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6977         Removed GDK_DRAWABLE_P
6978         Move GdkColorPrivateFB from inherited to windowing_data
6979         Moved GdkImagePrivateFB to windowing_data
6980
6981         * gdk/linux-fb/gdkvisual-fb.c:
6982         Removed some unused debug code.
6983
6984         * gdk/linux-fb/gdkwindow-fb.c:
6985         Use stock cursors instead of including X headers.
6986         s/GdkWindowPrivate/GdkWindowObject/
6987
6988         * gdk/linux-fb/mitypes.h:
6989         Removed unused types.
6990
6991         * modules/linux-fb/basic.c:
6992         Use the pango fribidi wrappers.
6993
6994 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6995
6996         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6997         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6998         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6999         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7000         GEqualFunc where applicable.
7001         
7002         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7003         pango_font_description_equal as changed in pango.
7004         
7005         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7006
7007         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7008
7009         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7010
7011         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7012
7013         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7014
7015         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7016
7017         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7018         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7019
7020         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7021         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7022
7023 2000-11-12  Havoc Pennington  <hp@pobox.com>
7024
7025         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7026         dir to datadir/gtk+-2.0/demo
7027
7028         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7029         sorts of text widget and Pango font bugs. Urgh.
7030
7031         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7032
7033         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7034         tree that you should double click to see the demo. Fix 
7035         types of variables to reflect changed return values from 
7036         GtkTreeStore and GtkTreeViewColumn constructors.
7037
7038         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7039         newly-created buffer to prepare for GObject semantics
7040
7041         * gtk/testtext.c: don't leak the buffer with GObject semantics
7042
7043         * gtk/testtextbuffer.c: ditto
7044         
7045 2000-11-12  Havoc Pennington  <hp@pobox.com>
7046
7047         Rename this testgtk to gtk-demo to avoid confusion, and 
7048         install it so people can use it as a supplement to 
7049         the documentation.
7050         
7051         * demos/gtk-demo: Moved from demos/testgtk
7052
7053         * demos/testgtk: Removed
7054
7055         * configure.in: make Makefile in gtk-demo
7056         
7057         * demos/gtk-demo/Makefile.am: Install sample source to 
7058         datadir/gtk-demo (maybe there's a better place?), and 
7059         rename the binary to gtk-demo
7060         
7061         * demos/gtk-demo/main.c (load_file): Load installed sample
7062         source if source isn't found in pwd.
7063
7064 2000-11-09  Havoc Pennington  <hp@pobox.com>
7065
7066         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7067         argument to set the char displayed when visibility == FALSE
7068         (gtk_entry_create_layout): If !entry->visible, replace 
7069         all chars with the "invisible char"
7070
7071         * gtk/testgtk.c: Test the invisible_char deal
7072         
7073 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7074
7075         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7076         can't get a native font in the right encoding.
7077
7078 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7079
7080         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7081         respectively.
7082
7083 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7084
7085         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7086         Fix warning when moving between paragraphs.
7087
7088         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7089         delete => delete_from_cursor, insert => insert_at_cursor
7090
7091 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7092
7093         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7094
7095         * modules/input/imthai-broken.c: A Thai input method for use if
7096         Thai keys are really generating Latin1 keysyms.
7097
7098         * modules/input/Makefile.am: Build these.
7099
7100 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7101
7102         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7103         g_filename_{to,from}_utf8 now takes an extra parameter.
7104
7105         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7106         strftime into UTF-8.
7107
7108         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7109         calendars.
7110
7111         (gtk_calendar_paint_day_names): Draw day names in the right 
7112         place.
7113         
7114 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7115
7116         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7117         problem with using result of g_get_charset() backwards -
7118         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7119
7120         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7121         negative min_width/height and max_width/height to
7122         mean "requisition"; this allows setting a window
7123         to be user-resizable in only one direction easily.
7124
7125         * gtk/testgtk.c (create_main_window): Remove hard-coded
7126         usize - set a default size in the vertical direction.
7127
7128 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7129
7130         * gtk/gtkrange.c: Add some missing casts. Support 
7131         2 and 3 button clicks on the arrows to mean 
7132         "move by pages" and "jump to end". (Like gtkspinbutton)
7133
7134 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7135
7136         * gdk/win32/makefile.msc : reflect build module changes
7137
7138         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7139         from GdkPixmap*, cast implementation member instead.
7140
7141         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7142         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7143         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7144         more Gdi functions return value checking. 
7145         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7146         GdkImagePrivateWin32 *.
7147
7148         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7149         menus useable again. Add #pragma message to keep reminded on this issue.
7150         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7151         windows. This allows to enable backing store on Win32!
7152
7153         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7154         in drawable is of impl type. Correct specific type checks appropriate.
7155  
7156         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7157         GDK_WINDOW_DESTROYED before allocating new resources.
7158
7159         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7160
7161         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7162         (gdk_window_foreign_new) initialize parent handle.
7163         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7164
7165         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7166         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7167         problems (e.g. main buttons in testgtk). 
7168
7169 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7170
7171         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7172         gtk_widget_activate for GDK_Return.
7173
7174         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7175         of preedit cursor position.
7176
7177 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7178
7179         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7180         static.
7181
7182 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7183
7184         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7185         out support for multiple locales; that simple doesn't
7186         work reliably with current Xlib
7187
7188         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7189         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7190         Add support for positioning the cursor within the preedit string.
7191
7192 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7193
7194         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7195         at XIM input method module.
7196
7197         * gtk/gtktextview.c: Check for bindings after passing
7198         events to im context filter.
7199
7200 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7201
7202         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7203         empty attribute lists properly.
7204
7205 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7206
7207         * gtk/queryimmodules.c (main): Return non-zero exit
7208         status if errors were encountered querying any
7209         modules.
7210
7211         * modules/input/Makefile.am (moduledir): remove
7212         leftover bin program target.
7213
7214         * docs/make-todo: Fix typo in error message.
7215
7216 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7217
7218         * configure.in: Add modules/input/Makefile
7219
7220 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7221
7222         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7223         don't include gtkthemes.h.
7224
7225         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7226         to point
7227
7228         * gtk/Makefile.am: Add new .c and .h files, build 
7229         gtk-query-immodules and use it to create a gtk.immodules
7230         file for use of test programs.
7231
7232         * gtk/gtkpreview.c: remove extra blank line.
7233
7234 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7235
7236         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7237         Add the ability to add extra tables beyond the default
7238         one, and also the ability to have compose sequences 
7239         that are prefixes of other compose sequences. 
7240
7241         * gtk/gtkimcontextsimple.c: Export a preedit string which
7242         consists of possible candidates for keystrokes that have
7243         been entered but not yet committed.
7244
7245         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7246         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7247
7248         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7249         Add a function to add input-method switching menu items
7250         to a menu.
7251
7252         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7253         when switching input methods.
7254
7255         * gtk/gtkimcontextsimple.[ch]: Change the format of
7256         the compose table to allow compose tables of different
7257         lengths / sequence.
7258
7259 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7260
7261         * gtk/gtkimmodule.[ch]: Support routines for loading
7262         GtkIMContext implementations dynamically at runtime.
7263
7264         * modules/input/imcyrillic-translit.c: A sample input
7265         method (based on GtkIMContextSimple with an extra table),
7266         which demonstrates preedit strings and the module
7267         system for input modules
7268
7269         * gtk/queryimmodules.c: Program to query the available
7270         input modules and write the results into a file.
7271          
7272         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7273         extra config options "im_module_file" (cache file for
7274         input method modules), and "im_module_path" - path
7275         to look for modules when generating cache file.
7276
7277         This doesn't scale.
7278
7279 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7280
7281         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7282         generic code from gtkthemes into a new abstraction
7283         GtkModule which has the logic for implementing
7284         a loadable module which implements a number of 
7285         GObject types.
7286
7287 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7288
7289         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7290         a class into an interface  
7291         
7292         * gtk/gtkoldeditable.[ch]: Move the old editable
7293         implementation into here, so legacy widgets can
7294         still rely on the implemenation. GtkOldEditable
7295         exports GtkEditable. Make selection handling
7296         code use new text conversion functions (and
7297         handle UTF-8 as a side-effect). Use GtkClipboard
7298         for CLIPBOARD.
7299
7300         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7301         Adopt to match above changes.
7302
7303         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7304         avoid GtkOldEditable implementation. Restructure
7305         to reduce number of places that modify state directly.
7306         Move to GtkBindingSet. Display the preedit string.
7307         Queue recomputation of PangoLayout and scroll position
7308         to improve effiency of doing complex changes naively.
7309         Add a menu with cut/copy/paste and input method selection.
7310
7311 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7312
7313         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7314         to set preedit string and attributes; display preedit string by
7315         inserting string and attributes at cursor when creating the
7316         GtkTextLineDisplay.
7317
7318         * gtk/gtktextlayout.c: Move all conversions between byte
7319         positions in PangoLayout and GtkTextIter into new functions
7320         line_display_iter_to_index/index_to_iter that properly
7321         handle the preedit string.
7322
7323         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7324         it to return const char * (eventually will end up
7325         as GCONST char *, most likely.)
7326
7327         * gtk/gtktextview.[ch]: Handle the preedit string, call
7328         gtk_im_context_reset() as necessary, add a menu to switch
7329         input methods.
7330         
7331         * gtk/gtktextlayout.[ch]: Remove useless
7332         gtk_text_layout_get_log_attrs() function.
7333
7334 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7335
7336         * gdk/gdk.def
7337         * gtk/gtk.def: Update.
7338
7339         * gdk/win32/*.c: Add last argument to g_type_register_static()
7340         calls.
7341
7342         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7343
7344         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7345         generated by older wheel mouse drivers. Get the correct y
7346         coordinate from WM_MOUSEWHEEL messages.
7347
7348         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7349         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7350         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7351         Debugging functions.
7352
7353         * gdk/win32/gdkprivate-win32.h: Declare them.
7354
7355         * gdk/win32/gdkinput-win32.h: Add declaration for
7356         gdk_input_window_destroy().
7357
7358         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7359
7360 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7361
7362         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7363         function to help handle keeping things in sync.
7364
7365 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7366
7367         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7368         BOXED marshallers.
7369
7370         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7371         (gtk_list_store_class_init): use the new BOXED marshallers.
7372
7373         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7374         new_with_values to new_with_types.
7375         (gtk_tree_store_get_column_type): add this.
7376         (gtk_tree_store_class_init): use the new BOXED marshallers.
7377
7378         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7379         mirror some POINTER marshallers.
7380
7381 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7382
7383         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7384         allow more interesting iterators.  Also, made the lifecycle of
7385         iterators more explicit.
7386
7387         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7388
7389         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7390         types.
7391
7392 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7393
7394         * demos/testgtk/menus.c:
7395         Changes to make the new testgtk compile after
7396         gtk_menu_append was removed.
7397
7398         * gdk/linux-fb/gdkdrawable-fb2.c
7399         (gdk_fb_get_depth, gdk_fb_get_visual,
7400         gdk_drawable_impl_fb_class_init): Implement
7401         these drawable functions. Now GtkImages work again.
7402
7403         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7404
7405         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7406         
7407         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7408         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7409         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7410         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7411
7412 2000-11-08  Havoc Pennington  <hp@pobox.com>
7413
7414         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7415         visible_set args, don't know where these had gone, I thought they
7416         used to be there
7417
7418         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7419         now we can test the feature and see that it's totally broken.
7420
7421 2000-11-08  Havoc Pennington  <hp@pobox.com>
7422
7423         Make DND copy pixbufs and tags when source and target share a 
7424         tag table.
7425         
7426         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7427         in-process GTK_TEXT_BUFFER_CONTENTS target
7428         (gtk_text_view_drag_data_received): Paste from
7429         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7430
7431 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7432
7433         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7434         API changes.
7435
7436         * gtk/gtkmenu.c: Add support for scrolling menus.
7437         Remove gtk_menu_append/prepend/insert, these have been moved to
7438         gtkcompat.h as #defines.
7439
7440         * gtk/gtkcompat.h.in:
7441         Add compatibility #defines for gtk_menu_append/prepend/insert
7442
7443         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7444         GtkMenuPositionFunc gets an extra argument push_in.
7445         gtk_menu_append/prepend/insert removed.
7446         
7447         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7448         positioning behaviour to fit to scrolling menus.
7449
7450         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7451         into menuitem->submeny. That is wrong, and broke torn
7452         off submenus of torn off menus, since they were unrealized
7453         when the first menu was unrealized.
7454
7455         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7456         gtk_menu_shell_select_item() since these need to be overridden in
7457         GtkMenu.
7458
7459         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7460         positioning behaviour to fit to scrolling menus.
7461         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7462         the current item so that it is prelighted when the menu pops up.
7463         This is a workaround to the fact that the menu doesn't get the
7464         initial enter event (due to grabs).
7465
7466         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7467         s/gtk_menu_append/gtk_menu_shell_append/
7468
7469         * gtk/gtknotebook.c:
7470         s/gtk_menu_insert/gtk_menu_shell_insert/
7471
7472         * gtk/testgtk.c (create_menu, create_menus):
7473         Create the first menu with 50 items so that menu scrolling
7474         can be tested.
7475         
7476         
7477         Patch from Jonathan Blandford  <jrb@redhat.com>
7478
7479         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7480         system to handle size requests.  First, we ask what the size of
7481         the toggle is.  Then, when allocating the size, we allocate the
7482         toggle_size first.  This way we can have multiple menu-item
7483         classes w/o needing a seperate class for each.
7484
7485         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7486         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7487
7488         * gtk/gtkcheckmenuitem.c
7489         (gtk_check_menu_item_toggle_size_request): New function to handle
7490         the toggle size-request.
7491
7492 2000-11-07  Havoc Pennington  <hp@redhat.com>
7493
7494         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7495         Half-ass somewhat fix this function, so that scrolling to the
7496         insertion point works. Pango hacking is in the future to really
7497         fix it.
7498
7499         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7500         length of data, no longer used.
7501
7502         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7503         method contents in here, get rid of destroy method
7504         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7505         that were backward. Remove debug spew.
7506         (cut_or_copy): Make the clipboard work with insert_range to
7507         preserve tags and pixbufs, not just the primary selection.
7508
7509 2000-11-07  Havoc Pennington  <hp@redhat.com>
7510
7511         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7512         to gtk_text_mark_get_visible
7513
7514         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7515         bug that was generating an invalid iterator
7516
7517         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7518         ensure_char_offsets() in front of code placing the iter in an
7519         invalid state.
7520
7521         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7522         make override_location arg const
7523         (paste): Replace the selection if we paste into the 
7524         current selection
7525
7526         * gtk/gtkselection.h: Remove "GtkSelectioData"
7527         (struct _GtkSelectionData): move the definition here.
7528
7529         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7530         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7531
7532         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7533
7534         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7535         (gtk_text_buffer_insert_range_interactive): implement
7536         (gtk_text_buffer_get_tags): Remove, replaced by
7537         gtk_text_iter_get_tags()
7538
7539         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7540         limit parameter, to avoid infinite linear scan.
7541         (gtk_text_iter_backward_search): Add search limit
7542         (gtk_text_iter_forward_find_char): Add search limit
7543         (gtk_text_iter_backward_find_char): Add search limit
7544
7545 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7546
7547         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7548         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7549         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7550         gdk/linux-fb/gdkwindow-fb.c:
7551         use g_object_new() instead of g_type_create_instance() which
7552         is a private function for fundamental type implementations.
7553
7554         * gdk/linux-fb/gdkinput-ps2.c:
7555         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7556         instead just store the current modifier state. Add a (somewhat broken)
7557         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7558         Rename exported function gdk_input_ps2_get_mouseinfo to
7559         gdk_input_get_mouseinfo.
7560
7561         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7562         gdk/linux-fb/gdkwindow-fb.c:
7563         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7564         
7565
7566 2000-11-02  Havoc Pennington  <hp@redhat.com>
7567
7568         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7569         use stock buttons. Should be 100% source compatible, appropriate
7570         filesel fields now point to dialog->vbox and dialog->action_area.
7571         On the bizarre side, dialog->action_area and filesel->action_area
7572         are not the same widget.
7573         (gtk_file_selection_init): Put some padding around the selection
7574         entry, so it isn't touching the GtkDialog separator.    
7575
7576         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7577         use stock buttons, etc. Should also be source compatible.
7578         Set the dialog default title in _init not _new().
7579         
7580         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7581         Use stock buttons; don't put a button box inside the existing
7582         dialog button box. Don't bother with push/pop colormap anymore.
7583
7584         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7585         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7586         for message dialog, and necessary for the font selection and color
7587         selection with help and apply buttons.
7588         
7589         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7590         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7591         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7592         between buttons, put less padding around the action area.
7593         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7594         This will also exit the loop if the widget is hidden.
7595         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7596         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7597         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7598         special-case delete event.
7599
7600         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7601         formatting
7602         
7603 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7604
7605         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7606         button to temporarily disable position recording in the
7607         "saved position" test.
7608
7609 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7610
7611         * gtk/gtkthemes.c: added compat code that temporarily implements
7612         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7613         going to be revamped by owen's upcoming GtkModule patches, but
7614         untill then people want gtk to build, right? ;)
7615
7616 2000-11-04  Havoc Pennington  <hp@pobox.com>
7617
7618         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7619         list
7620
7621         * docs/Changes-2.0.txt: Add note about
7622         gtk_container_get_toplevels()
7623
7624         * gtk/gtktextview.h: formatting
7625         
7626         * gtk/gtktextview.c: don't start descriptions with "Returns",
7627         confuses gtk-doc
7628
7629 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7630
7631         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7632         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7633
7634 2000-11-03  Havoc Pennington  <hp@redhat.com>
7635
7636         * gtk/gtktexttagtable.c: Docs
7637         (gtk_text_tag_table_size): return a signed int
7638
7639         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7640         (gtk_text_tag_event): make the event_object a GObject
7641
7642         * gtk/gtktextview.c: Write API docs for all functions.
7643
7644         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7645         for gtk_text_view_get_window_type() called on one of the private
7646         windows.
7647
7648         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7649         directly, call get_buffer() which demand-creates a default
7650         buffer. So gtk_text_view_new() can be used to create a view with a
7651         default buffer in it, if you just want an empty text box users can
7652         put data in. Useful for GUI builders also.
7653
7654 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7655
7656         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7657         the charset encodign portion MUST be in lowercase.
7658         * gtk/gtkrc.az: added file for Azeri language
7659
7660 2000-11-03  Havoc Pennington  <hp@redhat.com>
7661
7662         Get widgets working on the btree/buffer side. Display of them 
7663         still doesn't work.
7664         
7665         * gtk/gtktextview.c: start implementing child widget stuff
7666
7667         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7668
7669         * gtk/gtktextlayout.c: handle embedded widgets
7670
7671         * gtk/gtktextdisplay.c: handle embedded widgets
7672
7673         * gtk/gtktextchild.c: Implement all the child anchor goo
7674
7675         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7676         function
7677
7678         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7679         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7680         creating a child anchor or a pixbuf segment.
7681         (gtk_text_btree_create_child_anchor): new function
7682         (gtk_text_btree_unregister_child_anchor): new function
7683
7684         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7685         allocate_child signal on GtkTextLayout
7686
7687         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7688         values
7689         (gtk_text_iter_get_child_anchor): new function
7690
7691         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7692         default handler for the changed signal, which calls
7693         gtk_text_buffer_set_modified(), instead of just always emitting
7694         changed then calling set_modified() manually. I guess this is
7695         maybe more flexible. It seems logical.
7696
7697 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7698
7699         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7700         now.
7701
7702         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7703
7704 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7705
7706         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7707         been marked static.
7708
7709 2000-11-02  Havoc Pennington  <hp@redhat.com>
7710
7711         * gtk/testgtk.c (create_labels): had a test backward
7712
7713         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7714         fields, so the dest GC ends up with the correct clip origin, 
7715         etc. Fixes a bug where colored labels didn't redraw 
7716         properly.
7717
7718 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7719
7720         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7721         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7722         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7723         Add last argument to t_type_register_static call.
7724         
7725         * gdk/linux-fb/gdkdrawable-fb2.c:
7726         Add last argument to t_type_register_static call.
7727         export the get_image drawable virtual function.
7728
7729         * gdk/linux-fb/gdkimage-fb.c:
7730         Add last argument to t_type_register_static call.
7731         rename gtk_image_get to _gdk_fb_get_image and
7732         export it for use by gdkdrawable-fb2.
7733
7734         * gdk/linux-fb/gdkprivate-fb.h:
7735         export _gdk_fb_get_image.
7736
7737         * gdk/linux-fb/gdkselection-fb.c:
7738         Add new api call stubs.
7739
7740         * gtk/Makefile.am:
7741         Missing ( in linux-fb part.
7742
7743         * modules/linux-fb/Makefile.am:
7744         Must link with gdk_pixbuf or get unresolved symbol.
7745
7746 2000-11-01  Havoc Pennington  <hp@pobox.com>
7747
7748         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7749         GTK_TYPE_TEXT_ITER and BOXED marshallers
7750
7751         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7752
7753         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7754         
7755         * gtk/gtk-boxed.defs: add GtkTextIter
7756
7757         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7758         properly use OBJECT and BOXED
7759
7760 2000-11-01  Havoc Pennington  <hp@redhat.com>
7761
7762         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7763
7764         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7765         before returning it. 
7766         
7767 2000-11-01  Havoc Pennington  <hp@redhat.com>
7768
7769         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7770         Clip the rectangle to be rendered to the drawable, since
7771         get_from_drawable() requires a region within the drawable
7772
7773 2000-11-01  Havoc Pennington  <hp@redhat.com>
7774
7775         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7776         from coordinates.
7777
7778 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7779
7780         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7781         it isn't NULL.
7782
7783 2000-11-01  Havoc Pennington  <hp@pobox.com>
7784
7785         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7786         on a label
7787         (gtk_label_finalize): unref the attr list if any.
7788
7789         * gtk/testgtk.c (create_get_image): close test on second click
7790         (make_message_dialog): close dialog if it exists
7791
7792         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7793
7794         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7795         gdk-pixbuf
7796
7797         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7798         from Pango markup format
7799         (gtk_label_set_markup_with_accel): ditto but with accelerator
7800         parsing
7801
7802         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7803
7804         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7805         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7806         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7807         call gdk_window_get_origin().
7808
7809         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7810         implement GDK_PIXBUF_ALPHA_FULL
7811         
7812 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7813
7814         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7815         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7816         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7817         multiple handlers respectively, instead of only treating the
7818         first handler found (bug reported by owen).
7819
7820 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7821
7822         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7823
7824         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7825
7826         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7827         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7828         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7829
7830         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7831         widget.  Needs writing someday.
7832
7833         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7834         the docs.
7835
7836 2000-10-30  Havoc Pennington  <hp@redhat.com>
7837
7838         * gtk/gtktextview.h, gtk/gtktextview.c:
7839         Rename delete_at_cursor delete_from_cursor, and 
7840         move to move_cursor.
7841
7842 2000-10-30  Havoc Pennington  <hp@redhat.com>
7843
7844         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7845         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7846         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7847         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7848         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7849         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7850         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7851         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7852         gtktexttypes.h, gtktextview.c, gtktextview.h:
7853
7854         Massive reindentation and reformatting. Arg alignment and comments
7855         still need fixing in various places.
7856
7857 2000-10-30  Havoc Pennington  <hp@redhat.com>
7858
7859         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7860         to be named insert_at_cursor and delete_at_cursor so C++ can
7861         handle them.
7862
7863 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7864
7865         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7866         to get a double directory separator in case the home directory
7867         ends with one. This would cause trouble especially on Windows,
7868         where the path will be confused with the syntax for an an UNC
7869         (network share) path \\server\share\path.
7870         (gtk_rc_add_initial_default_files): Ditto.
7871
7872 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7873
7874         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7875
7876         * gtk/gtktextview.c: Use correct marshallers.
7877
7878 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7879
7880         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7881         use new iter stuff, and added all the appropriate signals et al.
7882
7883         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7884         code is internal to gtk only.
7885
7886 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7887
7888         * gtk/gtk.def
7889         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7890         glib-genmarshal etc.
7891
7892 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7893
7894         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7895         parallel builds.
7896
7897 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7898
7899         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7900
7901 2000-10-27  Robert Brady  <robert@suse.co.uk>
7902
7903         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7904         en_GB (British), ia (Interlingua).
7905
7906 2000-10-26  Havoc Pennington  <hp@redhat.com>
7907
7908         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7909
7910         Fixed output of:
7911         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7912         
7913         * gtk/gtktextsegment.c (char_segment_new): rename
7914         (_char_segment_new_from_two_strings): rename
7915         (_toggle_segment_new): rename
7916         
7917         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7918         (make_clipboard_widget): make it static
7919         (text_get_func): static
7920         (text_clear_func): static
7921
7922         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7923         static
7924         (hex_changed): make it static
7925         (hsv_changed): make it static
7926         (opacity_entry_changed): make it static
7927
7928         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7929         (toggle_segment_check_func): rename with _gtk
7930
7931         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7932         (_widget_segment_new): rename
7933         (_widget_segment_add): rename
7934         (_widget_segment_remove): rename
7935         (_widget_segment_ref): rename
7936         (_widget_segment_unref): rename
7937
7938         * gtk/gtktextmark.c (_mark_segment_new): Rename
7939         _gtk_mark_segment_new   
7940
7941 2000-10-26  Havoc Pennington  <hp@redhat.com>
7942
7943         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7944         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7945         types
7946
7947         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7948         marshaller types
7949
7950         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7951         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7952         license on these files.
7953
7954         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7955         work.
7956
7957         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7958         runtime random number different for each tree, instead of 
7959         a constant I made up.
7960
7961 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7962
7963         * gtk/Makefile.am: buncha cleanups, kludged build sources
7964         dependencies with a Makefile: oldest-source-stamp dependancy
7965         for the moment. automake is really fighting us here, with
7966         intentionally not allowing user-defined rules or dependancies
7967         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7968
7969         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7970         to public headers. tehy have a comment stating that they are
7971         "semi-public" aren't included by gtk.h and if enums popup there,
7972         they can be /*< skip >*/-ed.
7973
7974         * gtk/gtktextlayout.h: 
7975         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7976         added LGPL... <SIGH>
7977
7978 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7979
7980         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7981         GtkTreeIter.  Added iterators everywhere.
7982
7983         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7984
7985         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7986
7987         * gtk/gtktreestore.c: Changed to use the iterators.
7988
7989         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7990         iterators tomorrow.
7991
7992         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7993         iterators tomorrow.
7994
7995         * gtk/treestoretest.c: Changed to use iterators.
7996
7997         * demos/testgtk/main.c: Moved to use the new iterator system.
7998
7999 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8000
8001         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8002         localization misbehaviour.
8003
8004         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8005         a useless type without copy/free.
8006
8007         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8008         of GTK_TYPE_CTREE_NODE.
8009
8010 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8011
8012         * gtk/gtksignal.c:
8013         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8014         applicable.
8015
8016         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8017         gtk_selection_data_copy and gtk_selection_data_free
8018         do GtkSelectionData work as params in signals.
8019
8020 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8021
8022         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8023         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8024         couldn't they at least give it a non-standard name?
8025         
8026         * gtk/gtktextlayout.c: arg! yet another implementation of
8027         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8028
8029         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8030         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8031         home. now i know this _is_ a conspiracy.
8032
8033         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8034         ::state-changed.
8035
8036         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8037         (gtk_accel_group_create_add): marshaller signature fixups.
8038
8039         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8040         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8041
8042         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8043         anymore.
8044
8045 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8046
8047         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8048         due to the signal system changes, it wouldn't build currently. to
8049         be fixed soon.
8050
8051         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8052
8053         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8054         so it needs gtk_marshal_VOID__ENUM() instead of
8055         gtk_marshal_NONE__UINT().
8056
8057         * gdk/gdk*.c: adapted type registration functions.
8058
8059         * gtk/gtkbindings.c:
8060         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8061         gone.
8062
8063         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8064
8065         * gtk/gtkobject.c:
8066         (gtk_object_destroy):
8067         (gtk_object_shutdown): fixed recursion guards. basically we have to
8068         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8069         is called during ::destroy, and avoid recursion there.
8070
8071         * gtk/gtktypeutils.c:
8072         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8073         boxed_copy/boxed_free. this needs a more general solution based on a
8074         publically installed code-generator utility.
8075
8076         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8077         glib's gobject has support for that now.
8078         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8079
8080 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8081
8082         * gtk/gtksignal.[hc]:
8083         * gtk/gtkmarshal.[hc]:
8084         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8085         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8086         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8087         care of that.
8088
8089         * *.c: marshaller name fixups.
8090
8091         * gtk/gtkmarshal.list: added a comment briefing the format.
8092
8093 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8094
8095         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8096         compatibility macros here now. more specifically, most of
8097         the API is preserved (yes, _most_, nonwithstanding the
8098         following exceptions listed, the API is stil lHUGE ;)
8099         things that got removed completely:
8100         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8101         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8102         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8103         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8104         gtk_signal_remove_emission_hook().
8105         non-functional functions variants:
8106         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8107         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8108         not supported anymore.
8109         (gtk_signal_compat_matched): new internal function to aid
8110         implementation of the compatibility macros, it  provides
8111         functionality to block/unblock/disconnect handlers based
8112         on func/data.
8113
8114         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8115
8116         * *.c: adaptions to new type registration API signatures.
8117
8118 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8119
8120         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8121
8122 2000-10-25  Robert Brady  <robert@suse.co.uk>
8123
8124         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8125         gdk_property_delete): If window == NULL, assume the root window.
8126         (restoring the behaviour that was in 1.2).
8127         
8128         * gtk/testtext.c (save_buffer): Allow creation of new files when
8129         saving.
8130
8131         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8132         calls to read().
8133
8134 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8135
8136         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8137
8138         * gdk/win32/gdkdrawable-win32.c
8139         * gdk/win32/gdkimage-win32.c
8140         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8141         X11 backend.
8142
8143         * gdk/win32/gdkcc-win32.c
8144         * gdk/win32/gdkcolor-win32.c
8145         * gdk/win32/gdkfont-win32.c
8146         * gdk/win32/gdkinput-win32.c
8147         * gdk/win32/gdkmain-win32.c
8148         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8149
8150 2000-10-24  Havoc Pennington  <hp@redhat.com>
8151
8152         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8153         it a static function
8154
8155         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8156         redraw text when a tag is applied to it.
8157
8158         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8159         (gtk_text_tag_affects_nonsize_appearance): private functions to
8160         see if a tag requires various kinds of redraw/layout to be queued
8161         up.
8162
8163         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8164
8165         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8166         at the start of the buffer, so search works by default
8167
8168         * gtk/gtktextiter.c (lines_match): init match_start always
8169
8170         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8171         function, get iter at a line + a byte index
8172
8173         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8174         to set byte position within a line
8175         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8176
8177 2000-10-23  Havoc Pennington  <hp@redhat.com>
8178
8179         * gtk/testtext.c: Re-enable the "find" dialog
8180
8181         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8182         
8183         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8184         the arguments to gdk_draw_drawable were in the wrong order
8185         (gdk_window_paint_init_bg): This function was ignoring the
8186         init_region, instead of clipping to it, so the entire backing
8187         pixmap was cleared on every begin_paint()
8188         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8189         was in here again, the loop kept using the same GtkWindowPaint
8190         over and over.
8191         (gdk_window_begin_paint_region): Fix a bug where we had two
8192         x_offset instead of x_offset and y_offset
8193
8194         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8195         before we get the image.
8196         (gdk_draw_drawable): get the composite before we draw the drawable.
8197         (gdk_drawable_real_get_composite_drawable): default
8198         get_composite_drawable implementation that returns the drawable 
8199         itself
8200
8201         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8202         get_composite_drawable virtual function
8203
8204         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8205         list-walking bug
8206
8207         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8208         make this work if the source drawable is a GdkDrawableImplX11
8209         instead of a public drawable type. This is really broken; the
8210         problem is that GdkDrawable needs a virtual method get_xid(), but
8211         of course that doesn't work in practice. Enter RTTI.
8212
8213         Also, improve mismatched depth message.
8214
8215         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8216         GdkPixmap
8217
8218         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8219         install _gdk_x11_get_image as our implementation of get_image
8220         
8221         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8222         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8223
8224         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8225         gdk_drawable_get_image
8226
8227         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8228
8229         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8230         get_image
8231
8232         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8233         trailing semicolon after for loop
8234
8235 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8236
8237         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8238         where font_desc for widget's context lagged widget's font_desc by
8239         one step.
8240
8241 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8242
8243         * gdk/win32/gdkgc-win32.c
8244         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8245
8246         * gtk/makefile.mingw.in
8247         * gtk/gtk.def: Updates.
8248
8249         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8250         library.
8251
8252         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8253
8254         * gtk/makefile.msc: Remove
8255
8256         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8257
8258         * gtk/Makefile.am: Add it.
8259
8260         * configure.in: Generate it.
8261
8262         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8263         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8264         something even if not implemented, to satisfy picky MSVC.
8265
8266         Patches by Hans Breuer:
8267         
8268         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8269         SetBkMode() and SetTextAlign() before calling
8270         pango_win32_render().
8271
8272         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8273         Set hcliprgn to NULL after destroying it.
8274         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8275
8276         * gdk/win32/gdkgeometry-win32.c
8277         (_gdk_windowing_window_queue_antiexpose): More effective
8278         implementation.
8279
8280         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8281         depth as default, not the visual's.
8282
8283         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8284         against empty title.
8285
8286         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8287         IMAGE_PRIVATE_DATA.
8288
8289         * gdk/win32/gdkimage-win32.c: Use it.
8290
8291 2000-10-22  Robert Brady  <robert@suse.co.uk>
8292
8293         * configure.in: Check for bind_textdomain_codeset
8294
8295         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8296         present, make use of it.
8297
8298         Add a translatable string "default:LTR" which, if translated
8299         to "default:RTL", will cause the default direction to be
8300         Right-to-Left.
8301
8302         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8303         direction if marked as flippable.
8304
8305         * gtk/gtkhscale.c: Mark widget as flippable.
8306         
8307 2000-10-04  Havoc Pennington  <hp@redhat.com>
8308
8309         * gtk/testgtk.c (create_buttons): create some stock buttons
8310         with the default accel group
8311         (create_image): test some new GtkImage features
8312         (make_message_dialog): test GtkMessageDialog
8313         (create_modal_window): fix someone's bizzarro indentation
8314
8315         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8316         GTK_WIN_POS_CENTER_ON_PARENT. 
8317         Add "destroy with parent" setting, which means the window goes
8318         away with its transient parent.
8319         (gtk_window_get_default_accel_group): get the default accel group
8320         for the window.
8321         (gtk_window_set_destroy_with_parent): set/unset destroy with
8322         parent flag
8323         (gtk_window_read_rcfiles): invalidate icon set caches
8324         after reloading rcfiles 
8325
8326         * gtk/gtkenums.h (GtkWindowPosition): add
8327         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8328         on its parent window when the dialog is mapped for the first time.
8329
8330         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8331         a simple message dialog class
8332         
8333         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8334         handler to emit response signal, and maybe later it would
8335         honor a hide_on_delete flag - though that isn't there yet.
8336         Set border width on the vbox to 2, so we get some padding.      
8337         Use a button box for the action area.
8338         (gtk_dialog_key_press): synthesize a delete event if Esc
8339         is pressed and the GtkWidget key press handler didn't 
8340         handle the escape key.
8341         (gtk_dialog_new_with_buttons): new function creates a dialog
8342         with some default buttons in it.
8343         (gtk_dialog_add_action_widget): add an activatable widget
8344         as a button in the dialog - you can also add a non-activatable
8345         widget by accessing the action area directly.
8346         (gtk_dialog_add_button): add a simple button - stock ID or 
8347         label - to the action area
8348         (gtk_dialog_response): emit response signal
8349         (gtk_dialog_run): block waiting for the dialog, return 
8350         the response. Override normal delete_event behavior, so that 
8351         delete_event does nothing inside gtk_dialog_run().
8352
8353         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8354         emitted when an action widget is clicked or the dialog gets
8355         delete_event
8356
8357         * gtk/gtk.h: add gtkmessagedialog.h
8358
8359         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8360
8361 2000-10-18  Havoc Pennington  <hp@redhat.com>
8362
8363         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8364         where any number of empty lines would get skipped
8365
8366         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8367         edge.
8368
8369         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8370         warning about invalid iterators (explain more thoroughly)
8371         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8372
8373         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8374         big
8375
8376         * demos/*.c: Add error handling
8377
8378         * gtk/gtktextbuffer.c: don't modify const iterators
8379
8380         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8381
8382         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8383         on file load
8384
8385         * gtk/gtkiconfactory.c: Update to reflect addition of error
8386         handling to gdk-pixbuf loaders
8387
8388 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8389
8390         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8391         move to new modularized testgtk.
8392
8393 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8394
8395         * gtk/gtktreeview.c: Draw the arrows correctly.
8396
8397         * gtk/gtktreemodel.c: Added user docs.
8398
8399         * gtk/gtk.h: remove gtktreedatalist.h.
8400
8401         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8402         parent when generating my type.
8403
8404         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8405         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8406
8407 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8408
8409         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8410         GtkTreeModel from object to interface.
8411
8412 2000-10-16  Havoc Pennington  <hp@redhat.com>
8413
8414         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8415         compilation
8416
8417 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8418
8419         * gtk/gtktreeselection.c: Add API documentation to all public
8420         functions.
8421
8422         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8423         functions.
8424
8425 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8426
8427         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8428         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8429         docs to all public functions.
8430
8431         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8432         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8433         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8434         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8435         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8436         issue.
8437
8438 2000-10-14  Robert Brady  <robert@suse.co.uk>
8439
8440         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8441
8442 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8443
8444         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8445         values other then G_TYPE_STRING.
8446         * gtk/gtktreeselection.c: Minor commenting updates.
8447         * gtk/gtktreeview.c: Format updates.
8448
8449 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8450
8451         * README.win32: Update.
8452
8453         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8454         lines that had been deleted by mistake (?).
8455
8456         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8457         also the case fg==white and bg==black (but still not randomly
8458         coloured cursors). Thanks to Wolfgang Sourdeau.
8459
8460         * gdk/win32/*.c: Silence gcc -Wall.
8461
8462         * gtk/gtk.def: Add missing entry points.
8463
8464         Fixes by Hans Breuer:
8465
8466         * gdk/makefile.msc
8467         * gdk/win32/makefile.msc: Update.
8468
8469         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8470         some MSVC thing, presumably), cause breakpoint on failures. Add
8471         GDK_NOR case. Call g_log_set_always_fatal.
8472
8473         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8474         should be pased by reference.
8475         
8476         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8477         
8478         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8479
8480         * gdk/win32/gdkevents-win32.c
8481         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8482
8483         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8484         implementation object.
8485
8486         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8487         not just windows.
8488         
8489         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8490         Use the wrapper object.
8491         
8492 2000-10-06  Havoc Pennington  <hp@redhat.com>
8493
8494         * Makefile.am (SRC_SUBDIRS): contrib subdir
8495
8496         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8497         so it can be used in Xlib version
8498
8499         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8500         tree
8501
8502         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8503         change from 1.0 tree that returns first frame of animation
8504         if the loaded file is an animation.
8505
8506         * contrib: add new directory to hold stuff that comes with GTK+
8507         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8508         
8509         * configure.in: add contrib/*
8510
8511 2000-10-05  Havoc Pennington  <hp@redhat.com>
8512
8513         * demos/testpixbuf-save.c: add pixbuf save test
8514
8515         * demos/Makefile.am: add testpixbuf-save.c
8516
8517 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8518
8519         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8520         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8521         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8522         * gtk/gtktreeselection.[ch]: Replaced
8523         "node_selected"/"node_unselected" signal with "selection_changed"
8524         signal.
8525
8526 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8527
8528         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8529         tree widget.
8530
8531 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8532
8533         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8534         drawing.
8535
8536 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8537
8538         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8539         Move list pointer forwards before removing item from
8540         list. (Crash reported by Salmaso Raffaele)
8541
8542         * gdk/gdkwindow.h: Remove spurious trailing ,
8543
8544         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8545         dependencies on uninstalled libraries, sorry folks.
8546
8547 2000-10-04  Havoc Pennington  <hp@redhat.com>
8548
8549         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8550         gtk/gtkiconfactory.c: Fix copyrights    
8551
8552         * demos/testpixbuf.c: add inline pixbuf test
8553         
8554 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8555
8556         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8557         Add gdk_window_iconify.
8558
8559         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8560         (gdk_window_set_geometry_hints): Add win_gravity
8561         to geometry structure.
8562
8563         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8564         Implement _NET_WM_PING.
8565
8566         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8567         Set _NET_WM_PID on the client leader.
8568
8569         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8570         Handle UTF-8 better.
8571
8572         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8573         UTF-8 better, set _NET_WM_NAME as well. Only set
8574         icon name if it hasn't previously been explicitely 
8575         set.
8576
8577 2000-10-03  Havoc Pennington  <hp@redhat.com>
8578
8579         * gtk/testtextbuffer.c: clean up trailing whitespace,
8580         add extensive tests for tag toggle iteration.
8581         
8582         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8583         distance
8584
8585         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8586         optimize case where the tag root is on level 1
8587         (gtk_text_line_previous_could_contain_tag): attempt to implement
8588         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8589         functionality
8590
8591         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8592         Implement this, though not very efficiently.
8593
8594         * gtk/gtktextiterprivate.h: reformat
8595
8596         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8597         iterator
8598
8599         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8600         this to properly revalidate the iterators.
8601
8602         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8603         properly at the end of the line (and therefore on empty lines)
8604
8605         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8606         maybe we should return a value...
8607
8608 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8609
8610         * config.h.win32: Guard definition of alloca(). glib.h now handles
8611         that.
8612
8613         * gdk/gdk.def
8614         * gtk/gtk.def: Add new entry points.
8615
8616         Changes just to make GTK+ build without errors on Win32. No hope
8617         of it working in its current state, though...:
8618         
8619         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8620         some functions from the X11 backend, just to make GTK+ build.
8621
8622         * gdk/makefile.mingw.in
8623         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8624         number. Add new object files.
8625
8626         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8627         GetMessageTime to get timestamp (where on X11 uses
8628         gdk_x11_get_server_time()).
8629
8630 2000-10-02  Havoc Pennington  <hp@pobox.com>
8631
8632         * gtk/gtktextview.c: text_window_* weren't static and should have
8633         been.
8634         Start work on child widgets; not yet complete, syncing to 
8635         office computer.
8636
8637         * gtk/gtktextchild.h: change this to contain a public interface,
8638         starting work on child interfaces.
8639         * gtk/gtktextchildprivate.h: move private interfaces here
8640
8641         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8642
8643         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8644         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8645         gtk/gtktextmark.c: copyright notices
8646
8647         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8648         internal functions      
8649
8650         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8651         internal function
8652
8653         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8654         Reformatting    
8655
8656 2000-09-30  Havoc Pennington  <hp@pobox.com>
8657
8658         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8659         NULL start/end pointers
8660
8661         * gtk/gtktextbuffer.c: Write some docs
8662         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8663         NULL, so you can just check whether there's a selection.        
8664
8665         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8666         cleanup_line or segments_changed ourselves, it gets done 
8667         in unlink_segment
8668
8669         * gtk/gtktextmark.h:
8670         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8671         
8672         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8673
8674         * gtk/gtktextmark.c: delete some more old Tk cruft
8675
8676         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8677         mark before removing it, so we can emit MARK_DELETED with a valid
8678         pointer.
8679         (gtk_text_buffer_mark_set): hold ref across signal emission
8680
8681         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8682         whining about attempts to delete special marks
8683
8684         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8685         underscore, since it's internal.
8686
8687         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8688         now implemented in terms of iterators in gtktextiter.h
8689
8690         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8691         New function, destructively sets contents of buffer. Also 
8692         a convenient way to clear the buffer by setting text to ""
8693
8694         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8695         multiline string literal
8696
8697         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8698         text changes.
8699
8700         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8701         is not dereferenceable
8702         (gtk_text_iter_forward_lines): fix return value
8703
8704 2000-09-29  Havoc Pennington  <hp@redhat.com>
8705
8706         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8707
8708         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8709         that set border window size to have nicer name
8710         (gtk_text_view_mark_set_handler):  Fix this to have the 
8711         right signature.
8712
8713         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8714
8715         * gtk/testtext.c: Update with API changes, put line numbers on 
8716         both sides.
8717         
8718         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8719         with this
8720
8721         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8722         pixbuf; delete a big block of #if 0 Tk code
8723
8724         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8725         insert_pixmap with insert_pixbuf
8726
8727 2000-09-29  Martin Baulig  <baulig@suse.de>
8728
8729         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8730         confusion with the GdkPixbuf of the GNOME 1.x platform.
8731
8732 2000-09-29  Havoc Pennington  <hp@pobox.com>
8733
8734         * gtk/gtktextview.c: Implement the side windows.
8735
8736         * gtk/testtext.c: Implement simple line numbering in the 
8737         left side window; seems to make scrolling sloooow. Oops.
8738         Also, cursor blink is for some reason causing redraws
8739         of the line numbers. Should investigate...
8740
8741 2000-09-28  Havoc Pennington  <hp@redhat.com>
8742
8743         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8744         scrolling child windows, and draw focus rectangle properly.
8745         
8746         (gtk_text_view_buffer_to_window_coords):
8747         Coordinate transformation to deal with all these freaking windows
8748         and offsets
8749         (gtk_text_view_window_to_buffer_coords): transform the other way
8750
8751         * gtk/testtext.c (create_buffer): Update to match Pango API change
8752
8753         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8754         anonymous tags
8755         (foreach_unref): don't emit remove signal from finalize, just
8756         set tag's parent to NULL
8757
8758 2000-09-26  Havoc Pennington  <hp@redhat.com>
8759
8760         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8761         Fix some warnings       
8762
8763 2000-09-26  Havoc Pennington  <hp@redhat.com>
8764
8765         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8766         headers into the private header list
8767
8768         * Makefile.am (pkgconfig_DATA): install pkg-config files
8769
8770         * configure.in: add pkg-config files
8771
8772         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8773
8774         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8775         outstanding icon caches on theme change.
8776
8777         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8778         important types:
8779
8780         (GtkIconSource): Specification for creating a pixbuf 
8781         appropriate for a direction/state/size triplet from 
8782         a source pixbuf or filename
8783
8784         (GtkIconSet): List of GtkIconSource objects that are used to
8785         create the "same" icon (e.g. an OK button icon), and cache for
8786         rendered icons
8787
8788         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8789         up the icon set for a given stock ID.  GTK maintains a stack of
8790         GtkIconFactory to search, and applications or libraries can add
8791         additional icon factories on top of the stack
8792         
8793         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8794         the set of GtkIconSource specified for a given stock ID into 
8795         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8796         RcStyle, under the specified stock ID.
8797
8798         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8799         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8800         This allows people to theme how prelight, insensitive, etc. are
8801         done.
8802
8803         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8804         icon factories for a style, and return the resulting 
8805         icon set if any.
8806
8807         (gtk_style_render_icon): Render an icon using the render_icon 
8808         method in the GtkStyleClass.
8809
8810         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8811         Use the style for a given widget to look up a stock ID, get the
8812         icon set, and render an icon using the render_icon method 
8813         of the style
8814
8815         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8816         (contains information about a stock item), the built-in stock item
8817         IDs, and functions to add/lookup stock items.
8818
8819         * gtk/stock-icons/*: Stock icons that come with GTK
8820
8821         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8822         a button based on a GtkStockItem
8823         (gtk_button_new_accel): Takes a uline string and accel group, and
8824         installs the accelerator.
8825
8826         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8827         image-display widget.
8828
8829 2000-09-25  Havoc Pennington  <hp@redhat.com>
8830
8831         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8832
8833         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8834         Fix a bug when removing node data, we didn't properly 
8835         re-splice the linked list after removing the data.
8836
8837         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8838         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8839
8840         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8841
8842         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8843         for the layout from the GtkTextTag.
8844
8845         * gtk/gtktexttypes.h: delete tab and search cruft, 
8846         remove g_convert() in favor of GLib version
8847
8848         * gtk/gtktexttypes.c: remove tab implementation from here,
8849         move to Pango
8850
8851         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8852         tab stuff using new PangoTabArray from Pango
8853
8854         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8855         unused border_width stuff
8856
8857 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8858
8859         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8860         glib) and now useless utf_to_latin1() latin1_to_utf()
8861
8862         * gtk/gtktextview.[ch]: Change ::move_insert and
8863         ::delete_text action signals to ::move and ::delete;
8864         create the signals with the right enumeration type,
8865         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8866         C-v bindings, change Home, End to move to beginning/end
8867         of line, Add C-Home C-End to move to beginning/end
8868         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8869         combine ::scroll_text into ::move; use new GtkSelectionData
8870         functions to simplify DND text handling.
8871         
8872         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8873         deletion enumerations here, rename enumeration values to 
8874         be consistently plural.
8875
8876         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8877         for cut/copy/paste and primary selection.
8878
8879         * gtk/gtktextbuffer.[ch]: Remove excess time and
8880         'interactive' arguments from cut/copy/paste;
8881         rename cut to cut_clipboard, etc; remove
8882         gtk_text_buffer_get_clipboard_contents().
8883
8884         * gtk/gtktextlayout.[ch]: Add 
8885         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8886         line ends.
8887
8888         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8889         Functions to set or get a UTF-8 string on the selection
8890         data.
8891
8892         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8893         interfaces.
8894
8895         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8896         created widgets - one of these is useless if we don't.
8897
8898         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8899         a public function clear all targets registered for the
8900         widget.
8901
8902         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8903         Never call gtk_widget_realize() - that was just asking
8904         for bizarre side-effects.
8905
8906         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8907         gdk_selection_owner_set even if the widget is the
8908         same so that we reliably update the timestamp on
8909         the server.
8910
8911         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8912         gdk_x11_get_server_time() function.
8913         
8914         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8915         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8916         Add some tricky filtering on serial numbers for
8917         selection clear events to fix up long-standard
8918         race condition FIXME's in gtkselection.c.
8919
8920         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8921         routines to convert from utf8 to compound text or
8922         STRING and from a text property to UTF-8.
8923
8924         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8925         a convenience function gdk_get_current_event_time().
8926
8927         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8928         and free selection_data->data properly
8929
8930 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8931
8932         * gtk/gtkthemes.c: Remove some unecessary includes.
8933
8934 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8935
8936         * gtk/gtktextdisplay.c
8937         * gtk/gtktextlayout.c
8938         * gtk/gtktexttag.c
8939         * gtk/gtktexttag.h
8940         * gtk/testtext.c: Change the overstrike property to strikethrough,
8941         to closer match pango.
8942
8943 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8944
8945         * gtk/gtktextview.c: Fix up visibility so that focus,
8946         cursor_visible and blink interact properly.  Reenable cursor blink
8947         which had been roughly disabled. Make blink and focus
8948         properly per-view.
8949
8950         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8951         Add a flag for whether to display insertion cursor and
8952         a function to set the flag.
8953
8954         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8955         get_line_y() to get_line_yrange(), to be a bit more generally
8956         useful.
8957
8958 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8959
8960         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8961           do stop_navigating_submenu, to clear last timeout properly.
8962           Also in gtk_menu_motion_notify move ignore_enter above
8963           the conditional to make it always happen as suggested by Owen
8964
8965 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8966
8967         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8968
8969         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8970         w32api headers.
8971
8972         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8973         declarations.
8974
8975         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8976         (gdk_win32_get_colormap): A line had been deleted by mistake.
8977
8978         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8979         (gdk_event_translate): Handle more virtual keycodes to be able to
8980         generate GDK events for Control-comma, Control-period, etc.
8981
8982         * gtk/gtk.def: Add some missing entry points.
8983
8984 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8985
8986         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8987         Doc comment fixing. (Mostly non-matching parameter names.)
8988
8989         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8990         comments a little to avoid looking like a doc comment.
8991
8992         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8993         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8994         conversions be changed to GError?)
8995
8996         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8997         Move private #defines into .c file.
8998
8999         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9000         order of argument addition, remove duplicates.
9001
9002         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9003         parent class is FrameClass, not BinClass.
9004
9005         * gtk/gtk.h: Add gtkinvisible, which was missing.
9006         (It's occasionalyl useful for client apps, if seldom.)
9007
9008         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9009         #define.
9010
9011 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9012
9013         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9014         coordinates when creating window, instead of GDK-space
9015         coordinates. (Avoid BadValue on too large windows.)
9016
9017 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9018
9019         * configure.in (use_mmx_asm): Remove conftest* after use along the
9020         lines of AC_TRY_COMPILE.        
9021         
9022         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9023         of g_dirname, which is deprecated.
9024         (gtk_rc_parse_any): Removed calls to
9025         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9026
9027         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9028         Removed calls to g_hash_table_{freeze,thaw}, as they are
9029         deprecated now.
9030
9031         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9032         instead of g_basename.
9033         
9034 2000-09-04 Elliot Lee <sopwith@redhat.com>
9035         
9036         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9037         ANSI warning.
9038
9039 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9040
9041         * gtk/gtkwidget.h:  Add some documenting comments about 
9042           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9043           just as owen said on irc.
9044
9045         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9046           set HAS_DEFAULT.  Only set it if there isn't another window
9047           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9048           it if the widget is not the focused window with RECEIVES_DEFAULT.
9049           This fixes weird double default bugs in dialogs which has things
9050           call gtk_window_set_default at times.
9051
9052 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9053
9054         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9055         Nils Barth and David Santiago to improve submenu
9056         navigation. The patch does this by creating a triangular
9057         region from the point where the pointer leaves the
9058         menu to the submenu.  While the pointer is in
9059         that region and a timeout has not expired, events 
9060         that would cause the active submenu to change are
9061         ignored.
9062
9063 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9064
9065         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9066         moving a toplevel window immediately after sizing it would
9067         result in it being sized back to the old size since 
9068         impl->width, impl->height aren't updated until we hear
9069         back from the server. There is still a (longstanding) bug
9070         here that gdk_window_get_size() will give the wrong size
9071         until we do hear back.
9072
9073 2000-08-31  Havoc Pennington  <hp@redhat.com>
9074
9075         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9076         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9077         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9078         Rename GtkTextStyleValues to GtkTextAttributes
9079
9080 2000-08-31  Havoc Pennington  <hp@pobox.com>
9081
9082         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9083         for rapid testing whether an iterator is the end iterator
9084         (gtk_text_btree_new): init end line cache
9085         (gtk_text_line_is_last): use fast cached line to 
9086         see if we're the last line.
9087         (get_last_line): use cached line here too, should 
9088         speed up some random unrelated code.
9089         
9090 2000-08-30  Havoc Pennington  <hp@pobox.com>
9091
9092         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9093         signals.
9094
9095         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9096         delete_text signals. This allows the signals to be used for
9097         implementing undo.
9098
9099         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9100         provide "interactive" argument when emitting insert_text or
9101         delete_text signal.
9102         
9103 2000-08-30  Havoc Pennington  <hp@pobox.com>
9104
9105         * gtk/gtktextbuffer.c: Docs
9106
9107 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9108
9109         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9110         from switch statements, since Tor removed the enumeration
9111         value.
9112         
9113         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9114         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9115
9116 2000-08-29 Elliot Lee <sopwith@redhat.com>
9117         * */*.h: Use G_GNUC_CONST.
9118
9119 2000-08-27  Havoc Pennington  <hp@pobox.com>
9120
9121         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9122         minor indentation fixes, inserted some FIXME about stuff I
9123         realized was broken while documenting it.
9124         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9125         GTK convention  
9126
9127 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9128
9129         * gtk/testgtk.c (create_styles): Fix double free of
9130         font desc.
9131
9132 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9133
9134         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9135         
9136         * gtk/testgtk.c (create_styles): Add a test for modifying
9137         the style through gtk_widget_modify_*.
9138
9139         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9140         a function to get the current modifier style.
9141
9142         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9143         of the passed in GtkRcStyle instead of ref'ing it.
9144
9145         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9146
9147 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9148
9149         * gdk/gdkimage.h
9150         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9151         shared memory image+pixmap GdkImage type, or
9152         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9153         I am dropping that.
9154
9155         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9156         actually call gtk_init_abi_check(), passing also
9157         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9158
9159         * gtk/gtk.def
9160         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9161         New functions, used to check that the GTK+-using code has been
9162         compiled using the correct compiler and switches. In particular,
9163         with gcc one has to use the -fnative-struct switch as GTK+ is
9164         compiled with that.
9165
9166 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9167
9168         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9169         ->prev fields when merging lists. (Found simultaneously
9170         by Pawel Salek and Jakub Jelinek)
9171
9172 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9173
9174         * gdk/gdk.def
9175         * gtk/gtk.def: Add missing entries.
9176
9177         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9178         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9179
9180         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9181         function. Dummy implementation at this point.
9182
9183         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9184         rules. Undefine GTK_COMPILATION when compiling the test programs.
9185         
9186         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9187
9188 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9189
9190         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9191         to convert back and forth from UTF-8 and the "system" (or "current
9192         locale") charset when necessary. Indentation/spacing cleanup.
9193
9194 2000-08-10  Havoc Pennington  <hp@redhat.com>
9195
9196         * Makefile.am (snapshot): Change the format of the snapshot
9197         version to match glib
9198
9199         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9200         from EXTRA_DIST since it doesn't seem to exist
9201
9202 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9203
9204         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9205         version of the directory name (not the UTF-8 one) when building
9206         the path name to stat().
9207
9208 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9209
9210         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9211         PANGO_ATTR_SHAPE set.
9212
9213 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9214
9215         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9216         Peter Osterlund to simplify the code while keeping the
9217         functionality the same.
9218
9219 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9220
9221         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9222         is_viewable() test further inside the function, since removing the 
9223         window from the redraw list without clearing ->update_area
9224         was also very broken.
9225
9226 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9227
9228         * configure.in: Check for <unistd.h>.
9229
9230 2000-08-01  Martin Baulig  <baulig@suse.de>
9231
9232         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9233         to display the message that this is a development version of GTK+.
9234
9235 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9236
9237         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9238         was depending on widget->allocation instead of the width of text_area,
9239         which was incorrect for subclasses like GtkSpinButton.
9240
9241         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9242         with width == 1 tests that should be width == -1.
9243
9244 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9245
9246         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9247         (broken, Elliot, every single window blank on X) custom code with call
9248         to gdk_window_is_viewable() which a) prevents code duplicate and
9249         b) works. 
9250
9251 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9252
9253         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9254         to get the GDK_PARENT_ROOT() macro to work.
9255         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9256         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9257         of, windows that aren't shown.
9258         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9259         pointer grab stuff.
9260
9261 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9262
9263         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9264           s/gtk_main_iteration/g_main_iteration/
9265
9266           Did this already in change:
9267                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9268           don't know how it got reverted.
9269
9270 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9271
9272         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9273         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9274
9275         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9276         not gdk_pixbuf.
9277
9278 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9279
9280         * configure.in,po/{sp,sr}.po: Added Serbian files
9281
9282 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9283
9284         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9285
9286         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9287         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9288         GIOChannel implementation.
9289
9290         * gdk/win32/gdkinput.c
9291         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9292
9293         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9294         definition to match prototype.
9295
9296         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9297
9298 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9299
9300         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9301         function, to allow handling image formats that cannot be detected
9302         by looking at content alone.
9303
9304 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9305
9306         * docs/tutorial/*.gif *.jpg *.eps
9307           Update these to the same look-n-feel.
9308           Why does including images in DocBook suck so badly?
9309
9310 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9311
9312         * gtk/gtktable.c: applied patch from Phil Thompson
9313         <phil@river-bank.demon.co.uk> that enables space settings for
9314         the last row/columns as well.
9315
9316 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9317
9318         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9319         updates the license headers to the GNU Lesser General Public License,
9320         as well as updating the copyright year to 2000.
9321
9322 2000-07-26  Robert Brady  <rwb197@zepler.org>
9323
9324         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9325           and po/Makefile, was installing and looking for them under gtk20
9326           and gtk2 respectively.
9327
9328 2000-07-25  Havoc Pennington  <hp@redhat.com>
9329
9330         * gtk/testtext.c: Comment out some stuff that depends on the rest
9331         of my patches.
9332
9333 2000-07-25  Havoc Pennington  <hp@redhat.com>
9334
9335         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9336         buffer
9337
9338 2000-07-25  Havoc Pennington  <hp@redhat.com>
9339
9340         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9341         widget changes.
9342
9343         * gtk/gtktextview.h: To be consistent with usage of "line"
9344         throughout the API to mean "newline-terminated thingy", change
9345         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9346         to MOVEMENT_LINE.
9347
9348         (GtkTextView): Add flags for default editability, and whether to
9349         show the cursor. Add functions to get/set that. Add 
9350
9351         (gtk_text_view_get_iter_location): new function
9352
9353         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9354         gtktextlayout.h
9355         (g_convert): Add g_convert temporarily, will go in glib in a bit
9356         
9357         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9358         GtkTextTagTableForeach instead of brokenly using GHFunc.
9359         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9360
9361         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9362         moved to public header.
9363
9364         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9365         "invisible", since "elide" was a bad name.
9366         (gtk_text_tag_get_priority): Added
9367
9368         (GtkTextStyleValues): put this in public header, along with
9369         functions to use it.
9370
9371         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9372         longer include gtktextbtree.h.
9373
9374         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9375         gtk_text_mark_deleted
9376
9377         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9378         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9379         to make this possible. Now we only need to install
9380         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9381         (However the Makefile.am isn't changed yet because of the
9382         logistics of merging gtk-hp-patches piecemeal)
9383
9384         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9385         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9386         gtk_text_iter_get_line is now used in the public API for a
9387         different purpose.
9388
9389         * gtk/gtktextiter.h: Clean up function names to be more
9390         consistent. Always call char offset "offset" and byte index
9391         "index". A "line" is always a line number. 
9392
9393         (gtk_text_iter_is_last): new function, more efficient than 
9394         the existing way to check
9395         (gtk_text_iter_is_first): new function, also more efficient
9396
9397         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9398
9399         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9400         gtk_text_iter_forward_char, etc.
9401
9402         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9403         forward_find_tag_toggle, since this isn't a linear search
9404
9405         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9406
9407         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9408         New functions, search for a buffer substring.
9409
9410         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9411         interactive and default editable (since we need to store that info
9412         until we receive the selection data).
9413
9414         Remove all the _at_char and at_line etc. versions of functions;
9415         only have iterator versions.
9416
9417         Add _interactive() versions of functions, that consider the
9418         editability of text. (FIXME add interactive flag to the 
9419         insert/delete signals per Darin's suggestion)
9420
9421         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9422         tag table if necessary
9423
9424         Remove declaration of gtk_text_buffer_get_iter_from_string
9425
9426         (_gtk_text_buffer_get_btree): private/internal function, added.
9427         
9428
9429         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9430         (gtk_text_line_is_last): new function
9431
9432 2000-07-25  Havoc Pennington  <hp@redhat.com>
9433
9434         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9435         using GtkProgressBar. See Changes-2.0.txt for details.
9436
9437         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9438         "pulse_step" which are the equivalent of
9439         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9440         Implement new API.
9441         
9442         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9443         (use_text_format) to mark whether text set on the progress bar is
9444         a format string. Deprecate entire GtkProgress interface.
9445
9446         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9447         (gtk_progress_build_string): make this a no-op if use_text_format
9448         is FALSE
9449
9450         * docs/Changes-2.0.txt: Describe progress bar changes.
9451
9452 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9453
9454         * Makefile.am: Include the build directory.
9455
9456         * configure.in: Generate build/Makefile, build/win32/Makefile,
9457         gdk/, gdk/win32/, and gtk/makefile.mingw.
9458
9459         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9460         Add GETTEXT_PACKAGE.
9461         
9462         * gdk/gdk.def
9463         * gtk/gtk.def: Updates.
9464
9465         * gdk/gdkfont.h
9466         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9467         need them any longer.
9468
9469         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9470
9471         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9472         PANGOWIN32_LIBS and gdk_pixbuf.
9473
9474         * gdk/win32: Compiles, but no doubt doesn't work at all.
9475
9476         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9477
9478         * gdk/win32/gdkinput.c: New file, temporarily.
9479         
9480         * gdk/win32/gdkinput-win32.h: New file
9481
9482         * gdk/win32/gdkinputprivate.h: Remove.
9483
9484         * gdk/win32/gdkpango-win32.c: New file.
9485
9486         * gtk/makefile.mingw.in: New file
9487
9488         * gtk/makefile.cygwin: Removed
9489         
9490         * gtk/Makefile.am: Update accordingly.
9491
9492         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9493         made externally visible.
9494
9495         * gtk/gtkmain.c: Use it.
9496         
9497         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9498         is enough.
9499
9500         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9501
9502 2000-07-24 Elliot Lee <sopwith@redhat.com>
9503         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9504         individual backends already.
9505         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9506         again. Yes, there really is a good reason for this, if you are using the gdkregion
9507         internals, and if you're not, why do you care?
9508         * gdk/gdkwindow.c: Fix inverted condition
9509         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9510         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9511         * gtk/gtkrange.c: Redraw trough when moving.
9512         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9513         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9514
9515 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9516
9517         * configure.in: Check for mkstemp and sigsetjmp. Output
9518         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9519
9520         More work on GDK for Win32. Still in an intermediate state.
9521
9522         * gdk/makefile.cygwin
9523         * gdk/win32/makefile.cygwin: Removed.
9524         
9525         * gdk/makefile.mingw.in
9526         * gdk/win32/makefile.mingw.in: New files.
9527
9528         * gdk/Makefile.am
9529         * gdk/win32/Makefile.am: Generate and distribute them.
9530
9531         * gdk/win32/gdkwindow-win32.h
9532         * gdk/win32/gdkdrawable-win32.h
9533         * gdk/win32/gdkpixmap-win32.h: New files.
9534
9535         * gdk/win32/gdkcolor-win32.c
9536         * gdk/win32/gdkcursor-win32.c
9537         * gdk/win32/gdkdrawable-win32.c
9538         * gdk/win32/gdkgc-win32.c
9539         * gdk/win32/gdkimage-win32.c
9540         * gdk/win32/gdkprivate-win32.h
9541         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9542         Rename fields and variables called xcursor, xid, etc (these names
9543         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9544
9545 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9546
9547         * gtk/gtkentry.[ch]: Fix some problems with vertical
9548         alignment.
9549
9550         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9551         char/byte confusion.
9552
9553 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9554
9555         * gtk/gtktextview.c (changed_handler): Fix bug where
9556         redraw wasn't being done properly when height of
9557         dirty region changed.
9558
9559         * demos/Makefile.am: Remove various references to
9560         -lgmodule
9561
9562 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9563
9564         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9565         PangoAttrShape to reserve space for pixmaps, add 
9566         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9567         in the display functions.
9568         
9569         * gtk/testgtk.c (create_layout): Set some more exotic
9570         scrolled window options
9571
9572         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9573         Add function to set the shadow type of a window, to allow
9574         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9575         which don't draw their own frame.
9576
9577 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9578
9579         * docs/tutorial/package-db-tutorial.sh: New file for
9580           packaging DocBook format tutorial
9581
9582 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9583
9584         * docs/tutorial/gtk-tut.sgml: Minor updates
9585
9586         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9587
9588 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9589
9590         * gtk/gtksignal.c: Fix C++ comment.
9591
9592         * gtk/gtkimmulticontext.c
9593         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9594         don't return value from void functions.
9595
9596         * gtk/gtk.def: Add gtk_rc_style_unref.
9597
9598 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9599
9600         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9601         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9602         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9603         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9604         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9605         gtk/gtktypeutils.h: Include files outside of the extern "C"
9606         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9607         <vakatov@peony.nlm.nih.gov>.
9608
9609 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9610
9611         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9612           Completes first pass. Hurrah!
9613
9614 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9615
9616         * docs/tutorial/gtk-tut.sgml: More clean ups.
9617
9618 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9619
9620         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9621         paint the background of the text area which was accidentally
9622         removed at some point.
9623
9624         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9625           
9626          - Move most of the functionality from the theme vtable
9627            into GtkRcStyleClass and GtkStyleClass. The moved
9628            vtable functions were changed a bit in the move to
9629            work better in their new home.
9630
9631          - Get rid of the engine and engine_data fields from
9632            GtkRcStyle and GtkStyle; instead the theme
9633            engine derives theme-specific subclasses of GtkRcStyle
9634            and GtkStyle
9635
9636          - Add extra dlsym() found entry point to themes,
9637            theme_create_rc_style().
9638
9639         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9640         in gtk_style_real_copy.
9641
9642         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9643         to register a type associated with an engine. (The engine
9644         won't be unloaded as there is an instance of the type.)
9645
9646
9647 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9648
9649         * docs/tutorial/gtk-tut.sgml: Clean ups.
9650
9651 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9652
9653         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9654           of cleaning up to do.
9655
9656 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9657
9658         * gdk/testgdk.c: New file, quick hack to test backends for
9659         pixel-by-pixel correctness of the most simple graphic operations.
9660
9661 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9662
9663         * Really release 1.3.1
9664         
9665         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9666         include structure.
9667
9668 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9669
9670         * Released 1.3.1
9671
9672 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9673
9674         * gtk/gtktextlayout.c: use FALSE for size_only most
9675         of the time when calling gtk_text_layout_get_line_display()
9676         to avoid causing double reshapes when a redraw follows
9677         immediately after.
9678
9679 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9680
9681         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9682         appropriate region and gdk_window_process_updates() so trough
9683         updating doesn't lag behind the window being scrolled.
9684
9685         * gdk/gdkgc.c: Make parent_class pointer static.
9686          
9687 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9688
9689         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9690         include <string.h>.
9691          
9692         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9693         cut-and-paste error in computing memory offset for 4 channels.
9694
9695 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9696
9697         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9698         gtk_rc_append_default_pixmap_path(), since it wasn't
9699         adding an interesting path and we don't have a meaningful
9700         default for this value.
9701
9702 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9703
9704         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9705         gtk-config to gtk-config-2.0 move gtk_.m4 to
9706         gtk-2.0.m4
9707
9708         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9709         gdk/Makefile.am demos/Makefile.am: Change 
9710         library names to libgtk-1.3.la, etc, so that we
9711         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9712
9713         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9714         gdk/Makefile.am gdk/x11/Makfile.am
9715         Move include files into /usr/include/gtk-2.0, 
9716         /usr/lib/gtk-2.0/include/
9717          
9718         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9719         gtk/gtkintl.h: Change package for gettext from 
9720         gtk+ to gtk20. Put hack in autogen.sh to modify
9721         po/Makefile.in.in after gettextize to make this
9722         possible.
9723
9724         * gtk+.spec: Some updates, not tested.
9725
9726         * gdk-pixbuf/Makefile.am: Move loaders into
9727         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9728
9729         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9730         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9731         to THEMENAME/gtk-2.0/. Move engine directory  to
9732         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9733         
9734 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9735
9736         Win32 changes, still doesn't build though.
9737
9738         * gdk/makefile.cygwin
9739         * gdk/win32/makefile.cygwin
9740         * gtk/makefile.cygwin: Updates.
9741
9742         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9743         default values for fg and bg pixel as X11 does (0 and 1), not
9744         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9745         Use 0 for pen width by default (treated as 1 anyway later, but for
9746         apps that might check the value in the GdkGC).
9747         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9748         interface to gdk_gc_predraw and _postdraw.
9749
9750         * gdk/win32/gdkwin32.h
9751         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9752
9753         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9754         extraneous semicolon.
9755
9756         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9757
9758         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9759         not the Win32 bitspixel value.
9760
9761         * gdk/win32/gdkcc-win32.c:
9762         * gdk/win32/gdkcolor-win32.c 
9763         * gdk/win32/gdkprivate-win32.h
9764         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9765         GDK object structure.
9766
9767 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9768
9769         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9770         * docs/tutorial/gtk_tut_it.sgml (name): 
9771         * docs/tutorial/gtk_tut_fr.sgml (name): 
9772         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9773         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9774
9775 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9776
9777         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9778           small changes.
9779
9780 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9781
9782         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9783         a bug here, never been here and never fixed anything ;(
9784         (don't segfault if tree->root_tree is NULL, which happens prior
9785         to widget realization, but puke instead).
9786
9787 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9788
9789         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9790         add the necessary tokens.
9791
9792         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9793         (gtk_rc_style_to_style): copy thicknesses.
9794         (gtk_rc_init_style): apply thicknesses.
9795         (gtk_rc_parse_style): parse xthickness and ythickness.
9796
9797         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9798
9799         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9800         (gdk_window_new): 
9801         (_gdk_windowing_window_init): 
9802         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9803         (gdk_pixmap_create_from_data): 
9804         (gdk_bitmap_create_from_data): 
9805         (gdk_pixmap_new): 
9806         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9807         (gdk_image_new): 
9808         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9809         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9810         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9811         (gdk_colormap_get_system): 
9812         (gdk_colormap_new): 
9813         * gdk/gdkwindow.c (gdk_window_init): 
9814         * gtk/gtkstyle.c (gtk_style_new):
9815         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9816         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9817         * gtk/gtkrc.c (gtk_rc_style_new):
9818         use g_object_new() instead of g_type_create_instance() which
9819         is a private function for fundamental type implementations.
9820
9821 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9822
9823         * configure.in: Add check for db2html
9824
9825 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9826
9827         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9828         hack to set glib_debug_objects based on gtk_debug_flags.
9829
9830 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9831
9832         * INSTALL.in: Update the Prerequisites section.
9833
9834         * Makefile.am demos/Makefile.am docs/Makefile.am
9835         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9836         gdk/linux-fb/Makefile.am: Dist fixes
9837
9838 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9839
9840         * NEWS: 10,000 foot view of 1.3.1 changes.
9841
9842 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9843
9844         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9845         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9846         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9847         gdk/x11/gdkmain-x11.c: 
9848
9849         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9850         as a return value of gdk_*_grab(). Previously, we just
9851         returned the X11 values directly.
9852
9853 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9854
9855         * gdk/x11/Makefile.am: Patch from George Lebl to 
9856         install all the headers in the right place.
9857
9858 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9859
9860         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9861           initial conversion to DocBook.
9862
9863 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9864
9865         * README.win32: Improve a bit.
9866
9867         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9868         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9869         Alt+0nnn on the numpad (used to enter characters by numeric code
9870         from current DOS or ANSI codepage) working correctly, as in other
9871         Windows apps.
9872
9873         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9874         same argument validity tests as in X11 version.
9875         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9876
9877         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9878         definitions in case missing from headers.
9879
9880         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9881         destroy the window-specific cursor.
9882         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9883         calling GetModuleHandle(NULL).
9884         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9885         with CopyCursor before setting it as the window-specific
9886         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9887         also its Windows cursor) after calling this function. Destroy any
9888         previous window-specific cursor.
9889
9890 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9891
9892         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9893         font charset is iso8859-1, not iso-8859-1.
9894
9895 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9896
9897         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9898         Use g_get_charset() instead of g_get_codeset().
9899
9900         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9901         Comment out some strdup'ing functions to keep timj
9902         happy until we finish fighting this out.
9903
9904 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9905
9906         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9907         <= width or height.
9908
9909         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9910         from 1.2 for parent/child states.
9911
9912         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9913         of typos.
9914
9915         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9916         event structures, replace with a generic axes field. Replace 
9917         deviceid/sourec with GdkDevice *device.
9918
9919         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9920         to extract particular axis use value from event. (Also
9921         can be used for normal X/Y.)
9922
9923         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9924         allow for arbitrary number of axes, namespace everything
9925         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9926         everywhere.
9927
9928         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9929         Get rid of the gdk_input_vtable setup if favor of simply
9930         defining the functions in gdkinput-none/gxi/xfree.c in
9931         a similar fashion to the way that the port structure is 
9932         done.
9933
9934         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9935         for new event structures. 
9936
9937         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9938         new device interfaces.
9939
9940 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9941
9942         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9943         set the initial text.
9944
9945         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9946         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9947         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9948         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9949
9950         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9951         pango_layout_set_font_description to simplify.
9952
9953 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9954
9955         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9956         pango_layout_set_font_description to simplify.
9957
9958 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9959
9960         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9961         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9962         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9963
9964         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9965         PANGO_PIXELS() macro.
9966
9967 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9968
9969         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9970         that returns a PangoContext owned by the widget and updated to
9971         match future changes in the widget. Also, make 
9972         gtk_widget_create_pango_layout() use this context. If we ever
9973         add a ::changed signal to PangoContext, this will make things
9974         much more convenient. 
9975
9976         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9977         in the appropriate places instead of destroying the layouts and
9978         creating new ones.
9979
9980         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9981         in a few strategic places.
9982
9983 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9984
9985         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9986         gtk_widget_size_request() on reparented child, if one. Otherwise,
9987         queue_resize() on the child never results in it getting size-requested
9988         at all.
9989
9990         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9991         in option menus, so that (with luck) people won't copy it into
9992         their apps in the future.
9993
9994         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9995         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9996         a lot of problems with changing the size of the menu's menu
9997         items after adding it to the option menu.
9998
9999         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10000
10001         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10002         the text direction for a widget changes.
10003
10004         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10005         ::direction_changed to get rid of various hacks.
10006
10007 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10008
10009         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10010         name.
10011
10012 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10013
10014         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10015         flag to the structure. Do not call XFreePixmap on pixmaps created
10016         by gdk_pixmap_foreign_new().
10017
10018 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10019
10020         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10021         value using GdkRGB functionality given GdkColormap and GdkColor.
10022         (name not final, waiting for inspiration.)
10023         
10024         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10025         set the foreground/background of a GC using the GC's colormap
10026         and GdkRGB. (name not final, waiting for inspiration.)
10027
10028         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10029         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10030
10031         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10032         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10033         purely a function of the corresponding colormap. Make
10034         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10035
10036         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10037         gdk_pixbuf_*create_from_xpm_* in terms of
10038         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10039         code.
10040
10041         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10042         advantage of the new draw_rgb_32_image_dithalign.
10043
10044         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10045
10046         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10047         on each created GC.
10048
10049         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10050
10051         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10052         which we initialize from the drawable when the GC is created,
10053         if the drawable has a colormap.
10054
10055         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10056
10057         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10058
10059         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10060
10061 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10062
10063         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10064         actually returning expose events, make sure to set
10065         the count field properly.
10066
10067         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10068         accidentally reintroced bug which always cleared
10069         the graphics_exposures value. 
10070
10071 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10072
10073         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10074
10075 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10076
10077         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10078
10079 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10080
10081         * docs/faq/gtk-faq.sgml: Start of Section 6.
10082
10083 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10084
10085         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10086         
10087         (Fixes problem with drawing childless frames. Pointed out
10088         by and a first patch from Anders)
10089         
10090         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10091         compute a child_allocation, even if we don't have a child.
10092
10093         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10094         Always chain to the parent's impl, even if we don't have a child.
10095
10096 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10097
10098         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10099         use multiple parts of it instead of creating a bunch of separate
10100         segments, since the maximum number of segments per system is not
10101         large. (This might be worth backporting to GTK+-1.2.x if we make a
10102         new release )
10103
10104         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10105         structure in preparation for per-colormap GdkRGB.
10106
10107         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10108         to False when we get EINVAL from shmget so that the caller of
10109         gdk_image_new can retry with a smaller segment size.
10110
10111 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10112
10113         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10114
10115 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10116
10117         * configure.in: make the current version number 1.3.1 (binary age 0,
10118         interface age 0).
10119         
10120         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10121         gtkcompat.h is all we want.
10122
10123         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10124         GLib primitive types. fixed g_type_register_fundamental() argument
10125         ordering.
10126
10127         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10128         compiles.
10129
10130         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10131         object code cleanup, comment trigraph fixes, etc...
10132
10133 2000-06-23  Havoc Pennington  <hp@redhat.com>
10134
10135         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10136         instead of making up a bogus name for first_para_mark
10137
10138         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10139         0 as a context ID
10140
10141 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10142
10143         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10144
10145 2000-06-21  Havoc Pennington  <hp@pobox.com>
10146
10147         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10148         we didn't check window->bg_pixmap != GDK_NO_BG.
10149
10150         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10151         gdk-pixbuf
10152
10153 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10154
10155         * docs/faq/gtk-faq.sgm: Move file to here.
10156           TODO: Update Makfile.am 
10157
10158 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10159
10160         * docs/gtk-faq.sgm: Add Section 2
10161
10162 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10163
10164         * docs/gtk-faq.sgm: New file. Start of DocBook
10165           version of the FAQ.
10166
10167 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10168
10169         * configure.in (GDK_PIXBUF_MAJOR): Define version
10170         numbers for GDK_PIXBUF_*, as they get substituted
10171         into a header file. Need to consider versioning
10172         for gdk-pixbuf more carefully later.
10173
10174 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10175
10176         Work with srcdir != builddir.   
10177         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10178         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10179         * demos/testpixbuf.c: Likewise.
10180         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10181         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10182         <gdk/x11/gdkx.h>.
10183         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10184         "gdk-pixbuf.h".
10185         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10186
10187 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10188
10189         * TODO.xml: Change 1.4 version numbers to 2.0.
10190
10191 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10192
10193         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10194         fixups to GTK+ standard.
10195
10196 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10197
10198         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10199         gdk-pixbuf.
10200
10201         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10202         fixups for GObject.
10203
10204         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10205         gdk-pixbuf with GDK dependencies moved into GDK.
10206         
10207         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10208         move gdk-pixbuf-loader here until GObject has signals.
10209
10210         * demos/: New directory of demos. Move demos from
10211         gdk-pixbuf here.
10212
10213         * demos/pixbuf-init.c: Small bit of code to check for
10214         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10215         set GDK_PIXBUF_MODULEDIR appropriately.
10216
10217         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10218         define which no longer makes sense.
10219
10220 2000-06-21  Havoc Pennington  <hp@redhat.com>
10221
10222         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10223         gtk_get_default_language
10224
10225         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10226         new function to get the default language
10227
10228         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10229         s/gtk_text_view_style_values/gtk_text_style_values/
10230
10231         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10232         Add a "language" field to tags.
10233
10234         (gtk_text_tag_set_arg): Fix bug in setting
10235         "bg_full_height_set" tag.
10236
10237 2000-06-21  Havoc Pennington  <hp@redhat.com>
10238
10239         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10240         in the interfaces
10241
10242         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10243         stuff instead when possible.
10244
10245         * gtk/gtktexttypes.h: Delete some unused constants
10246
10247         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10248         testtextbuffer.c: use glib instead of custom unicode routines
10249
10250 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10251
10252         * docs/es/: Removed mistakenly added generated sgml
10253
10254         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10255         Remove outdated info files.
10256
10257         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10258         Moved tutorial files into subdir
10259
10260         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10261         subdir.
10262
10263         * docs/man/gtk_button.pod: Remove. (contents will be
10264         integrated into gtk-reference button page.)
10265
10266         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10267         docs/faq/Makefile.am: Adjust for new organization
10268
10269 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10270
10271         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10272         not $(MKINSTALLDIRS)
10273
10274 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10275
10276         * gtk/testgtk.c (create_text): Finish the job Elliot started
10277         of removing font setting test for text widget. (Since text widget
10278         and GdkFont are not deprecated, and cause portability problems.)
10279
10280 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10281
10282         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10283         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10284         Remove use of libunicode in favor of new GLib functions.
10285
10286         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10287         nano-x, framebuffer. The X11 include is just a hack until we get
10288         the necessary functions in gdkcolor.h, so there is no reason to
10289         add other includes of platforms.
10290
10291         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10292         window bigger than the screen change.
10293
10294         * gtk/testgtk.c: Revert some random changes from Elliot
10295         that had no particular point and were causing testgtkrc
10296         not to function correctly.
10297         
10298         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10299         because GdkSegment and GdkRegionBox have the same fields,
10300         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10301         results in clearer code.
10302
10303         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10304         gdk_input_translate_coordinates): Fix missed GdkObjectification
10305
10306 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10307
10308         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10309         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10310
10311 2000-06-20  Havoc Pennington  <hp@redhat.com>
10312
10313         * modules/linux-fb/Makefile.am: Make this compile
10314         without framebuffer enabled
10315
10316         * gdk/linux-fb/Makefile.am: Add conditional to not build
10317         framebuffer unless specified in configure
10318
10319         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10320         the size of the target instead of source if -1 was passed for
10321         width/height
10322
10323         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10324         width/height confusion.
10325
10326 2000-06-19  Havoc Pennington  <hp@redhat.com>
10327
10328         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10329         GDK_DRAWABLE_XID. In the future, we probably want to make it
10330         faster with G_DISABLE_CHECKS turned on.
10331
10332 2000-06-14  Havoc Pennington  <hp@redhat.com>
10333
10334         * gdk/Makefile.am: add gdkpixmap.c
10335
10336         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10337         s/gdk_image_init/_gdk_windowing_image_init
10338
10339         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10340         ref/unref
10341
10342         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10343
10344         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10345         GdkWindowType is now non-deprecated; 
10346         change gdk_window_get_type() compat to be
10347         gdk_window_get_window_type().
10348
10349         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10350
10351         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10352         virtual GObject. Make all functions call into the vtable.
10353         Move gdk_image_put() guts in here. Remove GdkDrawableType
10354         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10355         draw_image, get_depth, get_size, set_colormap, get_colormap,
10356         get_visual added to the vtable.
10357         
10358         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10359         GObject. Virtualize everything. 
10360         (gdk_gc_new_with_values): remove check for destroyed window,
10361         because now GdkWindow::create_gc will check this.
10362         (gdk_gc_set_values): New function to set GC values, this 
10363         was already implemented but wasn't in the header
10364
10365         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10366
10367         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10368         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10369         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10370         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10371         _gdk_windowing_window_init, rename gdk_image_init to
10372         _gdk_windowing_image_init.
10373         
10374         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10375         (gdk_draw_layout): Remove check for destroyed window, 
10376         because all the drawable methods already check it.
10377         
10378         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10379         Add gdkpixmap.c which contains implementation of GdkDrawable
10380         virtual table (by chaining to a platform-specific implementation
10381         object).
10382         
10383         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10384         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10385         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10386         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10387         GdkColormapPrivate. 
10388
10389         * gdk/gdktypes.h: #include <glib-object.h>
10390
10391         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10392         Move most functionality to platform-specific implementation
10393         object. GdkWindow itself now handles the backing store, then
10394         chains to the platform-specific implementation.
10395         (gdk_window_get_window_type): return GdkWindowType of the window.
10396         (gdk_window_peek_children): New routine, returns the children of 
10397         a GdkWindow
10398         (gdk_window_get_children): Was in X11-specific code and did 
10399         XQueryTree. Changed to simply return a copy of window->children; 
10400         so it can go in cross-platform code.
10401         
10402         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10403
10404         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10405         GdkColormap; just changed to use the new private data instead
10406         of casting to GdkColormapPrivate.
10407
10408         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10409         gdk_cursor_new().
10410
10411         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10412         (private data member in the GObject). 
10413         (xdnd_manager_source_filter): Function had broken 
10414         error handling, fix it (use gdk_error_trap_push).
10415
10416         * gdk/x11/gdkdrawable-x11.c: This file now implements
10417         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10418         base class is purely for the convenience of the X port,
10419         and not part of the interface to cross-platform GDK.
10420
10421         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10422         
10423         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10424         specific to X, and returned by the create_gc virtual method
10425         of GdkDrawableImplX11. 
10426         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10427         rather than gchar, this was also changed in the GdkGC vtable.
10428         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10429         mask is 0, return immediately, instead of checking every flag.
10430         This is faster, and keeps us from segfaulting if values is NULL
10431         and the mask contains some nonzero flags.
10432
10433         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10434         GdkWindow.
10435
10436         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10437         GdkWindowPrivate is gone.
10438
10439         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10440
10441         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10442         remove the image_put stuff that got transferred to GdkDrawable.
10443         
10444         * gdk/x11/gdkinput.c: renamings
10445
10446         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10447
10448         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10449
10450         * gdk/x11/gdkprivate-x11.h: indentation fixes
10451
10452         * gdk/x11/gdkproperty-x11.c: renamings
10453
10454         * gdk/x11/gdkselection-x11.c: renamings
10455
10456         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10457         implements the platform-specific "impl" object.
10458         Moved gdk_window_get_children to gdk/gdkwindow.c
10459
10460         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10461         that no longer exist. Add declaration of GdkGCX11 object here.
10462         Fix all the macros to still work. 
10463
10464         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10465         GdkDragContext from the boxed types since they are now GObjects.
10466
10467         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10468         moved xthickness/ythickness into the instance. GtkStyleClass
10469         functions are now in the standard vtable for GtkStyle, so you have
10470         to create a GObject subclass to write a theme engine.
10471         (gtk_style_copy): fixed a leaked PangoFontDescription
10472         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10473         can be the standard GObject function.
10474         
10475         * Throughout GTK:
10476         s/style->klass->[xy]thickness/style->[xy]thickness
10477         s/pango_layout_unref/g_object_unref/
10478
10479         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10480         
10481         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10482         accessing GDK internals.
10483
10484         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10485         accessing GDK internals.
10486
10487 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10488
10489         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10490
10491         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10492         problem by calculating event position relative to the trough
10493         rather than the slider.
10494         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10495
10496         * gdk/gdkgc.h: Add GDK_NOR.
10497
10498         * configure.in, Makefile.am: Add modules top level dir
10499         * configure.in: Only use pangox library if building x11 target.
10500         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10501
10502 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10503
10504         * gtk/gtkcolorsel.c: Change private class member to be named
10505         private_data throughout the file.
10506
10507         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10508         private_data to avoid clashing with keyword.
10509
10510 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10511
10512         * gdk/gdkdnd.h: Add comment to remove warning.
10513
10514 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10515
10516         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10517         Byelorussian language; changed the Makefile and file names 
10518         to reflect that.
10519
10520 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10523         rather than gdk_window_hide; this makes things work
10524         correctly if the window is programmatically hidden while
10525         iconified.
10526
10527 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10528
10529         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10530         cut and paste typo where wrong pixmap was being
10531         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10532
10533 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10534
10535         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10536         Add helper function to compute format / bytes 
10537         relationship. Use in a couple places to fix up
10538         errors which assume 8 * format.
10539
10540         * gtk/gtkselection.c (gtk_selection_request): Use 32
10541         rather than 8 * sizeof (GdkAtom), to work correctly
10542         on Alpha.
10543
10544 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10545
10546         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10547         libgtk.la
10548         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10549         versions
10550
10551         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10552         checking macros return NULL since the function has a return value.
10553
10554 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10555
10556         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10557         GTK+ from building at all.
10558
10559         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10560
10561 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10562
10563         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10564         gtk/Makefile.am: make it possible to configure gtk for different
10565         targets on the same platform. The library name is now 
10566         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10567         flag. Only the x11 target compiles right now.
10568         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10569         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10570         * gdk/nanox/gdk*generic*: delete generic region code.
10571         * gdk/linux-fb/gdk*generic*: delete generic region code.
10572         * README.nanox: update information.
10573         
10574 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10575
10576         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10577         prepend not append. (Pointed out by Brett Hall.)
10578
10579 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10580
10581         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10582
10583 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10584
10585         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10586         need this later, and this makes sure that the atexit for
10587         glib gets called after that for GDK, so atexits are
10588         properly ordered for object leak checking.
10589
10590         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10591
10592         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10593         pango_x_shutdown_display()
10594
10595         * gtk/simple.c (main): Close window on destroy.
10596
10597 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10598
10599         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10600         to treat initial creation different from setting with 
10601         regards to the graphics-exposures parameter, so add a parameter
10602         indicating whether this is initial or not.
10603
10604 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10605
10606         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10607         to sort of work by adding an extra return_exposes arg
10608         to gdk_event_translate() - it might be better to simply
10609         deprecate the function altogether and force people to rewrite
10610         without it. gdk_window_scroll() handles most of it, and where
10611         gdk_window_scroll() doesn't work, simply redrawing more does.
10612
10613         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10614         assertion.
10615
10616         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10617
10618         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10619         bunch of pretty much useless /* Print debugging info */ comments 
10620         which had drifted away from the code they were commenting.
10621
10622 2000-06-02  Havoc Pennington  <hp@pobox.com>
10623
10624         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10625         is in working order.
10626         
10627         * gtk/testtext.c: Change to reflect anonymous mark API
10628
10629         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10630
10631         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10632         field, which was unused.
10633
10634         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10635         saves some typing.
10636
10637         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10638
10639         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10640         flag on the insertion point and selection bound
10641
10642         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10643         make mark-manipulation functions take a GtkTextMark* instead of a
10644         mark name.
10645         
10646         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10647         GtkTextMarkBody; will be used to detect attempts to delete
10648         the permanent marks (insert and selection bound)
10649
10650         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10651
10652 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10653
10654         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10655         flag to on.
10656
10657         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10658         Honor DOUBLE_BUFFRED_FLAG
10659
10660         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10661         function to set the DOUBLE_BUFFERED flag.
10662
10663         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10664         or not exposes done on the widget should be double-buffered.
10665
10666         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10667         to be what would be expected. (Fixes problem with a
10668         g_return_if_fail() validating a TextDirection enumeration)
10669
10670 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10671
10672         * gtk/gtkwidget.c: Remove all references to 
10673         offscreen flag which was no longer used.
10674
10675         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10676
10677         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10678         for non-null label_widget->parent.
10679
10680         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10681         which no longer was used.
10682
10683         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10684
10685         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10686         for null arguments.
10687
10688         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10689         check for destroyed windows.
10690
10691 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10692
10693         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10694         the slave context there.
10695
10696         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10697         identical to GtkWindow.
10698
10699 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10700
10701         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10702         pangox to here, so we can write them independent of rendering
10703         system, using GDK primitives.
10704
10705         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10706         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10707         since we have a rendering-system independent implementation in
10708         terms of draw_glyphs().
10709         
10710         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10711         function to render a single line.
10712
10713         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10714         into ../gdkpango.c, which simplifies things, since we
10715         don't have to deal with raw X gc's.
10716
10717 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10720         get the logical attributes for a given GtkTextLine.
10721
10722 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10723
10724         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10725         g_locale_get_codeset() to g_get_codeset() change.
10726
10727 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10728
10729         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10730         descriptions.
10731
10732         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10733         the entry.
10734
10735         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10736         redoing (vastly simplifying) for Pango. Still needs quite
10737         a bit of work. (Size selection is currently poor. List of 
10738         predefined sizes is not a good idea, since all of these
10739         sizes won't necessarily be distinct.)
10740
10741 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10742
10743         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10744         CODESET results for LANG=C.
10745
10746 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10747
10748         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10749         which takes a stringized pango font description;
10750         ignore the older 'font' and 'fontset' declarations.
10751
10752         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10753         field with a GdkFont derived via gdk_font_from_description(),
10754         for compatibility. (Should we just remove it entirely?
10755         Probably too much compatibility breakage, but people
10756         should be migrating to the new Pango stuff as quickly
10757         as possible.)
10758
10759 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10760
10761         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10762
10763 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10764
10765         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10766         redoing; there are some bugs in size allocation right
10767         now, the semi-existant distinction between header / day
10768         fonts was removed, but, with Pango, could actually
10769         be made functional in a nice way.
10770         
10771         * gtk/testcalender: Move calender from examples into this
10772         directory as a test program. (We really need to restrcture
10773         testgtk into a whole directory full of tests for every
10774         widget or functionality group, separated into multiple .c
10775         files.)
10776
10777 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10778
10779         * gtk/testgtk.c (file_exists): Fix stupid typo that
10780         was keeping RC file from being loaded.
10781
10782         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10783         RC file font code.
10784
10785 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10786
10787         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10788         Add function to load a GdkFont from a PangoFontDescription.
10789
10790 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10791
10792         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10793         variable should be of type GdkEventPrivate.
10794
10795 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10796
10797         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10798         to have any widget for the label, use a GtkLabel widget
10799         to display the text. (Based partially on a patch from
10800         Anders Carlson.)
10801
10802         (Quite a bit of code reorganization - strip 90% of the
10803         guts out of gtkaspectframe and add a single virtual
10804         func to GtkFrameClass - compute_child_allocation.)
10805
10806 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10807
10808         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10809         (Removed clist->row_center_offset field because caching
10810         it wasn't saving time or code, added private function
10811         _gtk_clist_create_cell_layout()).
10812
10813 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10814
10815         * gtk/gtkaccellabel.c: Pangoized.
10816
10817         * gtk/[hv]ruler.c: Pangoized
10818
10819 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10820
10821         * gtk/gtkfilesel.c (gtk_file_selection_init):
10822         Use gtk_clist_set_column_auto_resize() to remove need
10823         need for manual column width computations.
10824
10825 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10826
10827         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10828         ensuring Pango correctness, and considerably simplifying the
10829         code.
10830         
10831         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10832
10833         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10834         getting of numbers of lines.
10835
10836         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10837         to the actual requested width of the lable, not to the wrap
10838         width we set.
10839
10840         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10841
10842         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10843           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10844
10845         * gtk/gtktextview.c: Fix structure inheritance.
10846
10847         * gtk/gtkprogressbar.c: Pangoize.
10848
10849 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10850
10851         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10852         in a function.
10853
10854         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10855         bug with computing line tops.
10856
10857         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10858
10859 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10862         and y_offset coordinates to do what we need now. (The offset between
10863         buffer and layout coordinates has been reintroduced, but is a 
10864         bit different than before.)
10865
10866         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10867         handle the adjustments ourselves, and scroll as necessary using
10868         the new gdk_window_scroll().
10869         
10870         The advantage of this is that when we are incrementally revalidating,
10871         we are essentially rearranging things around the visible portion
10872         of the screen. With the old setup, the visible portion of the
10873         screen was moved around in the layout, so scrolling and redrawing
10874         to track that caused jumping of the display. Since we now
10875         control the scrolling ourselves, we can suppress this and
10876         only redraw when things actually change.
10877
10878 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10879
10880         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10881         the region not just redisplay it after-all, since we store the
10882         cursors in the LineDisplay. (Ugly interactions here between
10883         GtkLayout and GtkTextBTree here.)
10884         
10885         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10886
10887 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10888
10889         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10890         Added function to scroll contents of a window while keeping the
10891         window constant. Works by XCopyArea or guffaw-scrolling depending
10892         on the details of how the window is set up. (guffaw-scrolling
10893         still needs to be filled in.)
10894
10895 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10896
10897         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10898         move the debugging that was tied to a global variable
10899         to that.
10900
10901         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10902
10903         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10904         validated flag, in line data instead of setting height/width to
10905         -1. This allows us to perform operations with partially invalid
10906         buffer (using the old size for invalid lines) and thus to do
10907         incremental vaidation. Keep height/width aggregates up to date
10908         when deleting text and rebalancing the tree.
10909
10910         * gtk/gtktextbtree.[ch]: Add functions validate a line
10911         (gtk_text_btree_validate_line), and to validate up
10912         to a number of pixels (gtk_text_btree_validate).
10913
10914         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10915         that indicates that something is changed and a revalidation
10916         pass is needed. Change ::need_repaint to ::changed, and
10917         make it take old and new yranges instead of a rectangle.
10918
10919         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10920         the line_data_destroy() function from 
10921         gtk_text_btree_add_view() to a virtual function in 
10922         GtkTextLayout
10923
10924         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10925         since we are handling partial repaints in a different fashion
10926         now.
10927
10928         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10929         of the selection instead of queueing a repaint on the
10930         entire widget.
10931
10932         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10933         get_selection_bounds() down to btree, make the function
10934         in buffer a wrapper around the btree function.
10935
10936         * gtk/gtktextlayout.[ch]: Add functions to check if the
10937         layout is valid and to recompute either a range of pixels
10938         aroudn a line or a certain total number of pixels.
10939
10940         * gtk/gtktextlayout.[ch]: Cache a single line display;
10941         now that we only redraw the needed portions, the hit rate
10942         for this cache is quite high.
10943         
10944         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10945         on the screen so that when re-laying-out the buffer, we can
10946         keep the same place. This requires connecting to ::value_changed
10947         on the adjustments
10948
10949         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10950         the buffer after we receive an ::invalidated signal.
10951         
10952 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10953
10954         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10955         to max of allocation and layout size, not just to the
10956         layout size.
10957
10958         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10959         Invalidate window so it gets redrawn properly.
10960
10961         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10962         to mean the entire window.
10963
10964         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10965         into public header.
10966
10967 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10968
10969         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10970         to get the name of a mark.
10971
10972         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10973         to find the paragraph from a y position.
10974
10975 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10976
10977         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10978         nodes have width/height >= 0, not > 0.
10979
10980 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10981
10982         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10983         Add a size_only flag, so when we only need the size, we don't create
10984         useless appearance attributes.
10985
10986         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10987         duplicate setting of font description.
10988
10989         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10990
10991 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10992
10993         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10994         EXTRA_DIST. It does not work well when the file that
10995         everything depends on is not in the tarball.
10996
10997 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10998
10999         * gtk/testgtk.c: Some hacks and fixes so that it basically
11000         works when not sitting in the GTK+ build tree.
11001
11002 2000-05-03  Havoc Pennington  <hp@redhat.com>
11003
11004         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11005         Properly determine the ordering of the tag root and the current
11006         line within the tree. Previous algorithm only worked if the tag
11007         root's immediate parent was the common root of both the current
11008         line and the tag root.
11009
11010 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11011
11012         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11013         alignment.
11014
11015         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11016         the widget text directional dynamically.
11017
11018         * gtk/gtktextview.[ch]: Added functions to get and set default
11019         wrap mode.
11020
11021 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11024         in cursor location computation.
11025
11026 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11029         vadjusment values properly when layout gets smaller.
11030
11031         * gtk/gtktextview.c (need_repaint_handler): Areas being
11032         passed in are far completely inaccurate, and sometimes
11033         too small, so, for now, just queue a redraw on the
11034         whole visible region.
11035
11036 2000-04-25  Havoc Pennington  <hp@redhat.com>
11037
11038         * gtk/gtktextbtree.c (summary_destroy): new function to 
11039         destroy tag summary nodes
11040         (gtk_text_line_next_could_contain_tag): this function was 
11041         totally broken if the line passed in wasn't below the tag
11042         root. Fix it.
11043         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11044         "wildcard" case, we have to do a linear scan. Blah.
11045         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11046         we have to do the linear scan
11047         (tag_removed_cb): When a tag is removed from the tag table, 
11048         remove the GtkTextTagInfo node from the btree.
11049         (gtk_text_btree_spew): Implement the spew function, for 
11050         our debugging pleasure.
11051
11052 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11053
11054         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11055         a problem with referring to the wrong buffer.
11056
11057         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11058
11059         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11060         font description to gtk_style_new() - otherwise things
11061         don't work without a .gtkrc file.
11062
11063         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11064         tags table if we create it ourself, too.
11065
11066         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11067         it was conflicting with XKB modifiers.
11068
11069         * gtk/gtktextview.[ch]: Add simple support for 
11070         GtkIMContext.
11071
11072 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11073
11074         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11075         with deletion from last commit.
11076
11077 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11078
11079         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11080         in the context from the current locale.
11081         
11082         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11083         context, not hardcoded value.
11084
11085         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11086         not logical.
11087
11088 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11089
11090         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11091         attributes - that doesn't handle partial-glyph selection
11092         properly. Instead use new pango_layout_line_get_x_ranges()
11093         functionality to draw the selection.
11094
11095         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11096         now properly handles out-of-range coordinates.
11097
11098         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11099
11100         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11101         public.
11102
11103         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11104         for paragraphs opposite to the base direction of the widget.
11105
11106         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11107
11108         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11109         causes Arabic words to reshape as you cursor through.
11110
11111         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11112         cursor position when moving vertically with the arrow keys and
11113         scrolling with page-up/page-down. (Arrow keys save only the X,
11114         scrolling saves both X and Y.)
11115
11116         This means you can line-up / line-down or page-up / page-down
11117         without losing your place, and also that moving vertically
11118         with the cursor keys keeps the same X position, not the same
11119         character count:
11120
11121         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11122         arrow keys move by display lines, not paragraphs.
11123
11124 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11125
11126         * gtk/gtklayout.c: Make sure that the bin window is at least
11127         as big as the allocation. (Should we also make sure that the
11128         bin window is big enough to completely cover widget->window?)
11129
11130         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11131         function to get the onscreen rectangle.
11132
11133         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11134         for offsets in window coordinates.
11135
11136 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11137
11138         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11139         confusion.
11140
11141         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11142         from the widget direction.
11143
11144         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11145         Add a "direction" attribute.
11146
11147         * gtk/gtktextview.c: global s/tkxt/text_view/.
11148
11149         * gtk/testtext.c: Added long block of text in Arabic, to test out
11150         the direction attributes. (Some problems with the shaping system
11151         for arabic become obvious - like the fact the cursor splits words
11152         into unjoined pieces.)
11153
11154 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11155
11156         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11157
11158         * gtk/gtktextlayout.c: Fix up alignment.
11159
11160         * gtk/testtext.c: Add some tests for centering, wrapping.
11161
11162 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11165         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11166         If we wrote GTK+-specific layout-render function this could just replace
11167         the draw_layout() operation in the vtable.
11168
11169         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11170         pango_layout_get_cursor_pos() and use that function.
11171
11172         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11173         is a non-static symbol.
11174
11175         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11176         with gtk_text_btree_find_line_by_y()
11177
11178         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11179         renderer that handles GtkTextAppearance attributes.
11180
11181         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11182
11183           - Move the values in the style that don't affect geometry into a
11184             GtkTextAppearance structure.
11185           - Change underline to take a PangoUnderline and "font" a string
11186             representation of a font description
11187           - Add a "font_desc" attribute which takes a FontDescription structure.
11188
11189         * gtk/gtktextlayout.[ch]:
11190
11191           - Get rid of the display-line list per each line. Instead, we
11192             generate, on demand, a GtkTextLineDisplay structure which]
11193             contains a PangoLayout * and other necesary information
11194             (offsets, cursor locations) for displaying a paragraph.
11195           - Get rid of the code to wrap lines, create display chunks,
11196             etc. Instead, we just go through a paragraph and convert
11197             it into the necessary inputs to a PangoLayout.
11198           - Implement a new attribute type, GtkTextAttrAppearance. This
11199             holds a GtkTextAppearance, and is used to pass colors, 
11200             stipple, etc, through from the layout to the display without
11201             having to use lots and lots of individual attributes.
11202           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11203             in terms of PangoLayout functions.
11204         
11205         * gtk/gtktextview.c: 
11206          
11207           - Handle passing the necessary PangoContext to the layout
11208           - Some fixups in painting to deal with the automatic backing store
11209             and offsetting of GTK+-1.4
11210           - Add a style_set handler so that the default style reacts
11211             properly to theme changes.
11212         
11213         * gtk/gtktext?*.[ch]: Random code-style fixes.
11214
11215         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11216
11217 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11218
11219         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11220         in original form preparatory to Pango-ization and gdkimcontext-ization.
11221
11222 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11223
11224         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11225         so that we can derive from gtkimcontext in language bindings properly.
11226
11227 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11228
11229         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11230         Add a compose table including (almost) all the compose combinations
11231         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11232         data in the XIM implementation.
11233
11234         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11235         Moved functions to convert keyvalues from and to unicode here from
11236         the win32 port and made them public.
11237
11238 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11239
11240         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11241
11242 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11243
11244         * gtk/gtkimcontext.[ch]: Base class for new input context system
11245
11246         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11247         the real input context implementation to be loaded from modules
11248         and switched on the fly.
11249
11250         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11251         context that just does direct keysymbol => unicode translation.
11252
11253         * gtk/gtkentry.[ch]: Start switching editing over to using
11254         GtkInputContext. (No handling of preedit yet.)
11255
11256 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11257
11258         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11259         many substitutions. (klass should not be subsituted.)
11260
11261 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11262
11263         * configure.in: Add checks for Pango
11264
11265         * configure.in docs/Makefile.am: Add test for sgml2html
11266         and allow 'make dist' without building html, but print out
11267         warnings in that case. (For making snapshots)
11268
11269         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11270         Add Pango libraries and C flags
11271
11272         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11273         Add function (gdk_draw_layout) to draw a pango layout.
11274
11275         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11276         for getting Pango contexts for GDK.
11277
11278         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11279
11280         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11281         editing.
11282
11283         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11284         keysym => unicode translations. More languages can be added
11285         here, but real input-method support is needed.
11286
11287         * docs/Changes-1.4.txt: Added note about entry behavior.
11288         
11289         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11290         to set the reading direction for a widget and the global direction.
11291         Add test which allows toggling the global direction. Two private
11292         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11293
11294         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11295           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11296
11297         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11298
11299         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11300         underlining now handled by Pango.
11301
11302         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11303         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11304         is temporary.)
11305
11306         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11307         convenience functions for creating contexts and layouts for widgets.
11308
11309         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11310
11311 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11312
11313         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11314         titles to be active, even if they aren't visible.
11315         (gtk_clist_column_titles_passive):  Ditto.
11316
11317 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11318
11319         * gtkmenu.c:
11320         * gtkmenu.h:
11321         * gtktypeutils.h: Spelling/grammar fixes in comments.
11322
11323 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11324
11325         * gdk/nanox/*.h: add missing header files.
11326
11327 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11328
11329         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11330         send_event to TRUE.
11331         (gtk_drawing_area_size): queue a resize.
11332
11333 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11334
11335         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11336         the handlers, also invalidate them. bug nailed down by Karl Nelson
11337         <kenelson@ece.ucdavis.edu>.
11338
11339 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11340
11341         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11342         "(nil)" foundries, patch from Grigorios Magklis.
11343
11344         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11345         on non-available fonts, based on a patch by Grigorios Magklis
11346         <maglis@cs.rochester.edu>.
11347
11348 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11349
11350         * gdk/x11/gdkregion-generic.c: If a region does not have any
11351         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11352         instead of GDK_OVERLAP_RECTANGLE_IN.
11353
11354 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11355
11356         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11357         OFFSCREEN, as it is no longer necessary.
11358
11359 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11360
11361         * gtk/gtkcolorsel.c: Patch from David Santiago
11362         <mrcooger@cyberverse.com> to change things so that the 
11363         indicator of the active palette entry is done independently,
11364         not via the focus, since it should always be visible.
11365
11366 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11367
11368         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11369         refcount leaks as in the X11 backend.
11370
11371         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11372         cosmetics.
11373
11374         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11375         backend. Add _gdk_windowing_window_destroy().
11376
11377         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11378         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11379         either, but these probably do exist on nanox?)
11380         
11381         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11382         which isn't necessarily defined by <math.h>.
11383
11384         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11385         ancestry past GtkObject.
11386
11387         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11388         from DLL on Win32.
11389
11390         * gtk/gtk.def: Update corresponding to recent changes.
11391
11392         * gtk/makefile.{cygwin,msc}: Updates.
11393
11394 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11395
11396         * docs/Changes-1.4.txt: A bit of editing.
11397
11398         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11399         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11400         to clear the update area for the window, and clear it
11401         when hiding a window.
11402
11403         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11404         if window destroyed.
11405
11406         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11407
11408         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11409         gdk_window_destroy() to the generic code, since there was a lot of 
11410         window-system-independent logic it in. Add a function:
11411         
11412          _gdk_window_destroy() 
11413
11414         to the internal API to destroy a window without unreferencing it.
11415         Add a function:
11416
11417          _gdk_windowing_window_destroy()
11418
11419         That does the windowing-system-dependent part of destroying 
11420         the window.
11421
11422 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11423
11424         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11425
11426 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11427
11428         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11429         Make gtk_widget_shape_combine_mask() keep a reference count on
11430         the pixmap since it keeps it around.
11431
11432 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11433
11434         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11435         leak.
11436
11437         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11438         leak with event filters.
11439
11440 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11441
11442         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11443         signal handlers with the right data arguments. (Fixes
11444         some warnings when a widget was repeatedly set as a drag
11445         destination.)
11446
11447         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11448         window so we can avoid avoid setting the DND properties on the
11449         toplevel window repeatedly.
11450
11451 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11452
11453         * gdk/win32/gdkwin32.h: Define more message types missing from
11454         mingw headers.
11455
11456         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11457         call gdk_window_destroy_notify(). It was never called. This
11458         probably meant that the GdkWindow was never freed. Thanks Owen for
11459         noticing (!).
11460
11461         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11462         window as destroyed before calling DestroyWindow(). DestroyWindow()
11463         causes a call to the window procedure (gdk_WindowProc), which
11464         calls gdk_event_translate(), which calls
11465         gdk_window_destroy_notify(), which gets confused unless the window
11466         is set as destroyed.
11467
11468         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11469         this function to indicate it's win32 only. Put inside #ifdef
11470         G_ENABLE_DEBUG.
11471
11472         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11473         debugging function. (gdk_event_translate:) Add a default branch
11474         that uses the above function to print debug messages with all
11475         Windows messages symbolically.
11476
11477         * gdk/win32/gdkprivate-win32.h: Declare it, and
11478         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11479
11480 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11481
11482         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11483         public header file.
11484
11485 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11486
11487         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11488
11489         * gtk/gtktext.c: made the adjustments no-construct args, simply
11490         provide default adjustments.
11491         (gtk_text_destroy): release adjustments.
11492
11493         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11494         adjustment argument non-construct.
11495
11496         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11497         instead of in finalize.
11498         (gtk_progress_get_text_from_value): 
11499         (gtk_progress_get_current_text): 
11500         (gtk_progress_set_value): 
11501         (gtk_progress_get_percentage_from_value): 
11502         (gtk_progress_get_current_percentage): 
11503         (gtk_progress_set_percentage): 
11504         (gtk_progress_configure): ensure an adjustment is present.
11505
11506 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11507
11508         * gtk/gtkcolorsel.[hc]:
11509         * gtk/gtkcolorseldialog.[hc]:
11510         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11511         their parent implementation, use bit fields for boolean values, don't
11512         create unused widgets, usage of glib types, braces go on their own
11513         lines, function argument alignment, #include directives etc. etc. etc..
11514
11515         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11516
11517 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11518
11519         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11520
11521         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11522         of NULL.
11523
11524         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11525         to freed data.
11526         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11527
11528         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11529         to NULL when the toplevel is getting destroyed.
11530         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11531         (gtk_menu_destroy): 
11532         (gtk_menu_init): store the information of whether we have to
11533         readd the initial child ref_count during destruction in a new
11534         GtkMenu field needs_destruction_ref_count.
11535
11536         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11537         here, those reading: learn from my mistake! ;)
11538         in order for set_?adjustment to support a default adjustemnt if
11539         invoked with an adjustment pointer of NULL, the code read (pseudo):
11540         if (v->adjustment) unref (v->adjustment);
11541         if (!adjustment) adjustment = adjustment_new ();
11542         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11543         now imagine the first unref to actually free the old adjustment and
11544         adjustment_new() creating a new adjustment from the very same memory
11545         portion. here, the latter comparision will unintendedly fail, and
11546         all hell breaks loose.
11547         (gtk_viewport_set_hadjustment):
11548         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11549         after unreferencing it.
11550
11551         * gtk/gtkcontainer.[hc]: removed toplevel registration
11552         functions: gtk_container_register_toplevel(),
11553         gtk_container_unregister_toplevel() and
11554         gtk_container_get_toplevels() which had wrong semantics
11555         anyways: it didn't reference and copy the list.
11556
11557         * gtk/gtkwindow.c: we take over the container toplevel registration
11558         bussiness now. windows are registered across multiple destructions,
11559         untill they are finalized. the initial implicit reference count
11560         users are holding on windows is removed with the first destruction
11561         though.
11562         (gtk_window_init): ref & sink and set has_user_ref_count, got
11563         rid of gtk_container_register_toplevel() call. add window to
11564         toplevel_list.
11565         (gtk_window_destroy): unref the window if has_user_ref_count
11566         is still set, got rid of call to
11567         gtk_container_unregister_toplevel().
11568         (gtk_window_finalize): remove window from toplevel list.
11569         (gtk_window_list_toplevels): new function to return a newly
11570         created list with referenced toplevels.
11571         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11572
11573         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11574         adjustment a non-construct arg.
11575         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11576         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11577         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11578
11579         * gtk/gtkrange.c: added some realized checks.
11580         (gtk_range_destroy): get rid of the h/v adjustments in the
11581         destroy handler instead of finalize. remove timer.
11582         (gtk_range_get_adjustment): demand create adjustment.
11583
11584         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11585         we simply create them on demand now and get rid of them in
11586         the destroy handler.
11587         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11588         destroy handler instead of finalize.
11589         (gtk_viewport_get_hadjustment): 
11590         (gtk_viewport_get_vadjustment): 
11591         (gtk_viewport_size_allocate): demand create h/v adjustment
11592         if required.
11593
11594         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11595         gtk_widget_real_destroy () functionality.
11596         (gtk_widget_real_destroy): reinitialize with a new style, instead
11597         of setting widget->style to NULL.
11598
11599 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11600
11601         * gtk/gtkcalendar.c:
11602         * gtk/gtkbutton.c: ported _get_type() implementation over to
11603         GType, either to preserve memchunks allocation facilities,
11604         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11605
11606         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11607         over. prepare for ::destroy to be emitted multiple times.
11608         removed reference tracer magic. chain into GObjectClass.shutdown()
11609         to emit ::destroy signal.
11610
11611         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11612         fundamental.
11613
11614         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11615         cludge.
11616
11617         * gtk/gtksocket.c:
11618         * gtk/gtkplug.c:
11619         * gtk/gtklayout.c:
11620         * gtk/gtklabel.c:
11621         * gtk/gtkargcollector.c:
11622         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11623         not being a fundamental anymore, and to work with the new
11624         type system (nuked fundamental type varargs clutter).
11625
11626         * gtk/*.c: install finalize handlers in the GObjectClass
11627         part of the class structure.
11628         changed direct GTK_OBJECT()->klass accesses to
11629         GTK_*_GET_CLASS().
11630         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11631
11632         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11633         GType. made most of the GTK_*() type macros and Gtk* typedefs
11634         simple wrappers around macros and types provided by GType.
11635         most notably, a significant portion of the old API vanished:
11636         GTK_TYPE_MAKE(),
11637         GTK_TYPE_SEQNO(),
11638         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11639         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11640         GTK_TYPE_ARGS,
11641         GTK_TYPE_CALLBACK,
11642         GTK_TYPE_C_CALLBACK,
11643         GTK_TYPE_FOREIGN,
11644         GtkTypeQuery,
11645         gtk_type_query(),
11646         gtk_type_set_varargs_type(),
11647         gtk_type_get_varargs_type(),
11648         gtk_type_check_object_cast(),
11649         gtk_type_check_class_cast(),
11650         gtk_type_describe_tree(),
11651         gtk_type_describe_heritage(),
11652         gtk_type_free(),
11653         gtk_type_children_types(),
11654         gtk_type_set_chunk_alloc(),
11655         gtk_type_register_enum(),
11656         gtk_type_register_flags(),
11657         gtk_type_parent_class().
11658         replacements, where available are described in ../docs/Changes-1.4.txt.
11659         implemented compatibility functions for the remaining API.
11660
11661         * configure.in: depend on glib 1.3.1, use gobject module.
11662
11663 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11664
11665         * TODO.xml: Various updates to current status.
11666
11667 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11668
11669         * gtk.m4: Print out version when test succeeds.
11670
11671 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11672
11673         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11674         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11675         
11676         (Original triangle color selector from Simon Budig
11677         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11678         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11679         Santiago <mrcooger@cyberverse.com>)
11680
11681         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11682         out into a separate widget.
11683
11684         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11685         and opacity controls.
11686
11687 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11688
11689         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11690         snuck in prematurely.
11691
11692 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11693
11694         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11695         had deleted a ! operator by mistake, which caused
11696         GDK_SELECTION_CLEAR events never to be generated, which caused
11697         only the first copy to the clipboard from an gtkeditable to
11698         actually cause a copy to the Windows clipboard.
11699
11700 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11701
11702         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11703         compilation, too. Current mingw gcc distributions include the
11704         necessary headers. Also the necessary IIDs are now in mingw
11705         headers/libraries, and own definitions unnecessary.
11706
11707         More hacking on OLE2 DND, still doesn't work though, and thus
11708         ifdeffed out.
11709
11710         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11711         here, too.
11712
11713 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11714
11715         * gdk/nanox/*: nano-X port work in progress.
11716         * gdk/simple.c: simple test for Gdk.
11717         * README.nanox: notes about the port: read this first!
11718         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11719         with nano-X.
11720
11721 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11722
11723         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11724         gdk_window_clear() into common code, implement in terms of
11725         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11726         not redirected to the backing rectangle.
11727
11728 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11729
11730         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11731         EXTRA_DIST. It does not work well when the file that
11732         everything depends on is not in the tarball.
11733
11734 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11735
11736         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11737         with recursion where process_updates() is called from
11738         an expose handler. (GtkTextView is highly broken in
11739         doing this, but it should work, so it is a nice test
11740         case.)
11741
11742 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11743
11744         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11745         handle the case where updates are queued during processing of
11746         updates.
11747
11748 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11749
11750         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11751         window is on gdk_display - use that instead of segfaulting.
11752
11753 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11754
11755         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11756         broken and require an empty arg, give it to them.
11757
11758 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11759
11760         * gtk/gtklabel.h: indentation fixes.
11761
11762 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11763
11764         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11765         draw too narrow or too low arcs, they seem to fail, at least with
11766         some display drivers.
11767
11768         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11769
11770         Large changes to the Win32 backend, partially made necessary by
11771         the changes to the backend-independent internal
11772         structures. Attempts to implement similar backing store stuff as
11773         on X11. The current (CVS) version of the Win32 backend is *not* as
11774         stable as it was before the no-flicker branch was merged. A
11775         zipfile with that version is available from
11776         http://www.gimp.org/win32/. That should be use by "production"
11777         code until this CVS version is usable. (But note, the Win32
11778         backend has never been claimed to be "production quality".)
11779
11780         * README.win32: Add the above comment about versions.
11781
11782         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11783
11784         * gdk/gdk.def: Update.
11785
11786         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11787         presumably be replaced by some more better mechanism as 1.4 gets
11788         closer to release shape.
11789
11790         * gdk/makefile.{cygwin,msc}: Update.
11791
11792         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11793         internal headers. Change code according to changes in these. Use
11794         gdk_drawable_*, not gdk_window_* where necessary.
11795
11796         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11797         our old DND.
11798
11799         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11800         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11801         Use correct function name in warning messages.
11802
11803         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11804         GSourceFuncs gdk_event_prepare and gdk_event_check.
11805         (gdk_event_get_graphics_expose): Do implement, use
11806         PeekMessage. Thanks to Hans Breuer.
11807         (event_mask_string): Debugging function to print an GdkEventMask.
11808         (gdk_pointer_grab): Use it.
11809
11810         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11811         (old) book I used claimed was Hangul actually is CJK Unified
11812         Ideographs Extension A. Also, Hangul Syllables were missing.
11813         Improve logging.
11814
11815         * gdk/win32/gdkgc-win32.c: Largish changes.
11816
11817         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11818         g_win32_getlocale() from GLib, and not setlocale() to get current
11819         locale name.
11820
11821         * gdk/win32/gdkprivate-win32.h
11822         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11823         gdkwin32.h, similarily as in the X11 backend.
11824
11825         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11826         assignment was used instead of equals in if test. Thanks to Hans
11827         Breuer.
11828
11829         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11830         the X11 version.
11831
11832         * gdk/win32/makefile.{cygwin,msc}
11833         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11834         path to the Win32 headers that works also with the mingw compiler.
11835
11836         * gtk/gtkstyle.c: Include <string.h>.
11837
11838 2000-04-26  Havoc Pennington  <hp@redhat.com>
11839
11840         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11841         replacing the broken gtk_label_get ()
11842
11843 2000-04-15  Havoc Pennington  <hp@pobox.com>
11844
11845         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11846         this keeps scanner scripts from getting confused.
11847
11848         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11849         data, rather than void
11850
11851 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11852
11853         * gtk/gtkclist.c (gtk_clist_motion)
11854         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11855         with is_hint FALSE, get x and y from the event. They used to be
11856         used uninitialised. The Win32 backend never sends motion events
11857         marked as hints. This for instance fixes the annoying file and
11858         font selector behaviour in the Win32 version.
11859
11860 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11861
11862         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11863         gtk_private_n_signals variables, they are used by some software,
11864         sigh.
11865
11866         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11867         installation directory from the Registry, where the installer
11868         should have put it.
11869
11870 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11871
11872         * gdk/x11/Makefile.am: Fix problem with installation directory for
11873         gdkx.h
11874
11875         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11876         <mrcooger@cyberverse.com> so that when selecting menus with the
11877         mouse, the first item will not be selected, but when selecting
11878         with an accelerator, or navigating left-right on a menubar with
11879         the menus popped up, the first item will be selected.
11880
11881 2000-04-05  Dan Damian  <dand@dnttm.ro>
11882
11883         * configure.in: Added "ro" to ALL_LINGUAS.
11884
11885 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11886
11887         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11888         indentation.
11889
11890         * Makefile.am (EXTRA_DIST): Fix typo.
11891
11892         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11893         to catch gdkconfig.h
11894
11895         * gtk/gtkitemfactory.c: Added FIXME.
11896
11897 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11898
11899         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11900         s/return_if_fail/return_val_if_fail/g and add a return value.
11901
11902 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11903
11904         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11905         merge slipup.
11906
11907         * gdk/gdkinput.h: Fix missing line from merge.
11908
11909 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11910
11911         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11912         instead of gdkprivate.h.
11913
11914 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11915
11916         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11917         parent class to correctly be GtkDialogClass.
11918
11919 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11920
11921         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11922         toplevel windows and their immediate children by their parents,
11923         since the size of toplevel windows is out of our immediate
11924         control and we don't get any real benefit from trying to track
11925         this size for clipping.
11926
11927         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11928         for input_only windows.
11929
11930         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11931         to fix some hacks and make sure that we don't try to set the
11932         background of input only windows.
11933
11934 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11935
11936         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11937         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11938         stuff that we've traditionally exposed.
11939
11940         * gdk/**.c: Use gdkinternals.h where appropriate.
11941
11942         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11943         not include gdkprivate-x11.h, move all stuff of conceivable public
11944         interest into gdkx.h; keep all really private stuff in
11945         uninstalled header gdkprivate-x11.h.
11946
11947         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11948         image->image_put on windows through a new function _gdk_window_draw_image()
11949         to allow us to do backing store for images. (Sort of ugly)
11950
11951         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11952         contexts locally so that we can offset them properly when drawing 
11953         onto backing pixmaps.
11954
11955         * gdk/gdkinput.h: Reindented
11956
11957         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11958         pixmap or color for the window, so we can properly initialize
11959         our double-buffer pixmaps, and also so that we temporarily set
11960         a background of None while scrolling.
11961
11962         * gdk/gdkregion.h: Revise region boolean operators to have an
11963         interface that is actually convenient - switch from creating new
11964         regions on every op, to "methods" that modify existing regions
11965         (A = A OP B). 3 argument forms which allow dest == src, would also
11966         be possible, but the current interfaces seem to map nicely
11967         onto what needs to be done. (There is quite a lot of region
11968         code in GDK now.)
11969
11970         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11971         operator.
11972
11973         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11974         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11975         to 32 bit coordinates, modify it to be mostly GTK+ style
11976         and to have interfaces that match gdkregion.h.
11977
11978         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11979         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11980         create a backing pixmap and redirect all drawing to
11981         that backing pixmap until a matching gdk_window_end_paint().
11982
11983         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11984         Create a special drawable class for GtkWindow's that 
11985         redirects the drawing to the backing pixmap as necessary
11986         and then calls the real operations in _gdk_windowing_window_class.
11987
11988         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11989         Store invalid region for each window. Generate expose events for invalid
11990         region in an idle. This replaces both the expose compression
11991         and the redrawing queuing in GTK+. It is both more efficient and
11992         simpler than either one individually and far more so then the
11993         combination.
11994
11995         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11996         Emulate 32 bit coordinates for windows with 16 bit coordinates
11997         by offsetting drawing, guffaw scrolling techniques and
11998         mapping/unmapping child windows as necessary.
11999
12000         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12001         where, when invalid regions are processed, the region is stored,
12002         and if expose events come in that are detectably duplicate
12003         the processed exposes (by comparison of event serial numbers),
12004         the stored region is subtracted out of those exposes.
12005
12006         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12007         regions newly exposed when scrolling or resizing windows.
12008         This, combined with forcing processesing of queued invalidated
12009         regions, gives nice flicker-free scrolling.
12010
12011         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12012         invalidated regions after every scroll.
12013
12014         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12015         emulation in GDK. Its, for all practical purposes just a
12016         GtkViewport/GtkFixed hybrid now.
12017
12018         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12019         (16-bit) structures as necessary instead of just casting.
12020
12021         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12022         in terms of the structures from gdkregion-generic.c, using appropriate
12023         offsets from GDK to X11 coordinates. Cache clip mask and
12024         origin and ts origin locally and only flush to the server
12025         when drawing, to avoid constantly setting and resetting these
12026         values when offsetting GC's for scrolling and backing pixmaps.
12027
12028         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12029
12030         * gtk/gtkcontainer.c: Call process_all_updates at end
12031         of resizing to reduce flicker. (Avoids having redraw
12032         lag arbitrarily behind resize under some circumstances)
12033
12034         * gtk/gtkentry.c: Remove old backing store code, and simply take
12035         advantage of the new backing store capabilities of GDK.
12036
12037         * gtk/gtkmain.c: Simple implementation of widget backing
12038         store - simply push a paint while handling each expose.
12039         (Should really be configurable widget for widget.)
12040         
12041         * gtk/gtkwidget.c: Remove all the old complicated redraw
12042         code, and simply invalidate the GDK windows from
12043         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12044         debugged complexity ... gone to the winds.)
12045
12046         Remove all the code for suppressing expose events while
12047         resizes are pending; this isn't needed since the invalid
12048         areas won't be processed until after the resizes are
12049         processed, since they are in a lower priority idle.
12050
12051 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12052
12053         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12054         and height of dest rectangle for non-intersecting rectangles.
12055
12056 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12057
12058         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12059         for GdkRectangle.
12060
12061 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12062
12063         * gdk/gdk{events,image,private,types,window}.h
12064          gdk/x11/gdkinputprivate.h: Change all coordinates
12065          from int16 to int. Also, Change width and height from
12066          unsigned to signed to avoid all the stupid C 
12067          signedness bugs.
12068
12069 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12070
12071         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12072         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12073         Add some more detailed checking.
12074
12075         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12076         New function to retrieve the depth of a drawable.
12077
12078         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12079         field, reorder fields to save memory. 
12080
12081 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12082
12083         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12084         of the background image instead of scaling the background down to
12085         a line.
12086
12087         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12088         which temporarily set slider to wrong size.
12089
12090         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12091         queue_clear().
12092
12093 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12094
12095 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12096
12097         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12098
12099 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12100
12101         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12102         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12103
12104         * gdk/win32/gdkfont-win32.c
12105         * gdk/win32/gdkproperty-win32.c
12106         * gdk/win32/gdkselection-win32.c
12107         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12108         now declared such.
12109
12110 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12111
12112         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12113
12114 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12115
12116         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12117         is called without trapping X errors.
12118
12119 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12120
12121         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12122         way into the fontset lists.
12123
12124 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12125
12126         * gtk/gtkthemes.h: add extern "C" scope.
12127
12128 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12129
12130         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12131         to make appends to the list constant. (gtk-guy-990901-0.patch)
12132
12133 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12134
12135         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12136         for the typename hash table.
12137
12138 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12139
12140         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12141         to make sure we never divide by zero. 
12142         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12143
12144 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12145
12146         * gtk/gtkfontsel.c: Apply patch from
12147         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12148         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12149
12150         Also, some cleanups in atom handling.
12151
12152 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12153
12154         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12155         not GtkWidget.
12156
12157 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12158
12159         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12160         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12161         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12162         more guint wrap-around bugs before going to bed.
12163
12164 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12165
12166         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12167         guint wrap arounds in allocation.width.
12168
12169         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12170         process untill we fit the allocation given.
12171
12172 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12173
12174         * gtk/gtkwidget.c:
12175         (gtk_widget_unrealize): guard widget access with ref/unref
12176         around signal emission.
12177         (gtk_widget_hide): same here, but also check its destroyed
12178         state before queueing a resize.
12179
12180 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12181
12182         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12183         of gtk_default_insensitive_bg as insensitive base color.
12184
12185         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12186         to the widget's state.
12187         (gtk_text_realize): same here.
12188         (gtk_text_state_changed): same here.
12189         (draw_bg_rect): compare background color against base[] from
12190         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12191
12192 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12193
12194         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12195         grabs are active, unless a delete event is send to the toplevel
12196         of the currently grab holding widget.
12197
12198 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12199
12200         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12201         debugging g_print's.
12202
12203 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12204
12205         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12206         ever make the scrolled-window requisition ever depend on the 
12207         visibility state of the scrollbars for the AUTOMATIC policy. 
12208         This breaks the GTK+ requisition model, and causes loops.
12209
12210 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12211
12212         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12213         the default font to avoid problems with XFree86-4.0 where the
12214         default charset is iso10646-1, not iso8859-1.
12215
12216 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12217
12218         * acinclude.m4
12219         * config.guess
12220         * config.sub
12221         * ltconfig
12222         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12223
12224         * gtk/Makefile.am: minor cosmetic consistency tweak
12225
12226 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12227
12228         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12229         the activate_time to 0, so that we handle a quick
12230         press/release press/release properly and don't suppress
12231         the second release. (Red Hat bug #7545)
12232
12233 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12234
12235         * gtk/gtkctree.c (row_delete):
12236         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12237         bugs with destruction notifier, *always* update internal
12238         structures *before* calling user code.
12239
12240 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12241
12242         A few more fixes for bug #5487, #2051, #2677.
12243         * gtk/gtkclist.c : 
12244         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12245         not GDK_BUTTON_PRESS.
12246         (resync_selection): resync only if selection_mode is
12247         GTK_SELECTION_EXTENDED
12248         * gtk/gtkctree.c (resync_selection): same here
12249
12250 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12251
12252         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12253         gdk_drag_get_selection() and gtk_menu_detach().
12254
12255         [ From Jeroen Ruigrok/Asmodai ]
12256
12257 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12258
12259         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12260         page->tab_label can be NULL.
12261
12262 2000-01-25  Havoc Pennington  <hp@pobox.com>
12263         
12264         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12265         arg is boolean
12266
12267         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12268
12269         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12270
12271         * gdk/gdkproperty.c (gdk_property_get): return boolean
12272
12273         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12274
12275         * gdk/gdkim.c (gdk_im_ready): return boolean
12276
12277         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12278
12279         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12280         glib clash, should fix glib)
12281
12282         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12283         (gdk_get_show_events): return gboolean, and canonicalize 
12284         to TRUE/FALSE
12285
12286         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12287         colormap is private
12288         (gdk_colors_alloc): gboolean whether to be contiguous
12289         (gdk_color_equal): return gboolean since we are a predicate
12290         and not a qsort() (this looks semi-wrong due to glib breakage,
12291         IMO glib should be fixed)
12292         
12293         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12294         (gdk_get_use_xshm): return gboolean
12295         (gdk_pointer_is_grabbed): return gboolean
12296
12297         * gdk/gdk.h: Change prototypes to match all the above changes,
12298         and re-run egtk-format-protos as required.
12299
12300 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12301
12302         * gtk/gtkctree.c (resync_selection): 
12303         * gtk/gtkclist.c (resync_selection):
12304
12305         Return immediately if clist->drag_pos < 0. This is a workaround
12306         for the corrupt state that the clist gets into when a
12307         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12308
12309         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12310         
12311         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12312         variable from recent commit.
12313
12314 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12315
12316         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12317
12318 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12319
12320         * gtk/Makefile.am: prefix all autogenerated source that get build in
12321         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12322         in builddir. since we subsequently cd into srcdir for autogeneration,
12323         the paths have to be stripped from the target file names, thusly we
12324         use $(@F) as target names now.
12325         put a comment about configure.in's --disable-rebuilds option,
12326         which can be used for non-writable source directories, for development
12327         setups though, srcdir has to be *writable*.
12328
12329 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12330
12331         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12332           Finish the job of allowing event to be NULL.
12333           (Fixes bug #4283, reported by Chris Blizzard)
12334
12335         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12336           things so that the cursor appears on screen, properly
12337           take into account INNER_BORDER.
12338           (Fixes bug #4754, reported by Antonio Campos)
12339
12340 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12341
12342         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12343           show the tab_label unless it itself is visible.
12344
12345           gtk/gtknotebook.c (gtk_notebook_size_request):
12346           Do a better job of making sure that the visibility
12347           of the tab label corresponds to whether it should
12348           be mapped or not.
12349
12350 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12351
12352         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12353           Use the requisition, not the allocation, since the
12354           allocation has not necessarily been computed yet.
12355           (Pointed out by Eugene Osintsev)
12356
12357 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12358
12359         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12360           style/base[GTK_STATE_INSENSITIVE] both to
12361           gtk_default_insensitive_bg!
12362           (Bug #2187, reported by Jonathan Blandford)
12363
12364         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12365           Add Alt_L, Alt_R to list of invalid accelerators.
12366           (Bug #3736, reported by Vlad Harchev)
12367
12368 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12369
12370         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12371         bugs which occured after an attempt to open 
12372         invalid home directory left cmpl_state->reference_dir == NULL.
12373
12374          - completion on files in home directory didn't work
12375          - completion on an empty string caused  segfault
12376
12377          (Bug #3678, reported by Steve Ratcliffe)
12378
12379         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12380         cut and paste error that was causing scales to
12381         be incorrectly positioned.
12382         (Bug #2956,
12383          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12384
12385 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12386
12387         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12388         when checking for dcgettext, if we've found we needed
12389         it for dgettext.
12390 +
12391 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12394         queue_clear on NO_WINDOW widgets during a reparent,
12395         since at that point the window and widget heirarchies
12396         are out of sync. This stops crashing in some cases
12397         (the scrolled window reparent test, for instance), and
12398         _probably_ won't cause drawing errors.
12399
12400         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12401         test do what it was supposed to do and be robust against
12402         window closings, etc. (Bug #2443)
12403
12404 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12405
12406         * gtk/gtkentry.c: Fix return values on mouse events.
12407         (Bug #2686, Sky <seb_sky@yahoo.com>)
12408
12409         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12410         (pointed out by George Lebl)
12411
12412         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12413         (From Ettore Perazzoli  <ettore@helixcode.com>)
12414  
12415 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12416
12417         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12418         clicks between rows or outside calender area correctly.
12419         (Patch from Damon Chaplin)
12420
12421         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12422         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12423           Call destroy function when overwriting existing data. 
12424           (Pointed out by Damon Chaplin)
12425
12426 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12427
12428         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12429           which was causing problems on various systems with Xmu.
12430           This hasn't been needed for a very long time.
12431           (Fixes #1185 3167)
12432
12433 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12434
12435         * gdk/gdki18n.h: Include <ctype.h> when defining
12436           gdk_isw* in terms of is* as a fallback.
12437           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12438
12439 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12440
12441         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12442           realize the widget when it is size allocated!
12443           (old, old bug)
12444
12445         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12446           Removed unused call to gdk_window_get_size() that
12447           showed up when the above was fixed.
12448
12449 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12450
12451         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12452           fix up widget->window when the widget is a
12453           NO_WINDOW container widget.
12454
12455 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12456
12457         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12458           to account for the fact that feof() does _not_ 
12459           return TRUE on errors, and thus avoid infinite loops
12460           when trying to use gdk_pixmap_create_from_xpm()
12461           on unreadable values.
12462
12463 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12464
12465         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12466
12467 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12468
12469         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12470           gdk_gc_set_dashes to take gint8 instead of gchar to
12471           make it clearer that it is _not_ a NULL terminated string.
12472
12473         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12474           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12475           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12476           arguments.
12477
12478 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12479
12480         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12481         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12482         background size relative to our allocation, guard against small
12483         allocations, we may have not yet been size allocated.
12484
12485 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12488         not just version == 3. We implement all 3 + most of 4 - 
12489         (we don't support matching text/plain;charset=iso-8859-1
12490         to a dest that expects text/plain). We'll still advertise
12491         3 to be safe, but any client implementing version >= 3
12492         must interoperate with 3.
12493         
12494 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12495
12496         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12497         background and gc members, add a warning in gtk_tooltips_set_color()
12498         indicating that this function is deprecated.
12499
12500 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12501
12502         * docs/gtkfaq.sgml: FAQ Update:
12503           - Minor cleanups (Emmanuel, me)
12504           - New questions:
12505                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12506                 How can I retrieve the text from a GtkMenuItem? (timj)
12507                 How do I validate/limit/filter the input to a GtkEntry? (me)
12508                 Memory does not seem to be released when I free the list
12509                         nodes I've allocated (timj)
12510
12511 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12512
12513         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12514         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12515         for which it is no use to call GetLastError onWin9x.
12516         (gdk_other_api_failed) New function, for general error
12517         reporting without calling GetLastError.
12518         (gdk_win32_api_failed) OTOH, this function always calls
12519         GetLastError. (gdk_win32_last_error_string) Remove this function,
12520         GLib has the equivalent now.
12521
12522         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12523         call them with function name, file name and line number in the
12524         arguments.
12525
12526         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12527         functions.
12528         
12529         * gtk/gtk.def: Add some missing entry points.
12530
12531         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12532         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12533         
12534         Fixes by Hans Breuer:
12535
12536         * gdk/makefile.msc: Update for debugging.
12537
12538         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12539         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12540         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12541         in the dash_list.
12542
12543         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12544         the x11 backend.
12545
12546         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12547
12548         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12549
12550 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12551
12552         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12553         just pixel value of background colour.
12554
12555         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12556         containing code snippet previously duplicated in a couple of
12557         places.
12558         
12559         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12560         gdk_colormap_color.
12561
12562         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12563         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12564         events for autorepeated Shift, Control and Alt keys. Use
12565         gdk_colormap_color.
12566
12567         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12568         pointer is inside the window the cursor of which we are setting,
12569         call SetCursor immediately.
12570
12571         * gdk/win32/makefile.cygwin
12572         * gtk/makefile.cygwin: If we don't have the build number stamp
12573         file, use zero.
12574
12575         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12576         gtk_paned_set_gutter_size as empty.
12577
12578         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12579         
12580 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12581
12582         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12583           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12584           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12585           docs/gtk_tut.sgml docs/gtk.texi TODO:
12586
12587           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12588
12589 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12590
12591         * gtk/gtkcalendar.c: Implement num_marked_dates,
12592           and don't emit mutiple day_selected signals on
12593           month_prev.
12594
12595 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12596
12597         * docs/make-todo (lineno): let title and logo be configurable so
12598         that GNOME can use this script too.
12599
12600         * TODO.xml: added logourl and a title
12601
12602 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12603
12604         * TODO.xml: Added some UI items, and an explanatory
12605         comment at the top of the file.
12606
12607 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12608
12609         * TODO.xml: some updates, added abunch of new entries.
12610         a note for those fiddeling with this file, when done
12611         with it, invoke:
12612         $ ./docs/make-todo TODO.xml >/dev/null
12613         and correct output errors before comitting changes.
12614
12615 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12616
12617         * TODO.xml: Added XML-structured TODO file.
12618         * docs/make-todo: python script to turn TODO.xml into
12619           pretty XML output. 
12620
12621 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12622
12623         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12624         the function to let it draw the seven dots, instead of the old,
12625         much maligned, method.
12626         (draw_dot): New function to draw a dot.
12627
12628         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12629         to draw the handle inside the border width as opposed to outside.
12630         Use paint function instead of gdk_draw_point.
12631
12632         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12633         to draw the handle inside the border width as opposed to outside.
12634         Use paint function instead of gdk_draw_point.
12635
12636         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12637         Change indenting to be more GTK like.
12638
12639 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12640
12641         * docs/gtk_tut.sgml: New section on GtkCalendar
12642         * examples/calendar: Update example code
12643
12644 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12645
12646         * docs/gtkfaq.sgml: FAQ Update
12647
12648 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12649
12650         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12651         to prevent the scroll event to be propagated upwards.
12652
12653 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12656         OwnerGrabButtonMask from button entries for
12657         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12658
12659         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12660         to the event mask (which will result in button/press release
12661         being added to the event mask on Unix) so scrolling works
12662         for layouts in scroll windows.
12663
12664         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12665
12666         Patch from Anders Carlsson  <andersca@gnu.org> to add
12667         a scroll event.
12668
12669         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12670         scrolling to the "Test Scrolling" part of testgtk.
12671  
12672         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12673  
12674         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12675         it against GDK_SCROLL.
12676  
12677         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12678         way of mouse wheel scrolling.
12679  
12680         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12681  
12682         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12683  
12684         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12685  
12686         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12687         gdk_event_mask_table.
12688  
12689         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12690         GdkEventScroll handler.
12691  
12692         * gdk/gdkevents.h: Added GdkEventScroll structure.
12693  
12694 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12695
12696         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12697         and Anders Carlsson to change the Paned widgets so that they
12698         can be dragged from anywhere along the length. Also change
12699         the way that this is drawn to make this apparent.
12700
12701         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12702         from George Lebl to check that option_menu->menu is present
12703         before getting history.
12704
12705 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12706
12707         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12708         before the assertion for non-NULL segment list.
12709
12710         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12711         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12712         machine, but it might be display driver dependent. Sigh, so make
12713         sure the stipple is that size. Does Windows suck or what?
12714
12715         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12716         places.
12717
12718 2000-02-13  Havoc Pennington  <hp@pobox.com>
12719
12720         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12721         refcount to 1
12722         (gdk_cursor_new): init refcount to 1
12723
12724         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12725
12726 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12727
12728         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12729         so that we don't have to do unnecessary settings to the HDC.
12730
12731         * gdk/win32/gdkdrawable-win32.c
12732         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12733         gdk_gc_predraw.
12734
12735         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12736         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12737         GDI paths, call WidenPath to get the outline of the stroken path,
12738         and then fill the outline (with the brush that was built from the
12739         stipple).
12740
12741         * gdk/win32/gdkgc-win32.c: Factor out common code from
12742         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12743         gdk_win32_gc_values_to_win32values. Use correct colour for
12744         SetBkColor() (Until now the code actually used a random colour in
12745         the call to SetBkColor()... but that didn't show up as not many
12746         GDI APIs use the background colour. Pattern (opaque stippled)
12747         brushes do.)
12748
12749         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12750         gdk_win32_api_failed): New functions for error logging.
12751
12752         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12753         WIN32_API_FAILED to call them, passing function or file name and
12754         line number.
12755
12756         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12757
12758         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12759         GdkColor for foreground and background in GdkGCWin32Data.
12760
12761         * gdk/makefile.cygwin: Link in the resource object separately.
12762
12763         * gdk/win32/rc/gdk.rc
12764         * gtk/gtk.rc (New file)
12765         * gdk/win32/makefile.cygwin
12766         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12767         as in GLib.
12768
12769 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12770
12771         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12772         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12773         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12774         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12775         parameters given and cursor->ref_count. coding style fixups.
12776
12777         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12778         not GtkWidget.
12779         
12780         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12781         fix up widget macros and add _GET_CLASS() variant.
12782         
12783         * gtk/*.c: some GtkType fixups.
12784
12785 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12786
12787         * gdk/win32/gdkproperty-win32.c
12788         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12789         were reversed.
12790
12791 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12792
12793         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12794         g_filename_to_utf8 to convert the font names Windows gives us from
12795         whatever is the default codepage to UTF-8.
12796         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12797         in the other direction.
12798
12799         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12800         error in debugging output.
12801
12802 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12803
12804         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12805         and height parameters to gdk_window_clear_area(). Not minus one.
12806
12807 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12808
12809         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12810         checks if the widget passed to gtk_drag_get_data() was not the
12811         dest widget.
12812
12813 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12814
12815         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12816         g_filename_from_utf8 functions (which were added a moment ago to
12817         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12818         size buffers.
12819
12820         gtk_file_selection_get_filename returns the filename in the C
12821         runtime encoding. It calls g_filename_from_utf8, but copies the
12822         returned string to a static buffer, which is returned. I think
12823         this is better than returning the result from g_filename_from_utf8
12824         directly, which would mean all apps that use it would have to free
12825         the return value. Or should this function care about this issue at
12826         all? Maybe a new function with clearly defined semantics.
12827
12828         * gtk/gtkfilesel.h: Add comment about
12829         gtk_file_selection_get_filename returning the filename in the C
12830         runtime's encoding.
12831
12832         * README.win32
12833         * gdk/gdk.def
12834         * gdk/makefile.{cygwin,msc}
12835         * gtk/gtk.def: Updates.
12836
12837         * gdk/gdkcursor-win32.c: Initialise refcount.
12838
12839 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12840
12841         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12842
12843 2000-01-30  Havoc Pennington  <hp@pobox.com>
12844
12845         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12846         destroy
12847
12848         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12849
12850         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12851         implemented in platform-specific code
12852
12853         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12854
12855         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12856         underscore in front
12857
12858         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12859         put an underscore in front
12860
12861         * gdk/gdkcursor.c: new file, implements
12862         gdk_cursor_ref/gdk_cursor_unref
12863
12864         * gdk/gdkcursor.h: Refcount GdkCursor
12865
12866         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12867
12868 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12869
12870         * gdk/gdkwindow.h
12871         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12872
12873 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12874
12875         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12876         structures to properly inherit from GtkWidget not GtkBin.
12877
12878 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12879
12880         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12881         (bug #5178 - Peter Wainright)
12882         
12883         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12884         so that it will be installed.
12885         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12886
12887 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12888
12889         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12890         for the GtkStyleClass vtable const.
12891
12892         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12893         take a const string argument like GtkTranslateFunc. This will
12894         require changes in use code.
12895
12896 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12897
12898         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12899         semantics (to mimic the X11 backend, which just calls XClearArea)
12900         is to check for zero width (and height), and in that case use the
12901         window's width minus x (height minus y). This fixes for instance
12902         some redraw problems with gtkclist, which were easily noticeable
12903         in the gtk file selection widget.
12904
12905         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12906         windows.
12907
12908 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12909
12910         * configure.in
12911         * gdk/Makefile.am
12912         * gdk/x11/Makefile.am
12913         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12914         (bug #5177).
12915         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12916         out later.
12917
12918 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12919
12920         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12921         WM_MOVE for iconified or invisible windows. This fixes various
12922         problems when minimising windows. Thanks to Bernd Herd.
12923
12924 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12925
12926         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12927         backend's draw_lines method, not draw_points.
12928
12929 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12930
12931         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12932         before Owen's reorganisation: Don't have queued_events and
12933         queued_tail statics in this file, but use gdk_queued_events and
12934         gdk_queued_tail. This makes exposure event compression work again.
12935
12936         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12937         seem to be needed?
12938
12939 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12940
12941         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12942         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12943         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12944         doesn't do anything.
12945
12946         * gdk/gdk.def: Add gdk_xid_table_insert.
12947
12948         * gdk/win32/gdkprivate-win32.h
12949         * gdk/win32/gdkevents-win32.c
12950         * gdk/win32/gdkinput-win32.c
12951         
12952         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12953         extension_events field in the GdkWindowWin32Data struct. Use only
12954         the extension_events field in GdkWindowPrivate. Previously one was
12955         set, and the other one tested, which broke tablet
12956         functionality. Thanks to Keishi Suenaga for pointing this out.
12957
12958 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12959
12960         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12961         When handling a single character (text length == 1), don't handle
12962         it as if it was UTF-8.
12963
12964 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12965
12966         * Makefile.am: Distribute README.win32.
12967         
12968         * gdk/Makefile.am
12969         * gdk/win32/Makefile.am: Distribute Win32 files.
12970
12971         * gdk/makefile.msc: New file.
12972
12973         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12974         after label).
12975
12976         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12977         gdk_error_code as GDKVAR, as they are referred outside GDK.
12978
12979         * gdk/win32/makefile.msc: Update.
12980
12981         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12982         tweaks. Check only if at least one of those Unicode subrange bits
12983         we care for is set. If no code page bits are set, guess (wildly)
12984         based on the charset.
12985
12986         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12987
12988         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12989         non-NULL.
12990
12991         * gtk/gtkdnd.c
12992         * gtk/gtklayout.c
12993         * gtk/gtkplug.c
12994         * gtk/gtkselection.c
12995         * gtk/gtksocket.c
12996         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12997         appropriate. There must be a cleaner way to handle this?
12998
12999         * gtk/gtkrc.c: Must include windows.h on Win32.
13000
13001         * gtk/testgtk.c: No need to include gdkx.h.
13002
13003         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13004
13005 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13006
13007         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13008         the rbearing is set to the same as the width, but this should be
13009         fixed.
13010
13011 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13012
13013         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13014         function. If Windows doesn't tell us what Unicode subranges a font
13015         covers, guesstimate based on the codepages it covers. This will
13016         hopefully help those Windows versions or fonts that don't give us
13017         any useful Unicode subrange information with GetTextCharsetInfo.
13018         Call this function in gdk_font_load_internal.
13019
13020         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13021         minor changes.
13022
13023 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13024
13025         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13026         New function, long needed.
13027
13028 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13029
13030         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13031         only_if_exists argument of gdk_atom_intern to
13032         bool.
13033
13034 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13035
13036         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13037         Fix two copy&paste errors.
13038
13039         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13040         win32 has changed.
13041
13042         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13043         GdkWin32SingleFont struct.
13044
13045         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13046         subranges of loaded fonts. Clear font signature first, in case
13047         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13048         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13049
13050         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13051         Unoffset clip region.
13052
13053 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13054
13055         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13056         event->any.window before calling filter functions.
13057
13058 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gtk/gtkgamma.h: Adapt cast macros to standard.
13061
13062 [ Merges from 1.2 ]
13063
13064 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13065
13066         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13067         If translation does not include a '/', use entire
13068         translation instead of crashing.
13069
13070 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13071
13072         * docs/gtk_tut.sgml:
13073         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13074
13075 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13076
13077         * gtk/gtkselection.c (gtk_target_list_remove): Use
13078         g_list_remove_link, not g_list_remove.
13079
13080         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13081         
13082 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13083
13084         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13085         statement upon unselection (how the heck did that slip in?).
13086
13087 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13088
13089         * gtk/gtktext.c (gtk_text_freeze): 
13090         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13091         in frozen state (and aparently crashes). patch provided by Anders
13092         Melchiorsen <and@kampsax.dtu.dk>.
13093
13094 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13095
13096         * fix insensitive default/focus widget activation,
13097         reported by Matt Goodall <mgg@isotek.co.uk>.
13098
13099         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13100         (gtk_window_activate_default):
13101         (gtk_window_activate_focus):
13102         return handled=FALSE for actiavtion of insensitive default
13103         widgets. return handled=TRUE for activation of insensitive
13104         focus widgets. don't activate in either case.
13105
13106 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13107
13108         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13109         and $glib_cflags to match library order and in the
13110         theory that an old version of GLib is more likely to
13111         be in the include directory for X then vice-versa.
13112         (Bug #2776)
13113
13114 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13115
13116         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13117         to determine the locale for fontsets, not LC_MESSAGES;
13118         the user may want English messages with a handling
13119         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13120         will still be broken) (Bug #2891)
13121
13122 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13123
13124         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13125
13126 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13127
13128         * gtk/gtkrc.ko: Changed the Korean default fontset.
13129
13130 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13131
13132         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13133         where when scrolling to the left or top double exposes
13134         were done, causing major slowdowns.
13135
13136 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13137
13138         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13139         names to lowercase and alphanumeric, before looking
13140         them up.
13141
13142         * gtk/Makefile.am: Install codeset variant gtkrc files
13143         with normalized names.
13144
13145 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13146
13147         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13148         popup menus when the menu is already visible, but its parent
13149         is still hidden, (happens after tornoff window got hidden).
13150
13151 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13152
13153         * gtk/Makefile.am (install-data-local): Fix
13154         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13155         deleted, causing error messages on install.
13156
13157 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13160         the handle as well, since we now sometimes ignore
13161         exposes on the handle while resizing.
13162
13163 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13164
13165         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13166         extra g_free introduced in one of the last one or two 
13167         commits.
13168
13169 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13170
13171         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13172         consistent, put each style that a gtkrc.* file creates
13173         in a unique namespace, remove old files before installing.
13174
13175 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13176
13177         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13178         gtk_rc_init is called multiple times. (Yes, people who
13179         do that have bugs in their code.)
13180
13181 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13182
13183         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13184         Remove it since it's generated by the Makefile anyway
13185
13186 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13187
13188         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13189         device->info.axes for core pointer.
13190
13191 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13192
13193         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13194         idle_id, to deal with obsolete, broken C libraries.
13195
13196 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13197
13198         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13199         allocation->x/y twice!
13200
13201         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13202         consistent with gtk_vscale_pos_trough().
13203
13204 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13205
13206         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13207         be queueing a resize on a toplevel container between
13208         the time we show it and when we map it. So, we need
13209         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13210         use GTK_WIDGET_DRAWABLE() for child windows.
13211
13212 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13213
13214         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13215         (fixes bug #2144)
13216
13217 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13218
13219         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13220         container DRAWABLE (instead of VISIBLE), so we don't queue
13221         resizes on non-toplevel containers.
13222
13223 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13224
13225         * gtk/gtkselection.[ch]: Make the data argument
13226         const guchar *.
13227
13228 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13229
13230         * gtk/gtkwindow.c: Try to behave sensibly if 
13231         the focus widget is the window itself. (Should
13232         we allow this at all?)
13233
13234 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13235
13236         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13237         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13238         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13239         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13240         in prototypes and implementations consistent (Tomas Ogren).
13241
13242         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13243         before the widget is unparented (reported by damon).
13244
13245         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13246         since we provide unsigned data anyways.
13247
13248 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13251         the call to gtk_tooltips_layout_text() until later.
13252
13253         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13254         Call gtk_widget_ensure_style() before using the style.
13255
13256 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13257
13258         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13259         for old widgets that don't propagate draws to all
13260         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13261
13262 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13263
13264         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13265         for a redraw but just the widget that requested the resize.
13266
13267 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13268
13269         * gtk/gtkcontainer.c: added new widget level method
13270         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13271         reallocate_redraws : 1 to reflect the setting, exported this through
13272         the argument system as a boolean ::reallocate_redraws.
13273
13274         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13275         on the widget because the allocation changes, do so as well for
13276         widget->parent if the parent has reallocate_redraws set to TRUE.
13277         with that containers requesting reallocation redraws get automatically
13278         redrawn if their children changed allocation (this unfortunately
13279         affects also other children that didn't change allocation, but we
13280         cannot work around that before 1.3).
13281
13282 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13283
13284         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13285         _and_ height are >0 (not _or_).
13286
13287         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13288         instead of gtk_container_queue_resize(), which is a core gtk internal
13289         function (must have been on crack when i queued that).
13290
13291         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13292         we can check more reliably if we want to discard expose events.
13293         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13294         flag.
13295         
13296         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13297         we simply trust these events. for deciding whether to discard exposes,
13298         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13299         
13300 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13301
13302         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13303         queues of areas that are completely off screen.
13304
13305         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13306         logic for handleboxes.
13307
13308         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13309         check on width/height.
13310
13311 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13312
13313         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13314         we are fine with using $@ the way we do (if we actually encounter
13315         brokeness with $@ in VPATH builds because of additional path prefixes,
13316         we need to use $(@F) actually).
13317
13318 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13319
13320         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13321         short lived bugs, that would allow language bindings to do surgeries
13322         to our guts.
13323
13324 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13325
13326         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13327         where comparison was being done against an uninitialized
13328         value causing intermittant results depending on
13329         compiler flags. Also make it clearer that we aren't
13330         ever initializing the child as 0x0 (though this will
13331         be caught in gtk_widget_size_allocate())
13332
13333 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13334
13335         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13336         gtk_window_unset_transient_for() call after we do checks
13337         involving the old transient parent.
13338         [ From Lance Capser <lmc@cyberhighway.net> ]
13339
13340 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13341
13342         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13343         an empty file.
13344
13345 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13346
13347         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13348         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13349
13350 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13351
13352         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13353         `$@' is valid only in the build dir, not after we've done 
13354         `cd $srcdir'.  Also use `test -f' instead of less portable
13355         `test -e'.
13356
13357 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13358
13359         * gtk/gtktext.c (correct_cache_insert): Rewrite
13360          for simplicity, and hopefully correctness.
13361          (Fixes bug #1322, which was a segfault when
13362           on some insertions with the properties around
13363           the insertion set up just wrong.)
13364
13365         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13366          a "changed" signal, clamp the new value to the adjustment
13367          bounds to avoid segfaulting if someone tries to change
13368          the adjustment to a bogus value. (Bug #1795)
13369
13370 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13371
13372         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13373         for children, for toplevel windows handle them
13374         like delete_event.
13375
13376         * gtk/gtkplug.c: Add an unrealize handler so that
13377         we unref plug->socket_window when we are done
13378         with it.
13379
13380 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13381
13382         * gtk/gtktext.c (clear_area): Fix stupid signedness
13383          problem that was causing background to sometimes
13384          be misaligned.
13385
13386 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13387
13388         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13389         
13390         * gtk/gtkmenu.c (gtk_menu_position): Make
13391          sure we never position menus with negative x, y,
13392          since gtk_widget_set_uposition() can't handle that.
13393
13394         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13395          Modify the positioning code a bit so that we always
13396          put the top-left corner onscreen. (This is for
13397          UI reasons, gtk_menu_position() now takes care of
13398          gtk_widet_set_uposition() brokeness.)
13399
13400 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13401
13402         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13403
13404 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13405
13406         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13407           RC style that is passed in. The lack of the ref
13408           before was a bug. If people worked around this
13409           bug, this will introduce a slight memory leak
13410           in their code. The code should typically look like:
13411
13412             rc_style = gtk_rc_style_new ();
13413             [...]
13414             gtk_widget_modify_style (widget, rc_style);
13415             gtk_rc_style_unref (rc_style);
13416
13417         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13418           the style if it was already set.
13419
13420         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13421           style if it was set before.
13422
13423 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13424
13425         * gtk/testgtk.c (main): Add a check to see if we
13426           are being run from the correct directory and
13427           to quit nicely if we are not.
13428
13429         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13430           static.
13431
13432 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13433
13434         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13435
13436         * gtk/gtkwindow.c:
13437         queue resizes unconditionally (gtk_widget_queue_resize will figure
13438         what to do if the window is not realized).
13439         (gtk_window_move_resize): only recenter the window
13440         for GTK_WIN_POS_CENTER_ALWAYS.
13441         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13442         the same way as GTK_WIN_POS_CENTER.
13443
13444 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13445
13446         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13447         with (!(info->last_flags & GDK_HINT_POS)) instead of
13448         (!info->last_flags & GDK_HINT_POS).
13449
13450         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13451         new_height unconditionally, because we use these values even if
13452         !default_size_changed && !hints_changed.
13453         comented the (default_size_changed || hints_changed) case with
13454         respect to resize rejects from the window manager.
13455
13456         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13457         in the zvt condition hack, since this includes the window hints, set
13458         the hints after the handling_resize case.
13459
13460         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13461         window is initially shown with to the geometry.
13462
13463 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13464
13465         * gtk/gtkwindow.c (gtk_window_move_resize):
13466         s/size_changed/default_size_changed/g so i know what's
13467         really going on (frying brain on smaller flame now).
13468
13469 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13470
13471         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13472         we have size_changed upon handling_resize. this is a gross
13473         workaround for the broken zvt widget and should be removed in
13474         1.3 again (search for FIXME).
13475         Owen provided an accurate comment for this:
13476
13477         /* We could be here for two reasons
13478          *  1) We coincidentally got a resize while handling
13479          *     another resize.
13480          *  2) Our computation of size_changed was completely
13481          *     screwed up, probably because one of our children
13482          *     is broken. It's probably a zvt widget.
13483          *
13484          * For 1), we could just go ahead and ask for the
13485          * new size right now, but doing that for 2)
13486          * might well be fighting the user (and can even
13487          * trigger a loop). Since we really don't want to
13488          * do that, we requeue a resize in hopes that
13489          * by the time it gets handled, the child has seen
13490          * the light and is willing to go along with the
13491          * new size. (this happens for the zvt widget, since
13492          * the size_allocate() above will have stored the
13493          * requisition corresponding to the new size in the
13494          * zvt widget)
13495          *
13496          * This doesn't buy us anything for 1), but it shouldn't
13497          * hurt us too badly, since it is what would have
13498          * happened if we had gotten the configure event before
13499          * the new size had been set.
13500          */
13501
13502 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13503
13504         * gtk/gtkrc.c: deal properly with the fact that RC
13505           style lists may include rc styles more than once.
13506
13507         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13508           unused static function.
13509
13510         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13511           stack of directories of RC files currently being
13512           parsed and implicitely add them to pixmap path.
13513           
13514           This fixes a bug where the directory would get
13515           appended then overwritten by pixmap_path declarations.
13516
13517           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13518
13519         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13520           theme's exit function. (Patch from Peter Wainwright,
13521           bug #1454)
13522
13523         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13524           Add a destroy() handler to take care of removing
13525           group for menu item. (Fixes bug #1197)
13526
13527         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13528           in warning message.
13529
13530 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13531
13532         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13533         roundtrip to figure window's width and height, since we know that
13534         anyways from widget->allocation.
13535
13536 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13537
13538         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13539           the hints after we request the new size.
13540
13541 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13542
13543         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13544           GTK_WIDGET_REALIZED() assertion - we can compute the
13545           hints before we are realized.
13546
13547         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13548           hint changing so that we have a value of hints_changed
13549           when we decide whether to constrain the window size.
13550
13551         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13552
13553         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13554         change back to G_MAXINT.
13555
13556 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13557
13558         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13559         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13560         contain uncluttered values.
13561         (gtk_window_compute_hints): simply assert that window is realized
13562         and that geometry_info is valid, since we rely on this anyways.
13563         (gtk_window_constrain_size): major cleanups to the code.
13564         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13565         for the base size, instead of the minimums. use 32767 as max width
13566         and height (like in gtkwindow.c) instead of G_MAXINT.
13567
13568 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13569
13570         * cleaned up the GtkContainer.need_resize flag handling mess, we
13571         only need to force resize requests when we were prematurely
13572         realized, or our widget tree was modified when we were temporarily
13573         hidden. handling these cases directly upon showing the window (i.e.
13574         while the GdkWindow is still unmapped) avoids the need to wait for
13575         a configure event response and therefore makes the GUI more snappier
13576         and avoids blank windows during the roundtrip.
13577
13578         * gtk/gtkwidget.c:
13579         (gtk_widget_hide): 
13580         (gtk_widget_show): don't queue resizes on toplevels, they know how
13581         to deal with matters.
13582
13583         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13584         flag directly for not visible resize containers and spare us unecessary
13585         signal emissions.
13586
13587         * gtk/gtkwindow.c:
13588         (gtk_window_realize): if we need to enforce premature size allocation,
13589         queue a container resize so we are correctly resized later on.
13590         (gtk_window_init):
13591         (gtk_window_size_request):
13592         don't freak around with the ->need_resize flag,
13593         gtk_container_queue_resize() will care about that.
13594         (gtk_window_show):
13595         handle initial resizing issues here, we can handle matters better in
13596         this place, especially since we know that our GdkWindow is still
13597         unmapped.
13598         (gtk_window_move_resize):
13599         don't care about ->need_resize at all.
13600         handle size changes properly that occoured while we waited for a
13601         configure event.
13602
13603 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13604
13605         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13606         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13607         Move the hint setting code from gtk_widget_set_uposition
13608         to here; set the hints so that we respect any previously
13609         set geometry hints.
13610
13611         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13612         change the window hints here or move the window here,
13613         let that happen in gtk_window_move_resize().
13614
13615 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13616
13617         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13618         to already queued resizes (and therefore redraws) on a widget, check
13619         its anchestry as well.
13620
13621         * gtk/gtkcontainer.c:
13622         (gtk_container_queue_resize): clear resize widgets for resize
13623         containers before aborting prematurely. this is especially important
13624         for toplevels which may need imemdiate processing or their resize
13625         handler to be queued.
13626         (gtk_container_dequeue_resize_handler): added new internal function for
13627         gtkwindow.c.
13628
13629         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13630         configure event, take possible changes in window position into account
13631         as well.
13632         if we request a new window size, queue up a resize handler that will
13633         last until the configure event response arrives.
13634         combined the ->need_resize case (initial show) with the general size
13635         (hints) changed case and added even more comments.
13636         if !auto_shrink, only revert to the old allocation if the new size
13637         is smaller than the current allocation.
13638
13639 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13640
13641         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13642                            gtk_window_set_geometry_hints
13643                            gtk_window_set_default_size):
13644         When hints are set, queue a resize so that the hints will
13645         be eventually reset on the toplevel.
13646
13647         * gtk/gtkwindow.c (gtk_window_show): Use
13648         gtk_window_compute_default_size(). Clear the need_resize flag
13649         on the initail map so that we don't unnecessarily trigger the
13650         resize code.
13651
13652         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13653         into separate functions. Compare the hints we are setting
13654         with what we set last time so that we can accurately
13655         tell when we need to reset the hints.
13656
13657         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13658         function to figure out the size from requisition
13659         and default_size.
13660
13661         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13662         from fvwm to constrain a size to the geometry hints.
13663
13664         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13665         to compare two sets of geometry hints.
13666
13667         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13668         from gtk_window_set_hints(), just compute the hints,
13669         don't set them.
13670
13671         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13672         code from gtk_window_move_resize() to separate function,
13673         rationalize a bit.
13674
13675 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13676
13677         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13678         structure into a new private structure.
13679
13680         * gtkrc.c: Split GtkRcStyle into public/private.
13681         In the private part, add a list of pointers to the
13682         RcStyle lists this RcStyle participates in.
13683
13684         * gtkrc.c: When a RcStyle is free, remove all
13685         lists referencing it from the 
13686         realized_style_ht hash, and free those lists.
13687         
13688         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13689         gtk_rc_init(), since that adds the default styles
13690         to the list of parsed RC files again.
13691
13692         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13693         
13694 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13695
13696         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13697         checks that ensure that a widget's allocation is at least 1 in width
13698         and height. (GNOME note: this doesn't affect old panel code anymore,
13699         because GtkSocket will request width and height of at least 1 since
13700         Fri Jul 23).
13701
13702         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13703         allocated yet (happens if the user realizes the window prematurely),
13704         size request and allocate it.
13705         (gtk_window_size_allocate): guard against guint underflows.
13706
13707 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13708
13709         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13710         in gtk_built_sources, so gtk.defs gets built prior to all other
13711         sources.
13712
13713 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13714
13715         * gtk/Makefile.am:
13716         invoke indent on gtkmarshal.*. 
13717         rewrote source generation rules, use COPYING as oldest source tag for
13718         a piggyback rule to generate all sources from (don't touch it ;).
13719         major cleanups, strip spaces on build rules for GNU Make.
13720
13721         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13722         source and target files from commandline arguments. don't invoke indent.
13723
13724 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13725
13726         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13727         notebook after switch to avoid drawing problems.
13728         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13729         
13730         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13731         show them instead. 
13732         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13733
13734 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13735
13736         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13737         notebook after switch to avoid drawing problems.
13738         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13739         
13740         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13741         show them instead. 
13742         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13743
13744 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13745
13746         * gtk/gtkwindow.c:
13747         we use window->need_resize from configure_event now, to indicate that
13748         the gtkwindow should keep its allocation (e.g. because the user resized
13749         the window through window manager handles). resize_count is now reliably
13750         used to figure whether we got the allocation we requested from the
13751         window manager.
13752         configure events get queued as resizes now, the real stuff (size
13753         computation and allocation) now only goes on in gtk_window_move_resize().
13754         GtkWindow's requisition now contains its *real* requisition (like all
13755         other widgets), *not* taking usize into account.
13756         geometry_info->last_{width|height} is now updated from set_hints() only
13757         so it always contains the last hints we set for the window manager.
13758         made some event handlers return TRUE instead of FALSE.
13759         the overall code should be much more straight forward now, and the
13760         significant code portions are accompanied by comments now.
13761         (gtk_window_set_hints):
13762         removed requisition argument and made it
13763         fetch the requisition through gtk_widget_get_child_requisition.
13764         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13765         does that now.
13766         (gtk_window_show):
13767         ensure that the widget is realized before calling 
13768         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13769         ensure that we got properly size requested and allocated before
13770         realization.
13771         (gtk_window_configure_event):
13772         ignore plain window moves, or reallocate the widget tree through the
13773         resize queue otherwise.
13774         (gtk_window_move_resize):
13775         mostly rewrote this function to figure window manager hints more
13776         reliably, coalesce window moves and resizes to reduce configure events
13777         and do actuall size allocations.
13778
13779 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13780
13781         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13782         that have a resize pending, because a redraw is already queued for them.
13783
13784         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13785         hack to clear resize_widgets.
13786
13787         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13788         for resize containers prior to size allocation. (this is also a bit
13789         ugly, but avoids side effects for stopped emissions and is thus more
13790         reliable).
13791         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13792
13793         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13794         function from gtk_tooltips_expose, as we connect to ::expose_event
13795         *and* ::draw now.
13796
13797 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13798
13799         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13800         checks.
13801         (gtk_target_list_unref): Likewise.
13802
13803         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13804
13805 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13806
13807         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13808         guard against division by zero. (Fixes bug #1339)
13809
13810 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13811
13812         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13813         Prevent the trivial leak of information of allowing
13814         word motion when the entry is not visible.
13815
13816 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13819         modality to error dialog as well as confirmation dialogs.
13820         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13821
13822 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13823
13824         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13825         tree->view_lines.
13826         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13827
13828         * gtk/Makefile.am (install-data-local): Solaris apparently
13829         has various troubles with ln -f; use rm first instead.
13830         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13831
13832 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13833
13834         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13835         use `cp' followed by `rm' (the `rm' was already there).
13836
13837 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13838         
13839         * configure.in: Fix autoconf warnings about cross compilation by
13840         trying to provide sane defaults for AC_TRY_RUN.
13841         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13842         put them into $(srcdir) when generated. Also add a dependency of
13843         gtksignal.h on gtkmarshal.h for -j builds. 
13844         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13845
13846 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13847
13848         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13849         GDK_THREADS_{LEAVE,ENTER} pair.
13850         (From Paul Fisher <pnfisher@redhat.com>)
13851
13852 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13853
13854         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13855         width and height are always >0 (owen).
13856
13857 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13858
13859         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13860         change that assured that a widget's allocated with and height are
13861         always >1, since this breaks *buggy* panel code. unfortunately this
13862         back-breaks the gimp's color selector.
13863
13864         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13865         allocation is always >0 in width and height, before sending the
13866         configure event; this is a *gross* hack to get the gimp back to work.
13867         
13868         * marked both cases with TODO-1.3
13869
13870 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13871
13872         * gtk/gtktext.c: Don't display wrap indicators when
13873         text is not editable and word wrap is on.
13874
13875 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13876
13877         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13878         option menus here as they are not derived from menu shell, assure that
13879         the option menu has a menu we can add items to.
13880
13881 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13882
13883         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13884         width/height to (gint) before calculations and check against < 0 to
13885         avoid guint wraparounds.
13886
13887 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13888
13889         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13890         width and height is never zero. sanity check both dimensions against
13891         32767 and issue a warning if the allocation is greater than that.
13892
13893 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13894
13895         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13896         to g_main_pending() as well.
13897
13898 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13899
13900         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13901         call to g_main_iteration() - since that will regrab
13902         GTK+ lock to process events.
13903
13904 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13905
13906         * gtk/gtkwindow.c
13907         - Regularize with the rest of GTK+ by making widget->requisition
13908           not reflect the set_usize()
13909         - Always recompute geometry hints, then check if they
13910           changed before sending them to the X server. The
13911           previous checks for changes would fail in a number
13912           of circumstances. 
13913
13914 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13915
13916         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13917
13918 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gtk/gtkdnd.c:
13921         - Code cleanups
13922         - Instantaneously update on modifier key presses
13923         - Allow cancellation of the drag with Escape.
13924
13925 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13926
13927         * gtk/testgtk.c (create_handle_box): Set the policy
13928         to auto_shrink - otherwise the appearance is rather
13929         strange when flipping between horizontal and vertical.
13930
13931 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13932
13933         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13934         (gtk_window_set_default_size): don't change a value if it's < 0.
13935         queue a resize.
13936
13937 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13938
13939         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13940
13941 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13942
13943         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13944         add an extra "/" when concating "/" + filename.
13945         (From Matt Grossman <mattg@oz.net>)
13946
13947 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13948
13949         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13950         for fg_gc if we set it for drawing pixmap.
13951
13952 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13953
13954         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13955         
13956         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13957         already set, call old engine's destroy function and
13958         unref the old engine.
13959
13960 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13961
13962         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13963
13964 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13965
13966         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13967
13968 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13969
13970         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13971         expand behaviour changed.
13972
13973         * gtk/gtklabel.c (gtk_label_set_pattern):
13974         (gtk_label_set_justify):
13975         (gtk_label_set_line_wrap):
13976         don't bother invoking queue_clear, the reallocation does
13977         that for us, always free_words so the upcoming resize will
13978         relayout the label's contents.
13979
13980 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13981
13982         * applied argument implementation patches from Elena Devdariani
13983         <elena@cogent.ca>.
13984
13985         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13986         ::space_style, ::relief
13987         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13988         * gtk/gtkpreview.c: ::expand
13989         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13990         * gtk/gtknotebook.c: ::homogeneous
13991         * gtk/gtklabel.c: ::wrap
13992         * gtk/gtklist.c: ::selection_mode
13993         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13994         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13995         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13996         * gtk/gtkclist.c: ::sort_type
13997         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13998         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13999
14000 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14001
14002         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14003         comment.
14004
14005 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14006
14007         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14008         counting right when we have to attach a new style
14009         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14010
14011         * gtk/gtkstyle.c: Documented the refcounting
14012         peculularities of gtk_style_attach.
14013
14014 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14015
14016         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14017         window types.
14018
14019         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14020         of GTK_TOPLEVEL for creating the window.
14021
14022 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14023
14024         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14025         the last argument (reported by Per Winkvist).
14026         
14027 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14028
14029         Fixes for invisible XOR lines (Frank Loemker
14030         <floemker@TechFak.Uni-Bielefeld.DE>)
14031         
14032         * gtk/gtkclist.c (gtk_clist_realize): Always use
14033         a non-zero pixel for GDK_XOR.
14034
14035         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14036         Use GDK_INVERT instead of GDK_XOR.
14037
14038 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14039
14040         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14041         signals if h/voffsets differ from adjustment values.
14042         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14043
14044 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14045
14046         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14047         ::selection-done emissions up to the topmost menu shell.
14048
14049 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14050
14051         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14052         the user data on the window before destroying it.
14053
14054         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14055         unrealize handler to take care of destroying 
14056         notebook->panel properly. 
14057         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14058
14059         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14060         of g_new and g_realloc to stop memory leak. (Actually,
14061         we could just use g_realloc(), but I'm not 100% sure
14062         that is portable).
14063         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14064
14065 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14066
14067         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14068
14069         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14070         for fontsets.
14071
14072         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14073         with bin/button confusion.
14074
14075 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14076
14077         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14078         and show how preselection of radio items is done.
14079
14080 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14081
14082         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14083         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14084         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14085         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14086         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14087         * gtk/gtktable.c (gtk_table_attach): 
14088         * gtk/gtklist.c (gtk_list_insert_items): 
14089         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14090         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14091         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14092         * gtk/gtkbin.c (gtk_bin_add): 
14093         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14094         * gtk/gtkfixed.c (gtk_fixed_put): 
14095         * gtk/gtklayout.c (gtk_layout_put):
14096         general fixups to container_add logic. always realize child if
14097         child->parent is realized, only map the child and queue a resize
14098         if child and child->parent are both visible.
14099
14100 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14101
14102         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14103         instead of gtk_container_foreach to walk and unrealize children, so
14104         composite children get also unrealized.
14105         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14106         (gtk_widget_map): assert that the widget is visible (basic constrain).
14107         (gtk_widget_real_map): assert that the widget is realized (basic
14108         constrain).
14109
14110 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14111
14112         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14113
14114 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14115
14116         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14117         file for iso-8859-2 locales.
14118
14119         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14120
14121 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14122
14123         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14124          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14125          Remove some suspicious and useless lines. 
14126
14127 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14128
14129         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14130         width,height = 0, 0 to mean - here to edge of window,
14131         instead of -1, -1, since the former is all we support.
14132
14133 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14134
14135         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14136         when removing from quit_functions list.
14137
14138 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14139
14140         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14141
14142 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14143
14144         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14145          When redrawing characters on non-visible entry, use appropriate
14146          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14147
14148 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14149
14150         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14151         from drag coordinates.
14152         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14153         use drag_dest_cell.
14154
14155         * gtk/gtktree (drag_dest_cell)
14156         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14157         (Bug #1129)
14158
14159 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14160
14161         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14162         translate_* fields.
14163         (gtk_item_factory_finalize): invoke translate_notify independant from
14164         translate_data.
14165         (gtk_item_factory_set_translate_func): likewise.
14166         (gtk_item_factory_destroy): only remove ifactory pointer from those
14167         widgets that belong to us (stupid me).
14168
14169 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14170
14171         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14172         rc_style list when lookup succeeeds.
14173
14174 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14175
14176         * gtk/gtkctree.c (resync_selection): 
14177         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14178         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14179         bug.
14180
14181 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14182
14183         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14184         Add some missing GDK_THREADS_ENTER()/LEAVE around
14185         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14186
14187 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14188
14189         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14190         rather than emit_by_name.
14191
14192         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14193         on the widget across multiple signal emissions.
14194         (gtk_editable_delete_text): same here.
14195         (gtk_editable_class_init): set widget_class->activate_signal after
14196         editable_signals[ACTIVATE] has been created.
14197
14198 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14199
14200         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14201         position here prematurely -- we might not have the
14202         right ->min_position and ->max_position yet.
14203
14204 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14205
14206         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14207         Add error traps so if the other end of the connection
14208         dies, we survive.
14209
14210         * gtk/gtkselection.c (gtk_selection_notify): Clean
14211         up properly when selection property retrieval fails.
14212         
14213         * gtk/gtkselection.c (gtk_selection_request): Correctly
14214         reject SelectionRequest notifies where the handler
14215         returns no data.
14216
14217 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14218
14219         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14220         when we've previously highlighted.
14221
14222         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14223         emit two "drag_leave" signals for Motif drops.
14224
14225         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14226         back the correct status messages when dropping from
14227         Motif onto a proxy window that is rejecting the
14228         drop.
14229
14230 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14231
14232         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14233         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14234         to compare two argument values. added gtk_arg_to_valueloc() to set a
14235         variable from an arg through its location (pointer).
14236
14237         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14238         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14239         as gfloat*, uchars are collected as guchar*, ints are collected as
14240         gint*, etc...
14241
14242 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14243
14244         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14245         Include <string.h> instead of <strings.h>.
14246
14247         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14248         (actually, a lot more duplicate includes occur if
14249          you trace through the sequence of #include's)
14250         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14251         
14252 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14253
14254         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14255         gtk-a-higuti-990322-[0-3]
14256
14257         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14258         that was causing -DX_LOCALE not to work.
14259
14260         * gtk/gtkrc.c (gtk_rc_init):
14261         X_LOCALE will never have LC_MESSAGES defined
14262
14263 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14264
14265         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14266         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14267
14268         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14269         left/right as well (gtk-michael-980726-0.patch.gz).
14270
14271         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14272         for pointer values, use gchar instead of char. fixed uline allocation
14273         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14274         chunks instead of G_ALLOC_ONLY.
14275         (gtk_label_size_request): always alter requisition as passed and leave
14276         widget->requisition alone.
14277         (gtk_label_set_text): allow NULL strings.
14278         (gtk_label_new): likewise.
14279
14280 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14281
14282         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14283
14284 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14285
14286         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14287         *and* mapped (i.e. drawable).
14288         (gtk_bin_expose): only send exposes to drawable children.
14289
14290         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14291         (gtk_box_expose): only send exposes to drawable children.
14292
14293         * gtk/gtkhscale.c (gtk_hscale_draw): 
14294         * gtk/gtkvscale.c (gtk_vscale_draw):
14295         hm, this is an ugly one. we first compute the size of our trough area
14296         here (window relative) and then check intersection with the draw_area
14297         which is parent relative because we're a NO_WINDOW widget, so we need
14298         to offset the trough area by allocation.x and allocation.y before the
14299         check. (this must not be done for the background area though, since
14300         that's already computed parent relative).
14301
14302 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14303
14304         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14305         unrealize title buttons.
14306
14307 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14308
14309         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14310         (gtk_clist_column_title_active): 
14311         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14312
14313         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14314         zero initialize event, removed superfluous gdk_window_get_pointer call
14315
14316         * gtk/gtklist.c (gtk_list_vertical_timeout)
14317         (gtk_list_horizontal_timeout): removed superfluous
14318         gdk_window_get_pointer call
14319
14320 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14321
14322         * plugging problems reported by "Bruce Mitchener, Jr."
14323         <bruce@puremagic.com> due to a purify session.
14324
14325         * gtk/gtkstyle.c:
14326         (gtk_style_ref): 
14327         (gtk_style_unref): assert ref_count to be > 0.
14328
14329         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14330         the requisition.
14331         (gtk_clist_set_shift): likewise.
14332
14333         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14334         adjustments.
14335
14336         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14337         event before sending it and set send_event to TRUE (which needs to
14338         be done for *all* synthesized events).
14339         (gtk_list_vertical_timeout): likewise.
14340
14341         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14342         leaks.
14343
14344         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14345         to TRUE when synthesizing events.
14346
14347 [ *** end of merges from 1.2 *** ]      
14348         
14349 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14350
14351         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14352         (or copied from gdkconfig.h.win32 on Win32, sigh).
14353
14354         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14355
14356         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14357
14358         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14359
14360         * gdk/gdkconfig.h.win32: New file.
14361
14362         * gdk/win32/makefile.cygwin: Build just a static archive here.
14363
14364         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14365         for the DLL from the static archive built above.
14366
14367         * gdk/gdk.def: Moved here from the win32 subdirectory.
14368
14369         * gdk/win32/*: Adapt for the changed private struct organisation.
14370
14371         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14372
14373 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14374
14375         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14376         for wheel mice (buttons 4 and 5).
14377
14378 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14379
14380         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14381         drawables use just the pixel field in the foreground and
14382         background GdkColor of the GdkGC.
14383
14384         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14385         GdkColors containing uninitialized (red,green,blue) fields, and
14386         just the pixel field filled in, and furthermore in the
14387         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14388         It thus turns out that we really don't need to have the full
14389         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14390         it later to have just the pixel values.
14391
14392 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14393
14394         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14395
14396 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14397
14398         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14399         New question on GtkLabel background colors.
14400
14401         * docs/gtk_tut.sgml:
14402           - Correct the example code callback
14403             function definitions.
14404           - Update the gtkdial example code, from Frans van Schaik.
14405           - Update setselection.c to current API.
14406
14407         * examples/Makefile examples/*/*.c: Update to code
14408         listed in tutorial.
14409
14410 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14411
14412         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14413         subrange table (from the "Developing International Software for
14414         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14415         block... Get the loaded font's charset correctly.
14416
14417         (Note that this, and the other *-win32.c files, still really are
14418         the old ones, the win32 subdirectory is not ready for compilation
14419         yet after the reorg.)
14420
14421 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14422
14423         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14424         check.
14425
14426 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14427
14428         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14429         on results of XQueryDeviceState().
14430
14431 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14432
14433         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14434         we need to accesss only ->children. We need an accessor
14435         for the children.
14436
14437         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14438         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14439         to get rid of gdkx.h include.
14440         
14441         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14442         and random references to 'None'.
14443
14444         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14445         Get rid of unused #include <gdk/gdkx.h>
14446
14447         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14448         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14449         gdkconfig.h.
14450
14451 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14452
14453         * gdk/win32/gdkdraw.c
14454         * gdk/win32/gdkfont.c
14455         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14456         following yesterday's changes. (Unrelated to Owen's reorg.)
14457
14458 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14459
14460         * gdk/x11/gdkinput-gxi.c: Add missing include,
14461           fix GdkWindowPrivate => GdkDrawablePrivate.
14462
14463         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14464
14465         * gdk/x11/Makefile.am (xinput_sources): Add missing
14466         backslash to fix building with --with-xinput=none
14467
14468 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14469
14470         Move all X specific code into the x11/ directory.
14471         Aside from shuffling things around, did the following:
14472
14473        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14474          gdk_arg_context_* - a simple argument parsing system
14475          in the style of popt.
14476
14477        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14478          gdk/x11/gdkprivate-x11.h:
14479          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14480          add ->klass and ->klass_data fields. The klass_data
14481          field points to an auxilliary structure that is
14482          windowing system dependent.
14483
14484        * gdk/gdkfont.c: Make most of the measurement functions
14485          simply wrappers around gdk_text_extents().
14486
14487        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14488          _gdk_font_strlen() function that hides the weird
14489          behavior in gtk+-1.[02] where a string is interpreted
14490          differently for 8-bit and 16-bit fonts.
14491
14492        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14493          to store common code for synthesizing double/triple
14494          press events.
14495         
14496        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14497          Make all the function that modify an existing GC
14498          simply wrappers around gdk_gc_set_values().
14499          
14500        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14501          for throwing out later.
14502
14503        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14504          GdkImagePrivate and GdkColormapPrivate to have a
14505          windowing system dependent part (GdkFontPrivateX etc.)
14506          that "derives" from the system-independent part.
14507
14508        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14509          Got rid of the included-source-files for XInput in
14510          favor of automake conditionals. (Which didn't exist
14511          when XInput support was originally added.)
14512
14513        * gdk/gdkrgb.c: Remove the visual id from the debugging
14514          statements since that is X11 specific; print out
14515          type/depth info instead.
14516          
14517
14518 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14519
14520         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14521         loading duplicates of hashed fonts.
14522
14523         * gdk/gdk.c (gdk_keysym_convert_case): rename
14524         gdk_XConvertCase to gdk_keysym_convert_case, allow
14525         results to be NULL in the GTK+ style.
14526
14527         * gdk/gdkcompat.h: Started compatibility header
14528         for renames.
14529
14530 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14531
14532         * gdk/win32/gdkprivate.h: New font private structures, related to
14533         fontsets.
14534
14535         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14536         gdk_font_list_free(). On X11, will just be wrappers to
14537         XListFonts() and XFreeFontNames(). On Win32, the code previously
14538         in gtkfontsel.c is now here.
14539
14540         New function gdk_font_xlfd_create(). On X11 will get the FONT
14541         property of the font (for GDK_FONT_FONTs), or call
14542         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14543         builds a XLFD style name from the font information in the LOGFONT
14544         struct(s).
14545
14546         New function gdk_font_xlfd_free(), which correspondingly frees the
14547         string returned by gdk_font_xlfd_create().
14548
14549         Implement fontsets on Win32. Add a function that iterates over a
14550         wide char string and calls a callback function for each substring
14551         of wide chars from the same Unicode subrange (and thus probably
14552         available in the same real font).
14553
14554         Improve the XLFD emulation a bit.
14555
14556         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14557
14558         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14559         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14560         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14561         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14562         ImmGetCompositionStringW() to get the composed Unicode chars.
14563
14564         * gdk/win32/gdkgc.c
14565         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14566         struct changes.
14567
14568         * gdk/win32/gdk.def: Add the new functions.
14569
14570 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14571
14572         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14573         get the Platform SDK to get <dimm.h>.
14574
14575         * gdk/win32/gdkevents.c: More event handling fixes and
14576         simplification. Never generate motion events with is_hint true. We
14577         used to do that on bogus grounds earlier. Windows sends
14578         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14579         moved, ignore these.
14580
14581         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14582
14583         * gdk/win32/gdkglobals.c
14584         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14585         the TrackMouseEvent function, and use it.
14586
14587         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14588         char before calling WideCharToMultiByte in order to get a string
14589         for the window title.
14590
14591         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14592
14593         * gdk/win32/gdk.def: Remove obsolete functions.
14594
14595         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14596         /nodefaultlib and /defaultlib switches.
14597
14598         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14599
14600 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14601
14602         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14603         EuroSign).
14604
14605         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14606         same type as GdkWChar, especially on Win32.
14607
14608         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14609
14610         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14611         before passing to Windows GDI for drawing etc. Convert to the
14612         system default codepage before passing to Windows as window
14613         titles.
14614
14615         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14616         support changing input locale on the fly.
14617
14618         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14619         on-the-fly changes. Convert incoming characters from the current
14620         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14621         on the current input language. Use keysym<->Unicode mapping tables
14622         and functions borrowed from xterm sources.
14623
14624         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14625         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14626         Manager) if available. IMEs and the Active IMM are available under
14627         the disguise of Chinese, Korean and Japanese support for IE and
14628         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14629         support is present in all editions (as long as you install it).
14630
14631         Call DispatchMessage from gdk_events_queue() (and thus
14632         gdk_WindowProc()), instead of duplicating the code in
14633         gdk_WindowProc().
14634
14635         Reworked the grab handling and propagation code, factored out
14636         duplicated code snippets into separate functions. Other cleanups,
14637         too.
14638
14639         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14640         the <dimm.h> header describing the Active IMM.
14641
14642         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14643         just do the same as for "single" fonts.
14644
14645         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14646         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14647         the new keysyms from gdkkeysyms.h.
14648
14649         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14650         fontset, so that gtkentry uses wide characters.
14651
14652         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14653         GTk+'s system directory "gtk+", not "gtk".
14654
14655 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14656
14657         * docs/gtkfaq.sgml: FAQ update
14658
14659 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14660
14661         * gdk/win32/gdkprivate.h: Add more font private data.
14662
14663         * gdk/win32/gdkfont.c
14664         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14665         fonts and strings. Now works much better. You still have to
14666         have a correct font selected, though. No fontset emulation yet.
14667
14668 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14669
14670         * gtk/maketypes.awk: Use G_OS_WIN32.
14671
14672         * gtk/gtk.def: Add some missing entry points. Also some non-public
14673         ones, but PyGTK porter claims to need them.
14674
14675         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14676         built-in type generation.
14677
14678 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14679
14680         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14681         GDK_FONT_FONT fonts (which is all we have for now, we don't
14682         emulate fontsets). The X11 version uses plain XDrawString in that
14683         case, too. The string passed to gdk_draw_text_wc seems to be in
14684         fact (at least, when used by gtkentry and gtktext) either in a
14685         single-byte charset, or a DBCS. Not Unicode.
14686
14687         This fixes the problem in gtkfontsel, where even if you had
14688         selected a font with a non-Latin1 charset (windows-greek, for
14689         instance), the preview still used Latin-1 glyphs.
14690
14691         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14692         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14693         (gdk_font_load): Recognize the demibold etc weights, even if we
14694         don't have the corresponding constants in the headers.
14695         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14696         version. Should save font resources a bit, when we don't have
14697         multiple HFONTs for the same font.
14698
14699         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14700         version.
14701
14702 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14703
14704         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14705         X values
14706
14707 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14708
14709         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14710         layout support (as mentioned on
14711         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14712
14713 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14714
14715         * gtk/fnmatch.c
14716         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14717
14718 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14719
14720         * configure.in (ALL_LINGUAS): Added Galician (gl)
14721
14722 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14723
14724         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14725
14726         * gdk/win32/gdkcompat.c: New file, actually provide an
14727         implementation for the deprecated functions. (Just temporarily.)
14728
14729         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14730
14731         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14732
14733         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14734
14735 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14736
14737         * configure.in: Added "uk" to ALL_LINGUAS.
14738         
14739 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14740
14741         * configure.in: correct checking for BeOS check
14742
14743         * gdk/gdktypes.h
14744         * gtk/fnmatch.c
14745         * gtk/gtkfilesel.c
14746         * gtk/gtkitemfactory.c
14747         * gtk/gtkmain.[ch]
14748         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14749
14750 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14751
14752         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14753         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14754         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14755         by Bulgarian). 
14756
14757 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14758
14759         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14760         Fix a reference to window_private->destroyed.   
14761
14762         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14763         (ugly) setting of an internal GdkWindow member to use
14764         a _slightly_ cleaner macro.
14765
14766         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14767         GdkDrawablePrivate and GdkWindowPrivate.
14768         Add extra macros for accessing GDK_DRAWABLE_ components.
14769
14770         * *.[ch]: Massive adjustments for the above, use the
14771         new macros in a lot of places.
14772
14773 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14774
14775         * gdk/gdktypes.h: Make GdkDrawable the base type,
14776         not GdkWindow.
14777
14778 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14779
14780         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14781
14782 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14783
14784         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14785
14786 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14787
14788         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14789         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14790
14791         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14792
14793         * docs/gtk-config.1: Now autogenerated.
14794         * docs/Changes-1.4.txt: started
14795         
14796 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14797
14798         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14799         to #ifdef also here.
14800
14801         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14802         Owen did to the X11 backend.
14803
14804         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14805         ScrollWindowEx when blitting inside a window, it can't be correct
14806         in the general case.
14807
14808         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14809         WM_GETMINMAXINFO is easier.
14810
14811         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14812         depth equal to the bitspixel value, not the visual's depth.
14813
14814         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14815         to 24 even if the bitspixel value is 32.
14816
14817         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14818         need to check for depth==32 when bpp==32, depth will always be 24.
14819
14820 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14821
14822         * docs/Changes-1.4.txt: Started
14823         
14824         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14825
14826         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14827         
14828         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14829         into C file.
14830         
14831         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14832         header to gdkinputprivate.h.
14833
14834         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14835         unused since before 1.2.
14836
14837 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14838
14839         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14840         expand possible hex escapes in the font family (put there by
14841         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14842         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14843         On Win32, add hex escapes here, too.
14844
14845 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14846
14847         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14848         to #ifdef GDK_WINDOWING_X11.
14849
14850 [ Merges from gtk-1-2 ]
14851
14852 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14853
14854         * configure.in: fixed "GNU Make" check to pass with new make version
14855         3.77.95.
14856
14857 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14858
14859         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14860         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14861         AM_PATH_GTK() macros don't get confused by the -pre1.
14862
14863 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14864
14865         * configure.in (REBUILD): Change check for perl5
14866           to check explicitely for v >= 5.002. (5.001
14867           does not work with our scripts.)
14868
14869 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14870
14871         * configure.in: evaluate $PERL for the perl version check. added
14872         --disable-rebuilds to give the user an option to completely disable
14873         any source autogeneration rules.
14874
14875 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14876
14877         * configure.in: evaluate $ac_make when checking for GNU Make.
14878
14879 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14880
14881         * docs/Makefile.am: added generation.txt.
14882
14883         * Makefile.am: require automake 1.4, build README from README.in and
14884         INSTALL from INSTALL.in in dist-hook.
14885         
14886         * README.in:
14887         * INSTALL.in: new files to autogenerate README and INSTALL from.
14888
14889         * configure.in: figure whether we have GNU Make
14890
14891         * docs/generation.txt: minor additions/corrections.
14892
14893 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14894
14895         * docs/gtkfaq.sgml: FAQ Update
14896
14897 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14898         
14899         * configure.in: Fix autoconf warnings about cross compilation by
14900         trying to provide sane defaults for AC_TRY_RUN.
14901
14902 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14903
14904         * ltconfig
14905         * ltmain.sh: upgrade to libtool 1.3.3
14906
14907 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14908
14909         * INSTALL: Indicate that the --with-glib= configure
14910         time flag is unsupported.
14911
14912 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14913
14914         * docs/generation.txt: Added a file that gives
14915         documenation about the autogeneration process for
14916         various autogenerated files.
14917         
14918 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14919
14920         * configure.in (LIBS): Look for libgmodule in the
14921         right location.
14922
14923 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14924
14925         * docs/gtk_tut.sgml: Removed references to
14926         code examples in my directory on gtk.org as
14927         they should all be in the tutorial now.
14928
14929         * docs/gtk_tut.sgml: Added sources for dial-test
14930         and scribble-xinput programs that were previously
14931         missing.
14932
14933 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14934
14935         * TODO: Added entry about menu keyboard navigation, removed
14936         some finished items.
14937
14938 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14939
14940         * acinclude.m4: Standardize on func_dgettext
14941         not func_gettext, so that the checks for dgettext
14942         actually are paid attention to.
14943
14944 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14945
14946         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14947         directly, rather than repeating the checks for
14948         gettext.
14949
14950         * INSTALL: Added information about gettext and
14951         NLS support.
14952
14953         * acinclude.m4 (LIBM): Check for dgettext, not
14954         just gettext. This should hopefully fix things wrt
14955         systems with old versions of GNU gettext installed.
14956
14957 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14958
14959         * configure.in (LIBS): Look for libgmodule in the
14960         right location.
14961
14962 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14963
14964         * autogen.sh: add --enable-maintainer-mode
14965
14966         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14967
14968 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14969
14970         * docs/gtk-config.1.in:
14971           docs/Makefile.am:
14972           configure.in: gtk-config is now generated.
14973
14974         * docs/gtk-config.1: Removed, now generated.
14975
14976 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14977
14978         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14979         handle CreateNotify itself, still put out a debuging message for
14980         --gdk-debug=events. made the ReparentNotify debugging message more
14981         verbose.
14982         wrap xcoords translation for ConfigureEvents into an error trap,
14983         a destroy event may already be pending, and in that case, the
14984         actuall coordinate values are not at all critical.
14985
14986 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14987
14988         * gdk/gdkcc.c: Stop leaking the color_hash all over
14989         the place. Simplify and improve the logic.
14990
14991 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14992
14993         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14994         for prototypes and function implementations consistent (reported
14995         by Tomas Ogren).
14996
14997 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14998
14999         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15000         send_event set in debugging output.
15001         (gdk_compress_exposures): default initialize the event so we don't
15002         operate on bogus values (namely send_event).
15003
15004 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15005
15006         * gdk/gdkwindow.c: When we receive an unexpected
15007         destroy notify on one of our windows, don't just
15008         warn about it, also mark our windows as destroyed.
15009
15010 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15011
15012         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15013           name => font and name => fontset hashes. The 
15014           name => fontset hash is a _big_ win since we
15015           weren't previously caching fontsets at all and loading
15016           fontsets is expensive. The name => font hash
15017           is less of a win, but it does save us from doing
15018           repeated XQueryFont calls on the same font.
15019
15020         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15021           list so we can remove font/fontset from hash.
15022
15023 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15024
15025         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15026           and slightly confusing test. [ XInternAtom (,,TRUE)
15027           will never return None ].
15028
15029 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15030
15031         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15032           gdk/gdkwindow.c (gdk_window_set_hints):
15033
15034         Don't omit setting the properties if flags == 0 -
15035         there may be an existing set of properties there
15036         already. (Very old bug. Would it be better to
15037         delete the property instead?)
15038
15039         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15040           spelling error in comment.
15041
15042 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15043
15044         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15045           to avoid stomping over gdk_error_warnings.
15046
15047         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15048           as (bits_per_pixel + 7) / 8. This gives the same
15049           result as before for multiples of 8, but actually
15050           a "reasonable" value for 1bit or 4bit displays.
15051
15052 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15053
15054         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15055         GNU Make.
15056
15057 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15058
15059         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15060         discarding configure events.
15061
15062 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15063
15064         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15065         refcount is greater than zero.
15066
15067         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15068
15069         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15070
15071         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15072
15073         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15074
15075 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15076
15077         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15078         that format 32 => sizeof(item) == 4. It really is
15079         sizeof(long).
15080
15081 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15082
15083         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15084         core dump at all on X IO errors, only core dump
15085         if --enable-debug for X errors.
15086
15087 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15088
15089         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15090         unknown window:" message. disabled ConfigureNotify discarding code,
15091         because it led to events being processed out of order.
15092
15093 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15094
15095         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15096
15097         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15098         we export this function, supress error warnings and don't reset the
15099         error code in the first half of this function.
15100
15101         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15102         code (instead of just -1) so gdk_error_trap_pop() reveals something
15103         actually informative about the error that happened.
15104
15105         * gdk/*.c:
15106         don't rely on gdk_error_code being -1 if an error occoured, but just
15107         gdk_error_code != 0.
15108
15109 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15110
15111         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15112         pointer *before* invoking the filter function, so we at least don't
15113         crash if a filter is removed that is currently executed. window filters
15114         *really* need to be made truely reentrant at some point.
15115
15116 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15117
15118         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15119         PropertyNotify debug messages.
15120
15121 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15122         
15123         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15124         
15125         * gdk/gdkim.c: Fix cut-and-paste errors for 
15126         x/y and PreeditAttributes/StatusAttributes.
15127
15128 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15129
15130         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15131         G_MAXINT to 2^16 to alleviate overflow problems in
15132         various window managers.
15133
15134 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15135
15136         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15137         for fontsets.
15138
15139 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15140
15141         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15142         Initialize size_hints.x and size_hints.y because kwm
15143         brokenly pays attention to them.
15144         (Bug #1181 -  Lars Heete <hel@admin.de>)
15145
15146 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15147
15148         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15149         return value of gdk_list_visuals(). 
15150         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15151
15152 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15153
15154         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15155         XSetIMValues to (void *) when comparing to NULL, to workaround
15156         the problem of some compilers barfing since older X headers don't
15157         have the prototype for it.
15158
15159 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15160
15161         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15162         for pseudocolor where colormap->colors was double
15163         allocated.
15164
15165         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15166         color value in the hash table with the pixel filled
15167         in so when we do later hash table lookups, the color
15168         value is correct.
15169         
15170 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15171
15172         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15173         making the call
15174
15175 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15176
15177         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15178         pointed out by Morten Welinder <terra@diku.dk>.
15179
15180 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15181
15182         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15183           default filter from the list
15184
15185 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15186
15187         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15188           default filter from the list
15189
15190 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15191
15192         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15193
15194         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15195         g_strdup_printf instead of calcing the length separately
15196
15197 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15198
15199         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15200         that we don't do in many other places. (Fixing duplicate 
15201         #include of config.h)
15202
15203         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15204         Otherwise, #ifndef XINPUT_NONE check in the latter
15205         doesn't work. (Bug #546)
15206
15207 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15208
15209         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15210         "None" case insensitive.
15211
15212 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15213
15214         * gdk/gdkselection.c: 
15215         Add error traps so if the other end of the connection
15216         dies, we survive.
15217
15218 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15219
15220         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15221         dest_xid field into two fields - one for the window
15222         to send in messages, one to indicate the last looked
15223         up window for caching purposes. This is needed, so
15224         that Leave messages get the correct window.
15225
15226 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15227
15228         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15229         Fix warning created by people mucking around
15230         with the gsource API.
15231
15232         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15233         Change mapping between GIOCondition and GdkInputCondition
15234         to match the way the Linux kernel does it. This should
15235         fix problems where closed pipes were no longer signalling
15236         GDK_INPUT_READ on systems with a native poll().
15237
15238 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15239
15240         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15241         explicitly for the string "None" - it is in the XPM
15242         spec and some servers treat unknown colors in odd ways
15243         (like asking the user!)
15244
15245 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15246
15247         * gdk/gdkevents.c: made "->" into a "." of previous change so
15248         it compiles
15249
15250 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15251
15252         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15253         window field of the event structure before calling
15254         user filters.
15255
15256 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15257
15258         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15259         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15260
15261 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15262
15263         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15264         intermediate text property - prevents major memory
15265         leak when gdk_use_mb.
15266         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15267
15268 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15269
15270         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15271         gtk-a-higuti-990322-[0-3]
15272
15273         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15274         sizeof(wchar_t) != sizeof (GdkWChar)
15275
15276         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15277         that was causing -DX_LOCALE not to work.
15278
15279         * gtk/gtkrc.c (gtk_rc_init):
15280         X_LOCALE will never have LC_MESSAGES defined
15281
15282         * gdk/gdk.c (gdk_init_check):
15283         Remove --xim-preedit and --xim-status from argv properly.
15284
15285         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15286         that the client window is present on the X server
15287         before we pass it to the input method.
15288
15289 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15290
15291         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15292         if --display is specified on the command line, than
15293         the drag window will not be created on that display.
15294         
15295 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15296
15297         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15298         lookups with only_if_exists == TRUE were inserting
15299         bogus values into the atom cache.
15300
15301 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15302
15303         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15304         then reset it to NULL.
15305
15306         * gdk/gdkcolor.c:
15307         (gdk_colors_free): 
15308         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15309         key for g_hash_table_remove() in both functions, this prevents us
15310         from accessing possibly uninitialized portions of a GdkColor structure
15311         where we are only interested in its pixel value.
15312
15313 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15314
15315         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15316         font hash table, if we have a GdkFontPrivate entry for this font
15317         already, simply increment its reference count, provided by Olaf Dietsche
15318         <olaf.dietsche+list.gtk@netcologne.de>.
15319
15320 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15321
15322         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15323         just to be sure.
15324
15325         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15326         unused variables, leftovers from the X11 version.
15327
15328         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15329
15330         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15331         downcase fields on X11.
15332
15333 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15334         
15335         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15336         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15337
15338 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15339
15340         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15341
15342         * gtk/makefile.msc: Correct path to libintl.
15343
15344         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15345         use of gint vs. int, and gint vs. gboolean in headers and
15346         definitions. Use GtkType for the *_get_type functions. Note that
15347         these changes preserve binary compatibility.
15348
15349         * gdk/gdk.c
15350         * gdk/win32/gdk.c
15351         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15352
15353         * gtk/gtkmain.c
15354         * gtk/gtkclist.c
15355         * gtk/gtkmenufactory.c
15356         * gtk/gtknotebook.c
15357         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15358         vs. gboolean.
15359
15360         * gtk/gtkcolorsel.[ch]
15361         * gtk/gtkcombo.[ch]
15362         * gtk/gtkdrawingarea.[ch]
15363         * gtk/gtkgamma.[ch]
15364         * gtk/gtkhandlebox.[ch]
15365         * gtk/gtkhpaned.[ch]
15366         * gtk/gtkhruler.[ch]
15367         * gtk/gtkplug.[ch]
15368         * gtk/gtkpreview.[ch]
15369         * gtk/gtkruler.[ch]
15370         * gtk/gtksocket.[ch]
15371         * gtk/gtkstatusbar.[ch]
15372         * gtk/gtktoolbar.[ch]
15373         * gtk/gtkvbbox.[ch]
15374         * gtk/gtkvpaned.[ch]
15375         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15376         functions.
15377
15378         * gtk/gtkgamma.h: Fix bug, missing () in call of
15379         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15380
15381 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15382
15383         * gdk/gdkcolor.c (gdk_colormap_new)
15384         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15385         colormap->colors was allocated twice.
15386
15387         * gdk/win32/gdk.c: Remove some unused stuff.
15388
15389         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15390         colormap.
15391
15392         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15393         * gtk/gtklabel.h (gtk_label_get_type)
15394         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15395         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15396         in a couple of places, not guint.
15397
15398 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15399
15400         * configure.in,po/et.po: added Estonian language file
15401
15402 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15403
15404         * configure.in,po/da.po: added Danish file
15405
15406 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15407
15408         * docs/gtkfaq.sgml: Minor FAQ Update
15409
15410 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15411
15412         * docs/gtkfaq.sgml: FAQ update
15413
15414 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15415
15416         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15417         way to get window contents continually refreshed while resizing. I
15418         didn't like the effects myself, so it's not on by default.
15419
15420         * gdk/win32/gdkprivate.h: New flag variable
15421         gdk_event_func_from_window_proc, FALSE by default.
15422
15423         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15424         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15425         are passed --gdk-event-func-from-window-proc.
15426
15427         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15428         and we have am event_func, call it instead of enqueing the event.
15429
15430 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15431
15432         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15433         Kelley: Set expose_count in GdkEventExposes correctly.
15434
15435         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15436         MULTIPLE_WINDOW_CLASSES).
15437
15438         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15439         for bug in NT, apparently NT *does* draw the end pixel, too, in
15440         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15441
15442 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15443
15444         Improvements by Hans Breuer: 
15445
15446         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15447
15448         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15449         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15450         window contents while dragging" is turned on. Allocate at least
15451         one unique class for every GdkWindowType. If support for single
15452         window-specific icons is ever needed (eg. Dialog specific), every
15453         such window should get its own class.
15454
15455 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15456
15457         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15458         error that caused crashes.
15459
15460 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15461
15462         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15463         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15464         bugs when for instance part of the window was outside the
15465         display. Thanks to Philippe Colantoni for finding and fixing this.
15466
15467 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15468
15469         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15470         endpoint calculations which were totally wrong. (A little RTFMing
15471         helps a lot ;-)
15472
15473         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15474         from a separate directory, not from gettext, because of licensing
15475         issues (we want to use the LGPL version).
15476
15477         * README.win32: Mention the intl from glibc vs from gettext issue.
15478
15479 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15480
15481         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15482         in the key event handling: Now AltGr chars work again. Also,
15483         now Alt-digits are passed up as well as Control-digits.
15484         Pass keypad plus and minus as normal plus and minus.
15485
15486 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15487
15488         * docs/gtkfaq.sgml: FAQ Update
15489
15490 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15491
15492         * README.win32
15493         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15494         the Wintab SDK.
15495
15496         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15497         OK, but getting closer. Guard against bogus tilt data from Wacom
15498         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15499         enable easier building without Wintab.
15500
15501         * gdk/win32/gdkinput.h
15502         * gdk/win32/gdkevents.c 
15503         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15504         
15505         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15506         code. As we have just one visual on Win32, no sense to have it in a
15507         table, and no need for the hash table.
15508
15509         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15510         better on white background.
15511
15512 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15513
15514         * README.win32: Update gcc build instructions. Mention gettext is
15515         GPL.
15516
15517         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15518         supported cursor size with GetSystemMetrics.
15519
15520         * gdk/win32/gdkfont.c
15521         * gtk/gtkfontsel.c: Guard against some font weight and charset
15522         symbols being undefined (in mingw32 headers).
15523
15524         * gdk/win32/makefile.cygwin
15525         * gtk/makefile.cygwin
15526         * gtk/gtkthemes.c: No longer need to have differently named
15527         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15528
15529 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15530
15531         * docs/gtkfaq.sgml: Long awaited FAQ update.
15532
15533 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15534
15535         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15536         it. Obscure bit manipulation needed.
15537
15538         * gdk/win32/gdkevents.c: Logging.
15539         
15540         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15541         style (file name include compiler name) for theme engines.
15542
15543 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15544
15545         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15546
15547         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15548         events. The key.string wasn't zero-terminated, still we strdup'ed
15549         it in gdk_event_copy(). Synthesize crossing events for button
15550         events before possible propagation.
15551
15552         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15553
15554         * gdk/win32/makefile.cygwin
15555         * gtk/makefile.cygwin: Use new DLL naming style for the
15556         GCC-compiled ones.
15557
15558         * gdk/win32/makefile.msc
15559         * gtk/makefile.msc: Cosmetics mostly.
15560
15561         * gtk/gtk.def: Add missing entry points.
15562
15563         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15564
15565 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15566
15567         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15568         or height is zero. Don't print a warning if Pie or Arc fails, they
15569         always fail (?) for very narrow ellipses.
15570
15571         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15572         the part or the destination window corresponding to source area
15573         outside of the source drawable's boundary.
15574
15575         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15576         anything if less than two points.
15577
15578         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15579         return NULL. Gtk cut-and-paste inside a single program works
15580         better this way. (It always gets the clipboard contents from
15581         Windows, not from its own copy, which is cleared anyway. I can't
15582         say I fully understand what happens... Emulating the X selection
15583         and property stuff is a bit of a mess.)
15584
15585         * gdk/win32/gdkevents.c
15586         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15587
15588         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15589         that never got deleted). Revamp gdk_region_shrink.
15590
15591         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15592         after use.
15593
15594         * gtk/gtk.def: Add some missing entry points.
15595
15596         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15597         component.
15598
15599 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15600
15601         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15602         Control-digits specially.
15603
15604 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15605
15606         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15607
15608 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15609
15610         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15611         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15612         finding this.)
15613
15614 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15615
15616         * gtk+.spec.in: Corrected some typos in files section.
15617         
15618 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15619
15620         * README.win32: Mention using GNU gettext.
15621         * config.h.win32: Enable NLS stuff.
15622         * gtk/makefile.msc: Use GNU gettext.
15623         * gdk/win32/gdkdnd.c: Minor header reorg.
15624         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15625         cosmetics.
15626         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15627         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15628
15629 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15630
15631         * acinclude.m4
15632         * config.guess
15633         * config.status
15634         * ltconfig
15635         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15636
15637 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15638
15639         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15640         SafeAdjustWindowRectEx. Don't override all calls to
15641         AdjustWindowRectEx by it, but use it only in two places: When
15642         creating a new top-level window and when moving a top-level
15643         window.
15644
15645         Use screen coordinate rectangle, not client rectangle, in
15646         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15647         when we try to place a window so that the decoration (mainly,
15648         title bar) isn't visible.
15649
15650         These changes fix the bug that showed up for instance as the
15651         GIMP's saved top-level windows moving right and down (by an amount
15652         equal to the window decoration) for each session. This bug showed
15653         up also in testgtk's "Saved Position".
15654
15655         gdk_window_resize also redone a bit.
15656
15657 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15658
15659         * gtk/testgtkrc: Add (commented out) Windows-style theme
15660         include line.
15661
15662         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15663
15664 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15665
15666         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15667         gdkx.h to a gdk subdirectory, so that applications can include
15668         these with <gdk/*.h> without trouble.
15669
15670         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15671         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15672         have their bitmap destroyed.
15673
15674         * gdk/win32/gdk.def: Add gdk_root_parent.
15675
15676 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15677
15678         * configure.in
15679           gtk-config.in
15680           ltconfig
15681           ltmain.sh     
15682           gtk/Makefile.am: changes to compile nicely (with xlib) 
15683           on BeOS
15684
15685 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15686
15687         * acinclude.m4
15688         * config.guess
15689         * config.sub
15690         * ltconfig
15691         * ltmain.sh: upgrade to libtool 1.3
15692
15693 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15694
15695         * gtk/gtkclist.c:
15696         * gtk/gtkctree.c: merges from gtk-1-2
15697
15698 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15699
15700         Support added for building using a GNU toolchain on Win32,
15701         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15702
15703         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15704         * config.h.win32: Changes for gcc.
15705         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15706         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15707         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15708         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15709         Protect shl stuff unavaiilable with mingw32 headers.
15710         * gdk/win32/gdkevents.c: Fix typo.
15711         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15712         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15713         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15714         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15715         the mingw32 headers.
15716         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15717         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15718         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15719         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15720         Test for NATIVE_WIN32, not _MSC_VER.
15721         * gtk/gtkmain.c: No use warning about developer version on Win32,
15722         there aren't any non-developer versions anyhow.
15723         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15724         * gtk/makefile.msc: Use pthread from another directory. Minor other
15725         changes. 
15726
15727 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15728
15729         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15730           default filter from the list
15731
15732 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15733
15734         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15735          when gtk_widget_grab_default() is called for a widget that
15736          is not within a GtkWindow.
15737
15738 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15739
15740         * docs/gtk_tut.sgml, examples/clist.c: use a
15741           scrolled window in the clist example. Minor
15742           tutorial fixes.
15743
15744 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15745
15746         * docs/gtk_tut.sgml: Style check from David King
15747           <dking@youvegotmail.net>
15748
15749 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15750
15751         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15752         compile with unknown value of GDK_WINDOWING
15753
15754 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15755
15756         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15757         after the rule is fired.
15758         (install-exec-local): Install gdkconfig.h only if the contents are
15759         different from the currently installed gdkconfig.h.
15760
15761 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15762
15763         * gdk/Makefile.am (configexecincludedir): Rename from 
15764         configincludedir so that gdkconfig.h will be installed 
15765         as part of `make install-exec'. 
15766
15767 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15768
15769         * acinclude.m4
15770         * config.guess
15771         * config.sub
15772         * ltconfig
15773         * ltmain.sh: upgrade to libtool 1.2f
15774
15775         * autogen.sh: libtool is not required to autogen gtk+
15776
15777         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15778         needed)
15779
15780 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15781
15782         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15783         declaring gdk variables exported/imported from the DLL. New image
15784         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15785         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15786         GDK_DRAG_PROTO_OLE2.
15787
15788         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15789         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15790         declared only for the Win32 version, but could be in the X11
15791         version as well. (Needed for a Xlib-less gdk_imlib.)
15792         gdk_color_hash should have only one parameter. Declare
15793         gdk_threads_mutex with GDKVAR.
15794         
15795         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15796         just one parameter.
15797
15798         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15799         per pixel, not bits.
15800
15801         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15802         Fetch bpp (which means bits-per-pixel here) from another place on
15803         Win32. Accept also depth==32 (which we might get on Win32) with
15804         bpp==32.
15805
15806         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15807         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15808         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15809         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15810         in the backend-dependent directory, not in the common gdk
15811         directory.
15812
15813         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15814         headers.
15815
15816 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15817
15818         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15819         want to use the Gtk+ devel version (which is true, and yes - even i am
15820         currently working with the 1.2.x branch). so everyone reading this, you
15821         probably want to issue
15822         cvs checkout -r glib-1-2 glib
15823         and
15824         cvs checkout -r gtk-1-2 gtk+
15825         as your next two comands.
15826
15827 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15828
15829         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15830         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15831
15832         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15833         file. strongly deprecated the GTK_HAVE_* macros, we provide
15834         GTK_CHECK_VERSION() for people that need to check for certain
15835         Gtk+ versions.
15836
15837         * gtk/gtkcompat.h: removed this from CVS.
15838         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15839         idea right from the start, it just didn't seem like that back then.
15840
15841 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15842
15843         * merges from gtk-1-2:
15844
15845 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15846
15847         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15848         item factory class has been created.
15849         (gtk_item_factory_parse_rc): likewise.
15850
15851         * gtk/gtkmenu.c:
15852         keep proper references for old_active_menu_item.
15853         (gtk_menu_reparent): unset the usize of the new parent,
15854         so the menu can sanely be size requested and we don't get nasty screen
15855         artefacts upon next reparentation.
15856         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15857         enter notify. only synthesize enter notifies if the pointer really is
15858         inside the event window.
15859         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15860         (gtk_menu_popup): move the background setting stuff into
15861         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15862
15863         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15864         gtk_menu_shell_select_item() to select the new item.
15865         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15866         do the right thing for deselection as well.
15867
15868 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15869
15870         * gtk/gtkwidget.[hc]:
15871         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15872         are locked.
15873
15874         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15875         existing accelerators if the widget's accelerators are locked.
15876
15877 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15878
15879         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15880
15881         * gtk/gtkmenu.c: truely forward key press and key release events to
15882         the menu widget from the toplevel or tearoff window. we can't simply
15883         connect to that, we need to stop further processing of the events as
15884         well.
15885
15886 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15887
15888         * gtk/gtkmenu.c:
15889         (gtk_menu_key_press): pass event->keyval, event->state to
15890         gtk_accelerator_valid, instead of event->keyval twice.
15891         refuse to install single letter accelerators for menus that use
15892         single letter shortcuts.
15893
15894         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15895         gtk_menu_ensure_uline_accel_group().
15896
15897         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15898         which will always return an uline accel group, made
15899         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15900         yet created.
15901
15902 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15903
15904         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15905
15906         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15907         Leave button sensitive, trap  button_press, button_release,
15908         motion_notify, enter_notify and leave_notify events instead.
15909         (gtk_clist_column_title_active): disconnect event handler.
15910         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15911         Guillaume Laurent <glaurent@worldnet.fr>
15912
15913 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15914
15915         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15916         width/height mixups.
15917
15918         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15919         if needed.
15920
15921 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15922
15923         * gtk/testgtk.c (create_item_factory): unref the item factory after
15924         window's destruction.
15925
15926         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15927         count on the menu shell around the menu item's activation, since the
15928         signal emission may cause menu shell destruction.
15929
15930         * gtk/gtkitemfactory.c:
15931         the previous code leaked one accel group per menu. we use
15932         gtk_menu_get_uline_accel_group() now to fix that, and with that
15933         also create the underline accelerator group of the menus only if
15934         required (i.e. an underline accelerator has been specified).
15935         (gtk_item_factory_construct):
15936         (gtk_item_factory_create_item): removed code that would create an
15937         extra accel group for the menu (and leak references).
15938         (gtk_item_factory_create_item): adapted the underline accelerator
15939         installation code to properly feature gtk_menu_get_uline_accel_group().
15940
15941         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15942         menu->accel_group, this may return NULL if the accelerator group
15943         hasn't been set yet.
15944         added gtk_menu_get_uline_accel_group() to retrive the underline
15945         accelerator group of the menu, this will be created on demand
15946         and proper care is taken about its reference count.
15947
15948         * gtk/gtkitemfactory.h:
15949         * gtk/gtkitemfactory.c:
15950         dumped the approach of keeping a widgets by action list on the
15951         factory since the factory<->widget destroy negotiation didn't work
15952         and would be hard to get going at all. instead we keep a list of
15953         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15954         persistant throughout a program's life time).
15955         also, i removed the static const gchar *key_* variables, and made
15956         them inline strings (they weren't actually used anyways).
15957         (gtk_item_factory_add_item): update ifactory->items.
15958         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15959         the item factory pointer from the remaining ifactory widgets).
15960         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15961         list to find the widget.
15962         (gtk_item_factory_get_item): new function that works around
15963         gtk_item_factory_get_widget() limitations, this function will only
15964         return menu items, even for <Branch> entries.
15965
15966 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15967
15968         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15969         font hash table, if we have a GdkFontPrivate entry for this font
15970         already, simply increment its reference count, provided by Olaf Dietsche
15971         <olaf.dietsche+list.gtk@netcologne.de>.
15972
15973         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15974         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15975
15976 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15977
15978         * gtk/gtkcontainer.c:
15979         (gtk_container_add_with_args):
15980         (gtk_container_addv):
15981         (gtk_container_add): before adding a child to a conatiner, make sure
15982         it is (default) constructed, this is neccessary because under certain
15983         circumstances the child will get relized and mapped immediatedly, in
15984         which case it has to be constructed already.
15985
15986 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15987
15988         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15989         values > 1 as TRUE also.
15990
15991 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15992
15993         * README.win32: New file.
15994                 
15995         * configure.in: Check for lstat.
15996
15997         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15998         completeness.
15999
16000         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16001
16002         * gtk/gtk.def: Removed CRs.
16003
16004         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16005         ..\gdk\win32).
16006
16007         * gdk/win32/makefile.msc: Correct upwards relative paths.
16008         
16009 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16010
16011         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16012           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16013           it was connecting a void function to expose_event and the int
16014           returning function to the draw signal
16015
16016 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16017
16018         * configure.in:
16019         Use correct path to libgmodule.la when ref'ing uninstalled copy
16020         of glib.  (Already in stable branch, Bug #417)
16021
16022 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16023
16024         Win32 merge and general portability stuff:
16025                 
16026         * acconfig.h,configure.in: Check for <sys/time.h>.
16027
16028         * gdk/win32: New directory (actually, been there for a while).
16029         
16030         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16031         NATIVE_WIN32, and use these. Always case fold on Win32. No
16032         backslashed escapes on native Win32.
16033
16034         * gtk/{gtk.def,makefile.msc}: New files.
16035
16036         * gtk/Makefile.am: Add above new files.
16037         
16038         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16039         instead of <strings.h>.
16040
16041         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16042         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16043         <unistd.h> appropriately.
16044
16045         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16046         Use ABS() (from <glib.h>) instead of abs().
16047         
16048         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16049         of gtk (and thus glib) headers, so that WIN32 will be
16050         defined. With MS C, include <direct.h> for mkdir prototype.
16051
16052         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16053         some casts, needed by MS C.
16054
16055         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16056         implemented).
16057
16058         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16059         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16060         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16061
16062         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16063                 
16064         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16065         the event is not a hint, or its window is not the slider. Needed
16066         on Win32, at least.
16067
16068         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16069         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16070         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16071         a subdirectory of the Windows directory as gtk system
16072         configuration directory.
16073
16074         * gtk/gtkselection.c: No chunks on Win32.
16075
16076         * gtk/gtksocket.c: Not implemented on Win32.
16077
16078         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16079
16080         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16081
16082         * gtk/maketypes.awk: Declare variables with a macro that expands to
16083         necessary export/import magic in the case of Win32.
16084                 
16085         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16086
16087 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16088
16089         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16090         since those were meant only for gdki18n.h.  
16091         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16092         for widechar tests.
16093         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16094
16095 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16096
16097         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16098         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16099
16100         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16101         installed) to CFLAGS.
16102
16103         * gdk/Makefile.am: Add rules for gdkconfig.h.
16104
16105         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16106         APIs.
16107
16108         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16109         gdkx.h anyway when compiling for X11.
16110         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16111         general): Merge in Win32 version.
16112         
16113         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16114         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16115         expansion (if we don't have HAVE_PWD_H), allow for drive
16116         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16117         included code from Craig Setera's port to Win32 (the one that uses
16118         X11, and the cygwin dll), even if it probably will be abandoned.
16119
16120         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16121         the user entered one herself.  This way one can complete *.h and
16122         don't get matches on any .help files, for instance.
16123         
16124 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16125
16126         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16127         font hash table, if we have a GdkFontPrivate entry for this font
16128         already, simply increment its reference count, provided by Olaf Dietsche
16129         <olaf.dietsche+list.gtk@netcologne.de>.
16130
16131         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16132         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16133
16134 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16135
16136         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16137         the number of calls to gdk_draw_point() (and thus to X) by
16138         clipping the points by hand.
16139
16140         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16141         the clip parameter.
16142         (gtk_handle_box_paint): Only paint the handle if the expose area
16143         intersects it.
16144
16145 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16146
16147         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16148
16149 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16150
16151         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16152         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16153
16154 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16155
16156         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16157          textmode (O_TEXT) for OS/2 version.
16158
16159 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16160
16161         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16162         GtkSpinButton, "input" and "output", to make the output more flexible.
16163         The user has to provide a mapping between adjustment->value and the
16164         output string (and vice versa, if the spin button is editable). 
16165         See testgtk for examples.
16166
16167 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16168
16169         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16170         new one.
16171         
16172         * configure.in: set gtk+ version to 1.3.0.