]> Pileus Git - ~andy/gtk/blob - ChangeLog
You can now set all sorts of properties in any order you wan, whether or
[~andy/gtk] / ChangeLog
1 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
4         in any order you wan, whether or not the column is added to the
5         tree, or the tree is realized.  Yay!
6
7         * gtk/gtktreeviewcolumn.c
8         (gtk_tree_view_column_setup_sort_column_id_callback): handle
9         sorting columns a lot saner
10
11         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
12         new function to actually set wether or not a column is
13         reorderable.
14
15         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
16         if we have 'em.
17
18         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
19         Fix nasty bug where we were showing the button just before
20         realizing it.  As a result, the parent window was
21         tree_view->window instead of tree_view->priv->header_window.
22
23         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
24         to let you easily reorder a list or tree.
25
26 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
27
28         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
29         from args to properties.
30
31 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
32
33         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
34         from args to properties. (#51957)
35
36         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
37         calls to after ->set_property call.
38
39 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
40
41         * tests/prop-editor.c: Block against redundant changes.
42
43         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
44         properties.
45
46 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
47
48         * gdk/gdkpixmap.h: Remove creative formatting.
49
50 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
51
52         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
53         property API. (#51669)
54
55         * gtk/gtkscale.c: Patch from John Margaglione converting to
56         property API. (#51891)
57
58         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
59         to property API. (#50985)
60
61 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
62
63         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
64         buffering state across expose event, so we still call end_paint().
65
66 2001-05-11  Alexander Larsson  <alexl@redhat.com>
67
68         * gtk/gtkhsv.c (paint_triangle):
69         Expose the ring in the triangle at the correct place when
70         exposing just a part of the triangle.
71
72         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
73         Return FALSE, or window focusing will not work.
74
75 2001-05-11  Havoc Pennington  <hp@pobox.com>
76
77         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
78         #54144
79
80         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
81         bug #54330
82
83 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
84
85         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
86         propagate exposes to NULL child.
87
88         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
89         against not having one of the scrollbars.
90
91         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
92         we don't keep a mnemonic window if we have no mnemonic installed.
93
94 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
95
96         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
97         it has the _important_ side effect of initializing a class.
98
99 2001-05-10  Alexander Larsson  <alexl@redhat.com>
100
101         * gdk/linux-fb/gdkprivate-fb.h:
102         Make sure you can compile out the implementation/wrapper assert
103         macros.
104
105         * gdk/linux-fb/gdkdrawable-fb2.c:
106         Check implementation/wrappers, initialize type for pixmap dummys.
107
108         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
109         Hide the cursor if reading from the screen.
110
111         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
112         Fix sign bug in tiling code.
113
114         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
115         Handle background pixmaps.
116
117 >>>>>>> 1.1955
118 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
119
120         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
121         function to let user control where columns are dragged.
122
123         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
124         Escape is pressed.
125
126 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
127
128         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
129         "columns_changed" signal.
130         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
131         motion code to draw arrows to the side if indicator is outside the
132         widget.
133         (gtk_tree_view_map_expanded_rows): Implement.
134
135 2001-05-07  Alexander Larsson  <alexl@redhat.com>
136
137         * demos/testpixbuf-save.c: 
138         * demos/testpixbuf-drawable.c:
139         Include gdkfb.h on linux-fb.
140
141 2001-05-07  Alexander Larsson  <alexl@redhat.com>
142
143         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
144         New function for getting toplevel window at position.
145         (gdk_drag_find_window): Use get_toplevel_window () instead
146         of gdk_window_get_pointer(). (gdk_drag_status): Use
147         correct context for getting window.
148
149         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
150         g_strdup the atom name.
151
152         * gdk/linux-fb/gdkwindow-fb.c:
153         Costmetic fix.
154
155         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
156         Add code for changing cursor on linux-fb backend (same as
157         win32).
158
159 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
160
161         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
162         present before doing anything with it.  Patch from Håvard Kvålen
163         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
164         report was not for the development branch of GTK+, but it applies
165         anyways).
166
167 2001-05-04  Havoc Pennington  <hp@redhat.com>
168
169         * configure.in: fix some shell typos
170
171         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
172
173         * gtk/gtkimage.c: handle animations
174
175         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
176         border_width * 2, not just border_width
177
178         * gtk/gtkscale.c: add "format_value" signal to allow people
179         to override the way values are drawn.
180         (gtk_scale_get_value_size): fix width/height mistake,
181         and compute size from actual displayed text, not 
182         from made-up text.
183
184         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
185         signal registration
186
187         * tests/testtext.c: Add "Remove all tags" menu item for testing
188
189         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
190
191         * demos/gtk-demo/main.c (main): add hack so we can find modules
192         without installing gtk
193
194         * demos/gtk-demo/textview.c (insert_text): demo font scaling
195
196         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
197         factor)
198         (gtk_cell_renderer_text_set_property): remove some bogus
199         g_object_notify
200
201         * gtk/gtktexttag.c: add "scale" property which is a font scaling
202         factor
203
204         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
205         to layout
206
207         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
208         gtk_text_iter_is_first
209
210 2001-01-06  Hans Breuer  <hans@breuer.org>
211
212         * gdk/gdk.def : updated exports
213
214         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
215         gdk won't compile anymore
216  
217         * gdk/win32/gdkevents-win32.c : initialize ret_val when
218         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
219         Improved gdk_flush () to not only do pending drawing operations
220         but also process all currently pending events. This should make
221         the behaviour more similar to the X11 version.  
222
223         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
224         option needs to be set even if there is no GDK_GC_BACKGROUND.
225         (gdk_win32_hdc_get) : use predraw_set_background () independent
226         of value_mask. This allows to draw dashed lines leaving the original
227         background intact.
228
229         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
230         after processing, because we can't reuse it as the X11 version does.
231
232         * gtk/gtk.def : updated exports
233
234         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
235         would like to get rid of this file again, and use straight
236         makefile.msc again, as the other Gtk+ subdirs do)
237
238         * test/makefile.msc (new file) : build the test apps here
239
240 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
241
242         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
243         strike-through setting
244         (gdk_draw_layout_line_with_colors): Render strike-through
245
246 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
247
248         * Release 1.3.5
249
250         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
251
252         * NEWS: Updated
253
254         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
255         Makefile breakage.
256
257 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
258
259         * demos/gtk-demo/images.c (progressive_timeout): Fix
260         typo in filename.
261
262         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
263         out FIXME warning; just too annoying.
264
265 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
266
267         * gdk/linux-fb/gdkcolor-fb.c:
268         Better error messages.
269
270         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
271         Initialize abs_x and abs_y.
272         
273         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
274         Correct handling of stipple offset.
275
276         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
277         Treat directcolor framebuffers as truecolor.
278         
279 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
280
281         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
282         dependency on Atk for accessibility support.
283
284         * configure.in **/Makefile.am: Major reworking of substituted
285         variables for CFLAGS/LIBS to make a lot more sane and 
286         keep the the compile/link lines a bit shorter.
287
288         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
289
290 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
291
292         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
293         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
294         use _gtk_boolean_handled_accumulator.
295
296 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
297
298         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
299         to fix things so clicking inside selection leaves cursor
300         at point where clicked. (#50324)
301
302         * gtk/gtksettings.c (gtk_settings_class_init): Restore
303         sane value for default double click time.
304
305         * tests/testtext.c (test_init): Really path to input modules.
306
307 2001-05-03  Sven Neumann  <sven@convergence.de>
308
309         * demos/testpixbuf-save.c: include target-specific headers as
310         done in testpixbuf-drawable.c
311
312 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
313
314         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
315         new_text_length appropriately when we run into the 
316         size limit for the entry. (#53445, reported by Jeff Franks)
317
318         * tests/testgtk.c (create_entry): Remove most of the
319         property toggle buttons. Replace with a "Props" button
320         that brings up a property editor.
321
322         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
323         Split the property editor code out for reuse, improve.
324
325 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
326
327         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
328         trap errors around calls to XSetInputFocus since we have
329         no way of knowing reliably whether we are viewable or
330         not. (#53947)
331
332 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
333
334         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
335         fix bug in dropping columns.  Moving columns now basically works
336         modula some fine tuning.
337
338 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
339
340         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
341         autoscroll support.  It mostly works, but could use some fine
342         tuning.
343         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
344         Actually move the column.
345
346 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
347
348         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
349           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
350           New default theme! A slighly improved version of the 2.0 Raleigh
351           theme, with Windows-esque focus/drawing default. 
352           (GtkWidget::interior_focus defaults to TRUE.)
353
354         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
355
356 2001-04-30  Havoc Pennington  <hp@pobox.com>
357
358         * tests/testtext.c (line_numbers_expose): fix to work with
359         gtk_paint_layout change
360
361 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
362
363         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
364           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
365           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
366           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
367
368         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
369           with GtkWidget::interior_focus = TRUE better.
370
371         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
372         ::default_outside_border for more flexibility.
373
374         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
375         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
376         change that had to be made with g_object_get.
377
378 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
379
380         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
381         (gtk_tree_view_move_column_after): Clean up interface. 
382
383 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
384
385         * gtk/gtkpacker.h:
386         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
387          to gtkenum.h.
388
389         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
390         handled in switch).
391
392         * gtk/Makefile.am:
393         (gtk.defs): generate enum portions with  glib-mkenums.
394         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
395         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
396         
397         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
398         addition.
399
400         * docs/Changes-2.0.txt: keep a note on signal handlers now
401         not getting emitted during the emission they were connected within.
402
403 2001-04-28  Havoc Pennington  <hp@pobox.com>
404
405         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
406
407 2001-04-24  Havoc Pennington  <hp@redhat.com>
408
409         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
410         (gtk_text_layout_move_iter_to_next_line): fix these two for
411         invisible text, lots of other stuff still hosed.
412
413         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
414         new function, replaces the get/set palette stuff. This function 
415         is intended for use by libgnomeui which should set the hook to a
416         thing which sets the palette in GConf, and we need the
417         GConf-to-xsettings proxy which will result in the change being
418         propagated back to the GTK app.
419
420         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
421         about unusable signals that it may be because the signal has 
422         parameters.
423
424         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
425         style, otherwise gtkrc.c won't know to create a new GtkStyle for
426         it.
427         (gtk_widget_modify_color_component): call
428         gtk_widget_modify_style() so the rc style will get copied.
429         (gtk_widget_modify_font): ditto
430
431         * gtk/gtkrc.c: make a couple variables static
432
433         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
434         help button by default, since it does nothing
435
436         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
437         around with UI
438
439         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
440         so we can have tooltips
441
442         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
443         can have tooltips
444
445         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
446         GDK_ENABLE_BROKEN, because its memory behavior is completely
447         hosed.
448
449         * gtk/gtknotebook.c: remove key press handler, replace with
450         binding set, add numeric keypad support
451
452         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
453
454         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
455
456         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
457         addition to plain Delete
458
459         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
460         GDK_KP_Enter in addition to GDK_Return
461
462         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
463         activate on entry instead of key press
464         (gtk_font_selection_on_clist_key_press): get
465         rid of this signal handler, not needed with new font sel.
466
467         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
468         no-longer-needed emit_stop_by_name(), just return TRUE
469
470         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
471         cruft, this widget is no longer focusable.
472
473         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
474         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
475         move_slider action signal, add binding set for vscale/hscale, in
476         the process support numeric keypad
477
478         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
479         make GDK_Return and GDK_KP_Enter activate the entry via 
480         binding set, instead of hardcoded.
481
482 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
483
484         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
485         code.  Some documentation added.
486
487 2001-04-27  Havoc Pennington  <hp@redhat.com>
488
489         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
490
491         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
492
493         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
494         line/para separators
495         (gtk_entry_create_layout): set single paragraph mode on the layout
496
497         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
498         spacing between the image and label; instead, inside a button box 
499         the button will get extra space that will go there, but if people 
500         configure button box for 0 chubbiness, then there's no spacing.
501
502         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
503         and min/max size style properties, so people can tune their
504         chubbiness.
505
506         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
507         functions
508
509         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
510         space_style, and button_relief into style properties, remove
511         functions for setting them
512         
513         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
514         it back down
515
516         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
517         types from gtk_widget_style_get
518
519         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
520         with a style property.
521
522         * gdk/x11/gdkevents-x11.c: namespace the settings
523
524         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
525
526         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
527         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
528         be used. Also, translate doc strings for settings. Also, namespace
529         the double-click-time property. Also, remove bell properties crap.
530
531 2001-04-27  Sven Neumann  <sven@gimp.org>
532
533         * Makefile.am: before creating links, check if pkg-config files
534         exist for the default target. Otherwise link to the pkg-config files
535         that got installed with this build.
536
537 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
538
539         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
540         dragging code.  Revealed some (potential) GdkWindow bugs.
541
542         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
543         _gdk_window_init_position to the end of reparent to fix the case
544         of reparenting when new_x != old_x and new_y != old_y.
545
546 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
547
548         * gtk/gtkentry.c (strstr_len): Fix optimization that
549         was correct for the use here, but completely incorrect
550         in general.
551
552 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
553
554         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
555         until patch adding gtk_window_set_size() is recommitted. 
556
557         * **Makefile.am configure.in gdk/x11/gdkim-11.c
558           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
559           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
560           (#10784)
561
562 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
563
564         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
565         window == NULL in a number of cases.
566
567         * tests/testdnd.c: Set module path for gdk-pixbuf.
568
569 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
570
571         * gtk/Makefile.am xembed.h: File containing #defines
572         for XEMBED protocol.
573
574         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
575
576         - Change protocol from old plug/socket specific protocol
577           to XEMBED draft
578         - Various fixes to work with GTK+-2.0
579
580         Still quite a bit of work to do here to handle initiation
581         from the socket side (as specified by XEMBED), to handle
582         the more advanced features of XEMBED, and to figure out
583         a good way to handle same-app embedding with less overhead
584         than using full XEMBED.
585
586 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
587
588         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
589         track of whether the toplevel has the focus; only send
590         focus-in events to the focus widget when the window
591         actually has the focus.
592
593 2001-04-25  Havoc Pennington  <hp@pobox.com>
594
595         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
596         were still in the header
597
598 2001-04-24  Alexander Larsson  <alexl@redhat.com>
599
600         * gtk/gtkclist.[ch]:
601         * gtk/gtkctree.c:
602         When there is a row highlighted for D'n'D it must alse
603         be painted hightlighted on exposes. Otherwise exposes from
604         the icon being dragged will mess up the hightlight.
605
606         * gtk/gtkfontsel.c:
607         Don't recenter selected font when exposing the font family
608         clist. This means you can now actually scroll the font family
609         list.
610
611         * gtk/gtknotebook.c:
612         Fix focus movement on scrolling tabs that are placed on the left
613         and right.
614
615 2001-04-21  Havoc Pennington  <hp@pobox.com>
616
617         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
618         empty/invisible lines.
619
620         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
621         (gtk_text_iter_set_visible_line_index): new functions to set
622         indexes excluding invisible text
623
624         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
625         index
626
627         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
628         (gtk_text_iter_get_visible_line_offset): new functions to 
629         get indexes excluding invisible text
630
631         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
632         bunch of extra padding that served no purpose
633
634         * gtk/gtkdialog.c: Make all the spacings configurable via style
635         properties, for chubbiness configuration in themes
636
637         * tests/testtext.c: fix path to the immodules.
638         
639 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
640
641         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
642         got munched by #endif.
643
644         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
645
646         * gtk/gtktreeview.c: Refactored code to clean up a number of
647         events.
648
649         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
650         values to make consistent with other functions.  Spotted by Jeff
651         Franks <jcf@tpg.com.au>.
652
653         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
654         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
655
656 2001-04-23  Sven Neumann  <sven@gimp.org>
657
658         * gtk/Makefile.am
659         * gtk/gtkplug.c
660         * gtk/gtksocket.c: on request of Owen, reverted my last change 
661         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
662
663 2001-04-23  Sven Neumann  <sven@gimp.org>
664
665         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
666         compile for non-X11 targets again
667
668 2001-04-20  Alexander Larsson  <alexl@redhat.com>
669
670         * gtk/gtkcolorsel.[ch]:
671         API Change. Take GdkColor arguments instead of gdouble *.
672         Leave the old gtk_color_selection_set_color for compatibility,
673         but marked deprecated.
674         Do correct rounding when converting RGB <-> HSV.
675         
676         * gtk/gtkcolorseldialog.c:
677         * tests/testgtk.c:
678         Use new GtkColorSelection API.
679
680         * gtk/gtkhsv.c:
681         Fix problem selecting colors in triangle when Hue is 330.
682         Fix some black dots around the HSB triangle.
683         
684         * gtk/gtkfilesel.c:
685         return FALSE from the focus_in_event handler to fix focus problems.
686
687 2001-04-18  Havoc Pennington  <hp@redhat.com>
688
689         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
690         set, so keybindings are configurable    
691         (gtk_window_activate_default): Change to activate the focus widget
692         instead if there's a focus widget, to be consistent with the
693         behavior that previously existed in key_press_event
694
695 2001-04-18  Havoc Pennington  <hp@redhat.com>
696
697         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
698
699 2001-04-18  Havoc Pennington  <hp@redhat.com>
700
701         Close bug #50615:
702         
703         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
704         the layout
705
706         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
707
708         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
709
710         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
711         
712         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
713         to blue for base, in addition to bg
714         
715 2001-04-18  Havoc Pennington  <hp@redhat.com>
716
717         * tests/testgtk.c (create_image): allow shrinking the image window
718         to test that we clip to allocation.
719
720         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
721         #9845
722
723         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
724
725 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
726
727         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
728         mode on shm segments to 0600. We'll see who complains.
729
730         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
731         _gdk_windowing_window_destroy() AFTER recursing through
732         children.
733
734         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
735         testsocket_child on X.
736
737         * tests/testsocket[_child].c: Fix uses of
738         gtk_window_get_default_accel_group().
739
740         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
741
742         * gdk/gdkimage.c: (gdk_image_get):
743         Deal with the possibility that XGetImage() might return NULL.
744         Allocate the GdkImagePrivate structure only after XGetImage()
745         succeeds in order not to dereference a NULL ximage pointer.  This
746         prevents a core dump when XGetImage() fails - which is unlikely,
747         but can happen due to race conditions accessing the geometries of
748         drawables.  An x error will still be triggered, but the gdk image
749         wrapper at least wont seg fault.
750         
751 2001-04-18  Havoc Pennington  <hp@redhat.com>
752
753         * gtk/gtkimage.c: fix to properly queue resizes when the image is
754         set
755
756         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
757         if the insertion point isn't editable
758
759         * demos/gtk-demo/images.c: Added a GtkImage demo
760
761         * demos/gtk-demo/drawingarea.c: drawing area demo
762         
763         * demos/gtk-demo/menus.c (create_menu): cleanups
764
765 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
766
767         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
768           gdk/x11/gdkevents-x11.c: Introduce an extra child
769         of toplevel windows that serves to hold the focus to
770         avoid events being delivered to embedded windows.
771
772         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
773         some extra variables to clean up code and reduce the
774         number of casts.
775
776         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
777         guint for 1 bit bit fields, not gboolean.
778
779 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
780
781         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
782         not TRUE. (Fixes #52925)
783
784 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
785
786         * Released 1.3.4
787
788         * NEWS: Updated
789
790         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
791         use GTK_TYPE_ENUM.
792
793 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
794
795         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
796
797         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
798         names to compatibility #defines so docs work.
799
800         * gtk/gtkenums.h: Remove GtkMenuFactoryType
801
802         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
803
804         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
805
806         * tests/testgtkrc: No magenta cursors, please.
807
808         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
809
810         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
811         
812 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
813
814         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
815         grabs, since they are no longer necessary.
816
817         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
818         by signal_connect() and call gtk_button_pressed() rather
819         than signal_connect_after().
820
821         * tests/testgtk.c: Restore radio menu items to combos 
822         since they'll look OK with Raleigh, and it is easier
823         than finishing the process of removing them that was
824         started earlier.
825
826 2001-04-16  Hans Breuer  <hans@breuer.org>
827
828         * gdk/gdk.def :
829         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
830
831         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
832         we are interested in the functions return value not the function address
833         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
834
835         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
836
837 2001-04-14  Hans Breuer  <hans@breuer.org>
838
839         * gdk/gdk.def :
840         * gdk/makefile.msc : updated
841
842         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
843         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
844         (the testgtk::text backgound pixmap is drawn again)
845         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
846         Win32 Pango change
847         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
848
849         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
850         Not sure if the returned settings have the right unit, because I couldn't
851         find any docs for the X version ...
852
853         * gtk/gtk.def :
854         * gtk/makefile.msc.in : updated
855
856 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
857
858         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
859         wording problems. (Compared to version from Johannes Stezenbach to
860         check correctness.)
861
862 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
863
864         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
865         this to compile.
866
867 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
868
869         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
870         not pixbufpos.
871
872         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
873
874         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
875         are unsigned insts, therefore use g_value_set_uint.
876         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
877
878 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
879
880         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
881
882         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
883         GTK_TYPE_STRING.
884
885         * gtk/gtktreeview.c: New functions to allow initial column
886         dragging work.
887
888         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
889
890         * tests/testtreefocus.c: give dave some love.
891
892         * tests/testtreesort.c: Modify test to check really long samples.
893
894 2001-04-11  Alexander Larsson  <alexl@redhat.com>
895
896         * gtk-2.0.m4: Pass pkg-config options
897         before the other args so it works even if
898         POSIXLY_CORRECT is set.
899
900 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
901
902         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
903         0, interface 0).
904
905 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
906
907         * gtk/gtkcalendar.c (gtk_calendar_button_press):
908         check for action_func != NULL
909
910 2001-04-04  Sven Neumann  <sven@gimp.org>
911
912         * tests/testgtk.c (test_init): corrected path to gtk.immodules
913
914 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
915
916         * Released Gtk+-1.3.3.
917
918 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
919
920         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
921
922 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
923
924         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
925         files to/from source dir. (if we don't stay in builddir, we
926         can't reach make-inline-pixbuf.
927
928         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
929         deps.
930
931         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
932         ages 0).
933
934 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
935
936         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
937         moved to the GtkTreeSortable interface.
938
939         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
940         Make more efficient (fixes #50262).
941
942 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
943
944         * NEWS: Updated.
945
946         * configure.in: Remove support for uninstalled glib.
947
948         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
949         so as not to stop emission.
950
951         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
952         is no longer supported.
953
954         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
955         into tests, change build order to build modules before
956         gtk/.
957
958         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
959         to here.
960
961 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
962
963         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
964         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
965         GPatternSpec. this is actually unlikely to cause breakage in
966         third-party apps since except for gle, pretty much ever caller
967         passes NULL here.
968
969         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
970
971         * *.c: use g_pattern_*() API.
972
973         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
974
975         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
976         directions aren't passed in.
977
978         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
979         functionality to be usable from gtkstyle.c as well, give precedence
980         for conversion to user-supplied parsers.
981         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
982
983         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
984         _gtk_settings_parse_convert() for rcporperty value conversion.
985
986 2001-04-03  Alexander Larsson  <alexl@redhat.com>
987
988         * gdk/linux-fb/gdkevents-fb.c:
989         Add empty gdk_setting_get().
990
991 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
992
993         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
994         variable names.
995         
996         * gtk/makeenums.pl: touch this so enum files get remade.
997
998 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
999
1000         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
1001         work again when not sorted.
1002
1003         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
1004         and "expand_row" signal, closing bug 52578.
1005
1006         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
1007         support.
1008
1009         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
1010         support.
1011
1012 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1013
1014         * gdk/gdkevents.h: Add GdkEventSetting event for notification
1015         of changes to system settings, gdk_setting_get() to retrieve
1016         a single system setting.
1017
1018         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
1019         to the draft XSETTINGS mechanism.
1020
1021         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
1022         XSETTINGS.
1023
1024         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
1025         of GDK settings changes to the GtkSettings object.
1026
1027         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
1028         double-click-timeout property to GDK.
1029
1030         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
1031         Define GDK boxed types here.
1032
1033         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
1034         gdk/gdkenumtypes.[ch] for enum definitions.
1035
1036         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
1037         * gtk/gtk-boxed.defs: Comment out GDK types
1038         * gtk/gtktypeutils.h: Remove GDK types
1039         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
1040
1041 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
1042
1043         * Applied patch from Ron Steinke to add signal accumulators
1044         so that signals with the convention 'TRUE return means
1045         handled' stop emission on a TRUE return.
1046
1047         * gtk/gtkmain.[ch]: Add private accumulator 
1048         _gtk_boolean_handled_accumulator, used throughout GTK+.
1049         
1050         * gtk/gtkspinbutton.c: Add accumulator for ::output.
1051
1052         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
1053         
1054         * gtk/gtkwidget.c: Add accumulators for event signals,
1055         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
1056         for ::mnemonic-activate.
1057
1058         * gtk/gtkwindow.c: Add accumulator for ::frame_event
1059
1060 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
1061
1062         * gtk/gtkwidget.c: Add missing include.
1063
1064 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
1065
1066         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
1067         marshaller.
1068
1069         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
1070         "changed" signal to "range_changed".
1071
1072         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
1073         removing a tree from one model would remove all trees from that
1074         model.
1075         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
1076         changed signal instead.
1077
1078 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
1079
1080         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
1081         chaining up to parent impl, since we have a INPUT_ONLY
1082         window.
1083
1084         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
1085         foreground color for the cursor.
1086
1087 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
1088
1089         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
1090         param spec when caching property values, since we unref it
1091         later when we free the style.
1092
1093         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
1094         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
1095
1096 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
1097
1098         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
1099         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
1100         stupidity.
1101
1102 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
1103
1104         [ First pass at adding style properties. Still needs some definite
1105         fine-tuning. ]
1106
1107         * gtk/gtkbutton.c: Add ::default_spacing style property.
1108          
1109         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1110         ::indicator_spacing style properties.
1111
1112         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1113         style properties.
1114
1115         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1116         rather than a normal property.
1117
1118         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1119         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1120
1121         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1122         Honor ::interior_focus.
1123         
1124         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1125         TRUE.
1126
1127         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1128         Add ::slider_width, ::trough_border, ::stepper_size,
1129         ::stepper_spacing style properties.
1130
1131         * gtk/gtkscale.[ch] Add ::slider-length style property.
1132
1133 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1134
1135         * gdk/linux-fb/gdkwindow-fb.c:
1136         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1137         warnings that were spewed on startup.
1138
1139         * gtk/gtkwindow-decorate.c:
1140         gtk_window_reposition -> _gtk_window_reposition
1141
1142 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1143
1144         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1145         Add boxed type for GtkRequistion. Use it for ::size-request.
1146
1147         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1148         Add a new GtkBorder structure useful for geometry properties
1149         for widgets. Add corresponding GTK_TYPE_BORDER.
1150         
1151         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1152         Support automatic parser selection like
1153         gtk_settings_install_property_parser().
1154
1155         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1156         functionality for use by gtk_widget_class_install_style_property.
1157         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1158
1159 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1160
1161         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1162         g_param_spec_unichar(). 
1163
1164 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1165
1166         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1167         _NET window managers.
1168
1169         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1170
1171 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1172
1173         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1174         bad needs to be nuked, not just deprecated.
1175
1176         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1177         gtk_widget_popup().
1178
1179         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1180         
1181         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1182         widget.
1183         
1184         * docs/Changes-2.0.txt: updates.
1185         
1186 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1187
1188         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1189         for (i = 0; i < 100; i ++)
1190           g_print ("I will confirm it compile before committing\n");
1191
1192 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1193
1194         * gtk/gtktreestore.c: Initial work on implementing the
1195         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1196
1197 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1198
1199         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1200         reference counts around emissions where the widget is used afterwards.
1201         added freeze/thaws around multiple properties being notified.
1202         (_gtk_widget_get_aux_info): cleanups.
1203         
1204         * gtk/gtksettings.c (gtk_settings_install_property): provide
1205         default parsing functions for gdkcolor, enums and flags.
1206
1207         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1208         applied by owen.
1209         backed out gtk_window_get_location(), gtk_window_set_location(),
1210         gtk_window_get_size() and gtk_window_set_size(), these
1211         have to be sorted out wrg x/y/width/height/default_with/default_height
1212         properties.
1213         kept a flag in GtkWindowGeometryInfo to handle user
1214         resetting default sizes.
1215         cleaned up ZVT comments.
1216         bunch of assorted bug fixes, notification fixes.
1217         (_gtk_window_reposition): make this a really internal function.
1218         
1219         * gtk/testgtk.c: fixups.
1220         
1221 2001-03-31  Hans Breuer  <hans@breuer.org>
1222
1223         * config.h.win32.in : disable USE_MMX for msvc build cause
1224         the assembler doesn't fit and is out of my scope. Disable
1225         USE_GMODULE for msvc build as wel. The right way to share
1226         binaries on win32 would be to use libtiff.dll etc. To reduce
1227         installation hassles IMO it's better to include all fileformats
1228         builtin to gdk-pixbuf
1229
1230         * gdk-pixbuf/makefile.msc : new file
1231
1232         * gdk/gdk.def : updated
1233
1234         * gdk/win32/gdkevents-win32.c : don't erase the background if
1235         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1236         buttons
1237         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1238
1239         * gdk/win32/gdkwindow-win32.c : added three new functions like
1240         the X version. Only one is implemented, because the other two
1241         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1242         be default behaviour on win32 anyway ...
1243
1244         * gtk/gtk.def : updated
1245
1246         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1247         from where it was built and add an additional rule to automagically
1248         build gtkmarshal.[hc]
1249
1250         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1251         before array access for the current entry isn't finished
1252
1253         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1254         use g_return_val_if_fail
1255
1256         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1257         for the static array, but let the compiler calculate it. It
1258         makes me wonder if gcc isn't capable to catch bugs like this ...
1259
1260 2001-03-31  James Henstridge  <james@daa.com.au>
1261
1262         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1263         constant "-1" in the aux info structure.
1264
1265 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1266
1267         * gtk/gtkbutton.c (gtk_button_get_property):
1268         * gtk/gtklabel.c:
1269         Remove leaks.
1270         
1271         * gtk/gtkcontainer.c:
1272         * gtk/gtkhscale.c:
1273         * gtk/gtkhscrollbar.c:
1274         * gtk/gtklayout.c:
1275         * gtk/gtkmisc.c:
1276         * gtk/gtkprogress.c:
1277         * gtk/gtkprogressbar.c:
1278         * gtk/gtkrange.c:
1279         * gtk/gtktable.c:
1280         * gtk/gtkviewport.c:
1281         * gtk/gtkvscale.c:
1282         * gtk/gtkvscrollbar.c:
1283         * gtk/gtkwidget.c:
1284         Property patches, based on patches from John Margaglione and Lee Mallabone.
1285
1286 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1287
1288         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1289         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1290         inline API function docs.
1291         (gtk_spin_button_new_with_range): New convenience constructor.
1292         (gtk_spin_button_set_increments): New adjustment helper.
1293         (gtk_spin_button_set_range): New adjustment helper.
1294
1295         * gtk/testgtk.c : added test of the new convenince constructor and
1296         value_changed signals.
1297
1298 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1299
1300         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1301         listen to the reorder signal.
1302
1303 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1304
1305         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1306         to get the aux info structure fo the widget.
1307
1308         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1309         above function.
1310
1311         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1312
1313         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1314         to get the size of the window manager frame, basically the same
1315         code that gdk_window_get_root_origin() had
1316         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1317
1318         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1319         gdk_window_resize() if the window is realized and resizeable
1320
1321         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1322         typo so that setting gravity works
1323
1324         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1325         allocation if auto_shrink is on, even if the default size
1326         has not changed.
1327
1328         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1329         g_return_if_fail
1330
1331 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1332
1333         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1334         reordering/sorting work.  Now pretty much works.
1335
1336         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1337         reorder mostly work.  Still need to get the parity correct.
1338
1339         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1340         signal, so I can listen for the sort_column_changed signal so I
1341         can change my "sort_indicator" property.  Cool.
1342
1343 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1344
1345         [ Patch from Havoc Pennington, hp@redhat.com ]
1346
1347         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1348         Add functions gdk_window_begin_resize_drag/begin_move_drag
1349         to start resizing or moving a toplevel window. This
1350         is done either using the _NET_WM_MOVERESIZE protocol,
1351         or, if that isn't present, by emulation.
1352
1353         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1354         to export the above to GTK+-land.
1355
1356         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1357         
1358         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1359         Move this function into gdkwindow, since we need it
1360         when implementing fallback resizing.
1361
1362         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1363         Fix typo when setting gravity.
1364
1365         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1366         Add an optional (but on by default) resize grip for resizing 
1367         the parent window.
1368
1369 01-03-29  Alexander Larsson  <alexl@redhat.com>
1370
1371         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1372         Don't return TRUE from the event handler, that blocks all
1373         event signals on the tooltip widget. Now you can press buttons
1374         in toolbars again.
1375
1376 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1377
1378         * gtk/testtext.c (create_buffer): Add missing NULL on
1379         valist.
1380
1381         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1382         c-n-p problem with INCONSISTENT property.
1383
1384         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1385
1386         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1387         hook.
1388
1389         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1390         signal as a hook for extending the default popup menu
1391
1392         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1393         use radio menu items for the input method menuitems
1394
1395         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1396         inserted unicode from Ctrl-Shift-hex input method
1397
1398         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1399         validatation here, already done at GtkTextBuffer level.
1400
1401         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1402         popup_menu run action signal and Shift+F10 and Menu keybindings.
1403
1404         * gtk/gtkentry.c: implement a default handler for popup_menu
1405
1406         * gtk/gtktextview.c: implement a default handler for popup_menu
1407
1408         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1409         from a key event
1410         
1411         * gtk/gtklabel.c: remove "trailer" cruft
1412
1413 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1414
1415         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1416         handle reordering of trees.  Seems to mostly work w/ the exception
1417         of the parity flag.
1418
1419         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1420         signal.
1421
1422 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1423
1424         * gtk/gtkwidget.h: c++ fixes.
1425
1426 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1427
1428         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1429         memory.
1430
1431 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1432
1433         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1434         Nils Barth fixing event return values. (#51041)
1435
1436         * gtk/gtkwidget.c: Fix some return values for default
1437         functions.
1438
1439         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1440         return values for trough_keys functions.
1441
1442         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1443         value for add_accelerator (shoudl have been a void
1444         return.)
1445
1446         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1447         Fix return type of EVENT.
1448
1449         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1450         signal return a boolean.
1451
1452 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1453
1454         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1455         reordered signal.
1456
1457         * tests/testtreesort.c (main): fix spelling.
1458
1459 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1460
1461         * gtk/gtkliststore.c: More work on implementing sortable
1462         interface.
1463
1464 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1465
1466         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1467         reference the widgets in the resulting list. (#11821)
1468         This makes this consistent with gtk_container_children.
1469
1470         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1471         uses of gtk_window_list_toplevels.
1472
1473 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1474
1475         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1476         a virtual function to set whether the IM context should use 
1477         the preedit string. (#51922)
1478         
1479 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1480
1481         * gdk/gdkpango.h: Remove stale FIXME comment.
1482
1483 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1484
1485         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1486         Fixed bug that returned NULL if a filename was selected.
1487
1488 2001-03-24  Havoc Pennington  <hp@pobox.com>
1489
1490         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1491         to contain the word "theme"
1492
1493 2001-03-24  Havoc Pennington  <hp@pobox.com>
1494
1495         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1496         slower but finer-grained
1497         (gtk_hsv_focus): get initial focus on the ring or triangle 
1498         according to tab direction
1499
1500         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1501
1502 2001-03-23  Havoc Pennington  <hp@pobox.com>
1503
1504         * gtk/gtkhsv.c: make this somewhat key-navigable
1505
1506         * gtk/gtkfontsel.c: mnemonics
1507
1508         * gtk/gtkgamma.c: mnemonics
1509
1510         * gtk/gtkcolorsel.c: add mnemonics to labels
1511
1512 2001-03-22  Havoc Pennington  <hp@pobox.com>
1513
1514         Applied big patch from Seth Lytle to fix event handler return
1515         values, slightly modified.
1516
1517         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1518         handled.
1519         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1520         select_day
1521
1522         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1523         (gtk_clist_button_release): return TRUE if handled
1524
1525         * gtk/gtkcolorsel.c (mouse_release):
1526         (palette_activate): 
1527         (palette_press): 
1528         (palette_new): 
1529         (mouse_press): 
1530         (get_screen_color): 
1531         fixed return type (void to gboolean), return TRUE,
1532         added GTK_SIGNAL_FUNC cast
1533
1534         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1535         (void to gboolean), and return TRUE
1536         (gtk_combo_button_release): changed return value to TRUE after
1537         gtk_grab_add on combo->popwin
1538
1539         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1540         collapse or expand
1541
1542         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1543         button/motion
1544
1545         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1546         press/release and motion that trigger act
1547
1548         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1549
1550         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1551         for GDK_Return
1552         
1553         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1554         (gtk_list_button_release): return TRUE if selection
1555
1556         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1557         press
1558
1559         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1560         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1561
1562         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1563         nothing triggered
1564         (gtk_notebook_button_release): return TRUE if we do anything
1565
1566         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1567         (gtk_spin_button_button_release): return TRUE or chained retval
1568
1569         * gtk/gtktext.c (gtk_text_button_press): 
1570         (gtk_text_button_release): return TRUE
1571         (gtk_text_key_press): remove redundant retval code
1572         
1573         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1574         and sensitive
1575         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1576         TRUE if sensitive
1577
1578         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1579         return TRUE
1580
1581 2001-03-23  Havoc Pennington  <hp@redhat.com>
1582
1583         * gtk/testgtk.c: fix warnings
1584
1585         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1586
1587         * gtk/gtktextview.c: fix warnings
1588
1589         * gtk/gtktext.c (find_cursor_at_line): fix warning
1590
1591         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1592
1593         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1594         of this function
1595
1596         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1597         fix warning
1598
1599         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1600
1601         * gtk/gtkfontsel.c: fix warning
1602
1603         * gtk/gtkcolorsel.c: fix warnings
1604
1605 2001-03-23  Havoc Pennington  <hp@redhat.com>
1606
1607         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1608
1609         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1610
1611         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1612         and deprecated gtk_check_menu_item_set_show_toggle().
1613         
1614         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1615
1616         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1617
1618         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1619
1620 2001-03-23  Havoc Pennington  <hp@redhat.com>
1621
1622         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1623         some docs
1624
1625 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1626
1627         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1628         this.
1629
1630         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1631         set_cell to set_value
1632
1633         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1634         set_cell to set_value
1635
1636 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1637
1638         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1639         fix braino.
1640         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1641         support.
1642
1643         * gtk/gtktreeview.c: Addition of initial sortable support.
1644
1645         * gtk/gtktreestore.c: Addition of initial sortable support.
1646
1647         * gtk/gtkliststore.c: Addition of initial sortable support.
1648
1649         * gtk/gtkmarshal.list: yet another marshaller.
1650
1651         * gtk/gtktreedatallist.[ch]: shared code between the store models
1652         for handling sorting headers.
1653
1654 2001-03-22  Havoc Pennington  <hp@redhat.com>
1655
1656         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1657         (gtk_container_unset_focus_chain): Add ability to override the 
1658         focus chain for a container explicitly
1659
1660 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1661
1662         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1663         added PROP_MNEMONIC_WIDGET.
1664
1665         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1666         (gtk_window_remove_mnemonic): 
1667         (gtk_window_add_mnemonic): fixed assertions.
1668         (gtk_window_activate_mnemonic): constrain modifier checks to those
1669         permitted by gtk_accelerator_get_default_mod_mask().
1670         got rid of gtk_window_get_default_accel_group().
1671
1672         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1673         activatable widgets either by focussing or a warning.
1674         added a signal accumulator to ::activate_mnemonic which stops the
1675         emission once a handler returned TRUE.
1676
1677 2001-03-22  Havoc Pennington  <hp@pobox.com>
1678
1679         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1680         the stock item label
1681
1682         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1683
1684         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1685
1686         * demos/gtk-demo/*.c: Add mnemonics all over the place
1687
1688         * gtk/gtklabel.h: mark parse_uline deprecated
1689
1690 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1691
1692         * gtk/gtkitemfactory.[ch]:
1693         Add support for stock and normal imagemenuitems.
1694         
1695         * gtk/testgtk.c:
1696         Add some tests for mnemonics, stock toolbars, stock
1697         and image menuitems in itemfactory and gdk_window_scroll.
1698
1699 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1700
1701         * gtk/gtkbutton.[ch]:
1702         * gtk/gtkdialog.c:
1703         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1704         removed accel_group argument. Renamed gtk_button_new_accel() to
1705         gtk_button_new_with_mnemonic() and removed accel_group argument.
1706
1707         * gtk/gtkcheckbutton.[ch]:
1708         New function gtk_check_button_new_with_mnemonic().
1709
1710         * gtk/gtkentry.c:
1711         Override activate_mnemonic and just grab focus.
1712
1713         * gtk/gtkitemfactory.c:
1714         Don't add menu uline accel group, instead use mnemonics support.
1715
1716         * gtk/gtklabel.[ch]:
1717         New support for mnemonics.
1718
1719         * gtk/gtkmarshal.list:
1720         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1721
1722         * gtk/gtkmenu.[c]:
1723         * gtkmenushell.c:
1724         Use mnemonics instead of accel groups for uline
1725         support in menu items.
1726         Removed gtk_menu_get_uline_accel_group() and
1727         gtk_menu_ensure_uline_accel_group().
1728
1729         * gtk/gtkmenuitem.c:
1730         Override activate_mnemonic to handle switching between
1731         menu items if there are collisions.
1732         
1733         * gtk/gtknotebook.c:
1734         Connect to activate_mnemonic on the tab_label, so that
1735         activating it switches to that notebook page.
1736
1737         * gtk/gtkwidget.[ch]:
1738         Add activate_mnemonic signal. New function
1739         gtk_widget_activate_mnemonic() to emit it.
1740         Default implementation does activate/grab_focus.
1741
1742         * gtk/gtkwindow.[ch]:
1743         Add support for mnemonics in windows.
1744         New functions:
1745         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1746         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1747
1748         * gtk/testgtk.c:
1749         Update to function name changes.
1750         
1751 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1752
1753         * gtk/gtkimagemenuitem.[c]:
1754         Add gtk_image_menu_item_new_from_stock()
1755
1756 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1757
1758         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1759         Fix buglet in meeting.
1760
1761 2001-03-19  Havoc Pennington  <hp@redhat.com>
1762
1763         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1764         add a bunch of accessor functions. This is because we have
1765         reasonable expectations of extending what fields it contains in
1766         the future.
1767
1768         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1769         changes
1770
1771         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1772         GtkIconSource   
1773
1774 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1775
1776         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1777         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1778
1779         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1780           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1781           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1782           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1783         Change float to double everywhere with the exception of 0<->1.0 alignment
1784         and GtkCurve.
1785
1786 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1787
1788         * gdk/win32/gdkdrawable-win32.c
1789         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1790         output.
1791
1792         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1793         gdkwin32.h.
1794
1795 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1796
1797         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1798         print_event_state, print_event): Use preprocessor macro to make
1799         code more compact. Print also GDK_WINDOW_STATE events.
1800         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1801         
1802         * gtk/gtk.def
1803         * gtk/makefile.mingw.in: Update.
1804
1805         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1806         to catch also Cygwin.
1807
1808 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1809
1810         * gtk/gtkspinbutton.[hc]: added rc-style argument
1811         GtkSpinButton::shadow_type.
1812         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1813         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1814         rc-style settings.
1815
1816         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1817
1818         * gtk/gtkwidget.c: quark cleanups.
1819
1820         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1821         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1822         to create_rc_style() (we don't do cloning in standard OO sense).
1823         added per rc style properties.
1824         
1825         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1826         property values and for caching those. some cleanups.
1827         
1828         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1829         
1830         * gtk/gtksettings.[hc]: new file for global rc-file properties
1831         (at least currently, should get extended to support X properties
1832         and other communication mechanisms).
1833         
1834         * gtk/gtkwidget.[hc]: added style property support:
1835         (gtk_widget_class_install_style_property_parser): install style
1836         property pspec with parser function for rc-file values other
1837         than LONG, DOUBLE or STRING.
1838         (gtk_widget_class_install_style_property): same as above without
1839         parser (parsers are going to be needed quite infrequently).
1840         (gtk_widget_style_get_property): retrive style property value.
1841         (gtk_widget_style_get_valist): same as above with varargs support,
1842         has NOCOPY semantics.
1843         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1844
1845 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1846
1847         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1848         "row_activated" signal.
1849
1850         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1851         stupidity.  Lets actually pass in the row with this signal...
1852
1853 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1854
1855         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1856
1857         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1858
1859         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1860         everything into the ::destroy function, and freed a lot more.
1861
1862 2001-03-16  Havoc Pennington  <hp@redhat.com>
1863
1864         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1865         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1866         are now allowed.
1867
1868 2001-03-16  Havoc Pennington  <hp@redhat.com>
1869
1870         * Applied patch from Nils Barth (bug # 51041) to 
1871         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1872         in various places.
1873
1874 2001-03-15  Havoc Pennington  <hp@redhat.com>
1875         
1876         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1877         for properties to set on the tag.
1878
1879         * gtk/testtext.c: fixups to reflect create_tag change
1880         
1881         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1882         background/foreground stipple are objects, not boxed.
1883
1884         * demos/gtk-demo/textview.c: intellihancing
1885
1886 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1887
1888         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1889         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1890
1891 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1892
1893         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1894         Fix sign error with queued region translations.
1895
1896 2001-03-15  HideToshi Tajima  <tajima@happy>
1897
1898         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1899         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1900         * gtk/gtkentry.c (update_im_cursor_location): 
1901         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1902         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1903         set_cursor_pos to set_cursor_location in GtkInputContext class
1904
1905 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1906
1907         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1908         the location of the cell relative to its area.
1909         * gtk/gtkcell*: modified for above change
1910         * gtk/gtktreeview.c: modified for above change.
1911
1912 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1913
1914         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1915          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1916         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1917
1918 2001-03-14  Havoc Pennington  <hp@redhat.com>
1919
1920         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1921         
1922         * gtk/gtk.h: remove gtkdata.h
1923
1924         * gtk/Makefile.am: remove gtkdata
1925         
1926         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1927         not "disconnect" on the adjustments.
1928         
1929         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1930         GtkData
1931
1932         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1933         not GtkData
1934
1935         * configure.in: handle case where X render exists, but Pango lacks
1936         Xft support.
1937
1938 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1939
1940         * gtk/gtktoolbar.[ch]:
1941         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1942         to add stock items to toolbars.
1943
1944         * gtk/Makefile.am:
1945         Remove ../gdk/gdkim.h from gdk_headers.
1946
1947 2001-03-15  Sven Neumann  <sven@gimp.org>
1948
1949         * gdk/gdkim.h: removed
1950         
1951         * gdk/gdkprivate.h
1952         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1953
1954 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1955
1956         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1957         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1958         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1959         set_cursor_pos() virtual method
1960
1961         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1962         (gtk_im_context_xim_set_cursor_pos): add implementation for
1963         set_cursor_pos() method
1964
1965         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1966         position to input methods
1967
1968 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1969
1970         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1971         code a lot.
1972
1973         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1974         g_mem_chunk.
1975         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1976         (_gtk_tree_data_list_node_to_value): Fix to switch on
1977         G_TYPE_FUNDAMENTAL.
1978         (_gtk_tree_data_list_value_to_node): Fix to switch on
1979         G_TYPE_FUNDAMENTAL.
1980         (_gtk_tree_data_list_node_copy): Fix to switch on
1981         G_TYPE_FUNDAMENTAL.
1982
1983 2001-03-12  Havoc Pennington  <hp@redhat.com>
1984
1985         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1986         to convert to new property API. Also, change default_width and
1987         default_height get_property to return 0 as the flag value for
1988         "unset"; -1 is not a valid value for these fields.
1989
1990 2001-03-12  Havoc Pennington  <hp@redhat.com>
1991
1992         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1993         enum with registration for icon sizes, instead of strings.
1994
1995         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1996         gtkwidget.c: Fix to reflect GtkIconSize
1997         
1998 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1999
2000         Make GtkFB compile and link.
2001         
2002         * gdk/linux-fb/gdkdrawable-fb2.c:
2003         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2004         
2005         * gdk/linux-fb/gdkwindow-fb.c:
2006         window->mapped to GDK_WINDOW_IS_MAPPED(). 
2007         Added gdk_window_shape_combine_region.
2008         Added assorted placeholders for unimplemented new GdkWindow API calls.
2009
2010 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2011
2012         * gtk/gtkfilesel.c:
2013         Add more test when converting filenames from/to utf-8.
2014         Don't allow entering text in the filename entry which isn't allowed in
2015         a filename. Just beep instead.
2016
2017 2001-03-12  Alexander Larsson  <alexl@redhat.com>
2018
2019         * gtk/gtkclist.c:
2020         Scroll using gdk_window_scroll(). Don't wait for exposes.
2021         Move the column headers in an order that makes them flash less.
2022
2023 2001-03-10  Hans Breuer  <hans@breuer.org>
2024
2025         * gdk/gdk.def : updated
2026
2027         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
2028         to offseting the clip_mask at the right place
2029
2030         * gdk/win32/gdkwindow-win32.c : don't create background brushes
2031         for all the gdkClasses, especially not for the input_only case.
2032         Otherwise flickering wont be avoidable, because we don't get
2033         WM_ERASEBKGND message for these windows.
2034
2035         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
2036         and fixed massive redraw problems apparently triggered by Alexanders 
2037         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
2038         but it seems to work quite well :-)
2039
2040         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
2041         prototype
2042
2043 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
2044
2045         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
2046         (gtk_list_store_set_cell): Fix a stupid typo.
2047
2048 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
2049
2050         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
2051         select_all not work if you're in SINGLE mode (it doesn't make that
2052         much sense, anyway.)
2053
2054         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2055         handle types more sanely.
2056         (_gtk_tree_data_list_value_to_node): handle types more sanely.
2057         (_gtk_tree_data_list_node_copy): handle types more sanely.
2058
2059         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
2060         GValue better. Converts the type as well.
2061
2062         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
2063         GValue better. Converts the type as well.
2064
2065 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
2066
2067         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
2068         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
2069         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
2070         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
2071
2072         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
2073         gdk_im/gdk_ic.
2074
2075 2001-03-09  Hans Breuer  <hans@breuer.org>
2076
2077         * gdk/gdk.def : updated
2078
2079         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
2080         for their palette
2081
2082         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
2083         removing
2084
2085         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
2086         removing and implemented Havoc's GdkWindow state functions; 
2087         stick/unstick only as no-op, cause I don't know how to emulate 
2088         on win32 ...
2089
2090         * gtk/gtk.def : updated
2091
2092         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
2093
2094         * gtk/gtktypeutils.c : #include <string.h>
2095
2096         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
2097
2098 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
2099
2100         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
2101         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
2102         not a boxed.
2103
2104 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2105
2106         * docs/Changes-2.0.txt:
2107         Document expose event->region change and that gtk_widget_event
2108         doesn't allow passing expose events.
2109
2110         * gdk/gdkevents.h:
2111         Add region to expose event.
2112         
2113         * gdk/gdkevents.c:
2114         Handle event->region in gdk_event_copy() and gdk_event_free().
2115
2116         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2117         Generate expose_event->region when creating expose events.
2118
2119         * gdk/x11/gdkevents-x11.c:
2120         Generate expose events with regions when translating X events.
2121
2122         * gtk/gtkcontainer.[ch]:
2123         Default expose handler that propagates expose events to NO_WINDOW
2124         children. New function gtk_container_propagate_expose()
2125
2126         * gtk/gtkwidget.[ch]:
2127         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2128         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2129         expose events. New function gtk_widget_send_expose() to send expose
2130         events. New function gtk_widget_region_intersect() to calculate
2131         window/region intersections.
2132         
2133         * gtk/gtkmain.c (gtk_main_do_event):
2134         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2135         Use gtk_widget_send_expose() to send expose events.
2136         
2137         * gtk/gtkbin.c:
2138         * gtk/gtkbox.c:
2139         * gtk/gtkfixed.c:
2140         * gtk/gtkimagemenuitem.c:
2141         * gtk/gtklist.c:
2142         * gtk/gtkpacker.c:
2143         * gtk/gtktable.c:
2144         * gtk/gtktree.c:
2145         Remove expose handler, using the default container implementation
2146         instead.
2147         
2148         * gtk/gtkbutton.c:
2149         * gtk/gtkcheckbutton.c:
2150         * gtk/gtkeventbox.c:
2151         * gtk/gtkfixed.c:
2152         * gtk/gtkhandlebox.c:
2153         * gtk/gtklayout.c:
2154         * gtk/gtklistitem.c:
2155         * gtk/gtkmenu.c:
2156         * gtk/gtkmenubar.c:
2157         * gtk/gtkmenuitem.c:
2158         * gtk/gtknotebook.c:
2159         * gtk/gtkoptionmenu.c:
2160         * gtk/gtkpaned.c:
2161         * gtk/gtkscrolledwindow.c:
2162         * gtk/gtktogglebutton.c:
2163         * gtk/gtktoolbar.c:
2164         * gtk/gtktreeitem.c:
2165         * gtk/gtkviewport.c:
2166         Chain expose handler to parent class handler. Use
2167         gtk_container_propagate_expose() to propagate exposes.
2168
2169         * gtk/gtkclist.c (check_exposures):
2170         * gtk/gtktext.c (process_exposes):
2171         Use gtk_widget_send_expose instead of gtk_widget_event.
2172
2173 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2174
2175         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2176
2177 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2178
2179         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2180         unref the nodes.   Fixes bug #50058.
2181
2182         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2183         "::ref_iter" to "::ref_node".
2184         (gtk_tree_model_unref_node): change "::unref_iter" to
2185         "::unref_node". Fixes bug #50064.
2186
2187 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2188
2189         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2190         support for invisible cells.
2191          (gtk_tree_view_bin_expose): ditto
2192
2193 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2194
2195         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2196         on gobjects.
2197
2198         * tests/testtreefocus.c (main): New test file.
2199
2200         * tests/testtreeview.c: update to latest glib changes.
2201
2202         * tests/testtreecolumns.c: update to latest glib changes.
2203
2204 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2205
2206         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2207
2208 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2209
2210         * *.c: added accumulator data argument to g_signal_newc()
2211         functions.
2212
2213         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2214         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2215         * gtk/treestoretest.c (make_window):
2216         s/g_signal_connect/g_signal_connectc/.
2217
2218         * gtk/gtktextbuffer.c: completed signal arg fixups,
2219         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2220
2221 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2222
2223         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2224         G_CONST_RETURN.
2225
2226         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2227         ::hierarchy-changed signal when a widget changes
2228         from anchored to unanchored or vice versa.
2229         (anchored means 
2230          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2231         Use a private flag to keep track of this efficiently.
2232
2233 2001-03-07  Havoc Pennington  <hp@redhat.com>
2234
2235         * gtk/testgtk.c (create_spins): uglify so that size request gets
2236         tested.
2237
2238         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2239         request on values for upper/lower, completes #6152
2240
2241 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2242
2243         * Makefile.am: Remove gtk-config-2.0 again.
2244         (Grrrr, pkg-config. And stops make loops.)
2245
2246 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2247
2248         * gtk/gtksignal.[hc]: removed old emission hook API.
2249         
2250         * docs/Changes-2.0.txt: fixed sections.
2251         
2252         * gtk/gtktextbuffer.c: signal arg fixups.
2253
2254 2001-03-07  Havoc Pennington  <hp@redhat.com>
2255
2256         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2257
2258         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2259         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2260         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2261         validation and the redraw which is higher priority than the
2262         validation.
2263
2264 2001-03-07  Havoc Pennington  <hp@redhat.com>
2265
2266         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2267         (gtk_entry_set_property): remove trailer
2268
2269         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2270         (gtk_entry_get_width_chars): new functions, to set size request to 
2271         a given number of characters
2272
2273         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2274
2275         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2276         (gtk_dialog_get_has_separator): new function
2277         (run_delete_handler): fix to not emit "response" signal
2278         because we already did in the delete event handler installed
2279         at dialog creation time.
2280         
2281         * gtk/gtkdialog.h: add a has_separator property,
2282         add GTK_DIALOG_NO_SEPARATOR flag
2283
2284 2001-03-07  Havoc Pennington  <hp@redhat.com>
2285
2286         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2287         off decorations for a window.
2288
2289         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2290         changes
2291
2292         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2293         to get location of PangoLayout inside the label, closes #51198
2294
2295         * gtk/testgtk.c (create_bbox): fix up button box usage
2296
2297         * gtk/testcalendar.c (create_calendar): fix up button box usage
2298
2299         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2300
2301         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2302
2303         * gtk/gtkhbbox.h: deprecations
2304
2305         * gtk/gtkvbbox.h: deprecations
2306
2307         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2308         emulate deprecated gtk_button_box_get_spacing
2309
2310         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2311         the "set global default" functions
2312         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2313         GtkBox base class
2314
2315         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2316
2317         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2318         render the icon, return the missing image icon.
2319
2320         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2321         image icon if the load fails.   
2322
2323         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2324         when no image is found; should be the Netscape "missing image"
2325         icon eventually but for now is a random image
2326
2327         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2328         role for the session manager
2329
2330         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2331
2332         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2333         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2334
2335         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2336
2337 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2338
2339         * gtk/*.c: marshaller fixes.
2340         
2341         * gtk/gtkmarshal.list: extreme cleanup.
2342
2343         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2344         param spec for now.
2345
2346         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2347         where appliable.
2348
2349         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2350         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2351         which are not reference counted:
2352         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2353         PangoFontDescription, GtkTreeIter and GtkTreePath.
2354
2355 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2356
2357         * gtk/gtktreeselection.h: 
2358         * gtk/gtktreemodel.c:
2359         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2360         file should be included directly, and gobject/gmarshal.h
2361         as well as gtk/gtkmarshal.h even can't be included directly.
2362
2363         * Makefile.am: grr, install gtk-config-2.0.
2364
2365         * gtk/testgtk.c:
2366         * gtk/simple.c:
2367         * gtk/gtkmenu.c:
2368         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2369         passing "*signal*::*" args to gtk_widget_set().
2370         
2371         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2372         
2373         * gtk/*.c: removed trailer arg from property setters and getters.
2374         macro fixups.
2375
2376 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2377
2378         * gtk/gtklabel.c (set_markup): Removed warning
2379
2380 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2381
2382         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2383         field to allow you to hide cell renderers.
2384
2385         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2386
2387         * gtk/gtktreeview.c: Add support for invisible cells.
2388
2389 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2390
2391         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2392         Add "clicked" signal back to columns.
2393
2394         * ChangeLog: remove conflict markers.
2395
2396 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2397
2398         * gtk/gtkbutton.c: Add animation of activation by, on 
2399         activate, pressing the button, and adding a timeout that 
2400         releases the button after 250ms or on key release and
2401         emits ::clicked. (#51501)
2402
2403         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2404         action area, we connect to ::clicked instead of ::activate
2405         so the dialog stays up through the animation.
2406
2407 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2408
2409         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2410         check the ignore_enter flag for the menu shell that
2411         the item is actually a child of, not for attached
2412         submenus. (#51536)
2413
2414 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2415
2416         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2417         special key-press grab handling for widgets within
2418         GtkWindows. Otherwise, fall through to normal case.
2419
2420         This prevents key events being sent twice to GtkInvisible
2421         widgets, which can cause all sorts of mischief.
2422
2423 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2424
2425         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2426         widget is in effect, give the grab widget a first
2427         crack at KEY_PRESS/RELEASE events. (#424)
2428
2429 2001-03-06  James Henstridge  <james@daa.com.au>
2430
2431         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2432         offset for the window_state_event to point at window_state_event
2433         rather than no_expose_event.
2434
2435 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2436
2437         * gtk/gtkimmodule.h: fix busted /* comment */
2438
2439 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2440
2441         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2442         object properties.
2443
2444 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2445
2446         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2447         add object properties.
2448
2449         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2450         to add object properties.
2451
2452         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2453         object properties.
2454
2455         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2456         add object properties.
2457
2458         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2459         object properties.
2460
2461 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2462
2463         * gtk/gtktreemodel.c: renamed "child_toggled" to
2464         "has_child_toggled".
2465
2466         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2467         handle new signal name.
2468
2469         * gtk/gtktreestore.c: Updated to handle new signal name.
2470         * gtk/gtklisttore.c: Updated to handle new signal name.
2471         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2472
2473 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2474
2475         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2476         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2477
2478 2001-03-05  Michael Natterer  <mitch@gimp.org>
2479
2480         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2481         pixbuf-engine coincidentially also failed to make one of it's
2482         parent_class pointers static, causing overwriting of GtkLabel's
2483         parent_class pointer in pixbuf_style_class_init().
2484         (Will commit the fix to the pixbuf-engine too).
2485
2486 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2487
2488         * gdk/gdkwindow.h:
2489         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2490         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2491         gdk_window_set_icon_list for net wmspec functionality.
2492
2493         * gdk/x11/gdkwindow-x11.c:
2494         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2495         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2496         gdk_window_set_icon_list.
2497         Added gdk_wmspec_change_state helper function and used it in the code.
2498         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2499
2500         * gtk/gtkdialog.c (gtk_dialog_init):
2501         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2502
2503         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2504         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2505
2506         * gtk/gtkwindow.c:
2507         new function gtk_window_set_type_hint.
2508         On realize, set type hint and modal hint.
2509
2510         * gtk/gtkwindow.h:
2511         Added type_hint field and gtk_window_set_type_hint.
2512
2513 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2514
2515         * gtk/gtklabel.[ch]:
2516         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2517         New function gtk_label_get_accel_keyval () to get the underline accelerator
2518         of the label. Setting the label pattern overrides other attributes.
2519
2520 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2521
2522         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2523         Added missing initializers to gtk_rc_style_init().
2524
2525 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2526
2527         * gtk/gtktextview.c: fixed bug #51097 about setting 
2528         gtk_text_view_set_border_window_size() if the widget is 
2529         already realized.
2530
2531 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2532
2533         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2534
2535         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2536         comment. Won't do to have duplicated doc comments between
2537         the platform subdirs.
2538
2539 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2540
2541         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2542           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2543
2544         Detectable auto-repeat - make a repeating key generate
2545         press/press/press/release instead of press/release pairs.
2546
2547         If we have Xkb and XkbSetDectableAutoRepeat supports
2548         that, we do it that way. Otherwise, when we get
2549         a release event, we check ahead with XPending to see
2550         if the next key is a KeyPress with the same keycode
2551         and timestamp. (Not 100% reliable, but pretty close.)
2552           
2553 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2554         
2555         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2556         special key-press grab handling for widgets within
2557         GtkWindows. Otherwise, fall through to normal case.
2558  
2559         This prevents key events being sent twice to GtkInvisible
2560         widgets, which can cause all sorts of mischief.
2561  
2562 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2563  
2564         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2565         widget is in effect, give the grab widget a first
2566         crack at KEY_PRESS/RELEASE events. (#424)
2567  
2568 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2569
2570         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2571         to extend the selection. (Roughly based on patch
2572         from Jay Cox, #50939)
2573
2574         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2575         to properly handle previous GDK_BUTTON_PRESS. 
2576         (Patch from Jay Cox, #50938)
2577
2578         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2579         '\0' back along with the deleted text. (#51148)
2580
2581 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2582
2583         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2584         the group when extracting it from the X keyboard event.
2585
2586         * modules/input/Makefile.am modules/input/imipa.c: 
2587         Simple module for entering IPA. (Do we need a 
2588         gtk-stupid-input-tricks CVS module?)
2589
2590 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2591
2592         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2593         const.
2594
2595         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2596
2597         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2598         is no focus widget for the dialog currently, grab the focus as well
2599         as the default.
2600
2601         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2602         the action area's children to iterate through, not the
2603         dialog's children.
2604
2605 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2606
2607         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2608         Add plug-socket tests. (Won't work worth a darn until I commit
2609         the rest of the plug-socket changes, but no reason these
2610         can't go into CVS now.)
2611
2612 2001-03-02  Havoc Pennington  <hp@redhat.com>
2613
2614         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2615         _gdk_region_get_xrectangles()
2616
2617         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2618
2619         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2620
2621         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2622         function, contributed by Ron Steinke    
2623
2624         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2625         gdk_net_wm_supports
2626
2627         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2628         New function, contributed by Ron Steinke
2629
2630         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2631         used to line up the text in the entry when using the entry for
2632         editable sheet cell hacks
2633
2634         * gtk/testgtk.c (create_entry): test the activate_default setting
2635         on GtkEntry
2636
2637         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2638         cause the entry to activate the default button for a dialog when 
2639         activated
2640         (gtk_entry_get_activates_default): new function
2641
2642 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2643
2644         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2645         Hwang to move call to sync_selection() up a few lines
2646         to before the row list is modified, to fix crash when
2647         removing rows in the undo_selection list.
2648
2649         (Test case provided by Daniel Elstner:
2650
2651         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2652
2653 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2654
2655         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2656         of tree->root_tree in parent_set rather than _map(), 
2657         fixing #50892 in a bit better manner.
2658
2659 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2660
2661         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2662
2663 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2664
2665         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2666         gtk_default_draw_shadow.
2667
2668 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2669
2670         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2671         warning, make warnings more verbose, treat a error
2672         in shmat as permanent, and don't try again.
2673         (#51163, Ed Randall.)
2674
2675 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2676
2677         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2678         delay for the first click before starting to scroll.
2679         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2680
2681         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2682         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2683
2684 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2685
2686         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2687         cleanup to remove some references to unused
2688         ->xoffset, ->yoffset.
2689
2690 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2691
2692         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2693         mask. (#51039, fix from Martin Maierhofer)
2694
2695 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2696
2697         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2698         for unshifted + and shifted = for non-us keyboards.
2699         Make <Control>+ and <Control>- work as well as 
2700         <Control>KP_Plus, <Control>KP_Minus for recursive
2701         open/close.  (#2682, René Seindal)
2702
2703 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2704
2705         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2706         the active menu item before deactivating the menu,
2707         so gtk_menu_popdown doesn't change the history. (#50964)
2708         
2709 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2710
2711         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2712         draw lines with text_gc rather than black_gc.
2713         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2714
2715 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2716
2717         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2718         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2719         less interrelated then it was, but it still requires the
2720         GtkTreeView to map it.
2721
2722         * test/testtreecolumn.c: Now I can add a column to one view,
2723         remove it, add it to the another view, remove it, then re-add it
2724         to the first.  Nifty.
2725
2726 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2727
2728         * docs/tutorial/gtk-tut.sgml: Minor corrections
2729
2730 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2731
2732         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2733         GtkRowReference.
2734
2735 2001-02-28  Havoc Pennington  <hp@redhat.com>
2736
2737         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2738         draw_default
2739         (gtk_widget_draw_focus): remove this function; we could instead
2740         make it just gtk_widget_draw(), but in most cases I think the
2741         result would be broken user code, so think it's better to have
2742         that code not compile and get fixed
2743         (gtk_widget_draw_default): ditto
2744
2745         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2746         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2747         
2748         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2749         widgets lose/get the default, instead of calling draw_default
2750         
2751         * docs/Changes-2.0.txt: note about all this
2752
2753         Then fixed every widget in GTK, I won't list all the filenames.
2754
2755 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2756
2757         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2758         _gtk_tree_row_reference_deleted.
2759         (inserted_callback): Proxy out to
2760         _gtk_tree_row_reference_inserted.
2761         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2762         get around signal emission ordering problem.
2763
2764         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2765         fix to work with SINGLE 
2766         (_gtk_tree_selection_internal_select_node): Major sanitization on
2767         selections.  SINGLE now seems to work.
2768
2769         * tests/Makefile.am: add testtreecolumn.c:
2770
2771         * tests/testtreecolumn.c: New test.  Mostly points out selection
2772         bugs currently, but will test columns later.
2773
2774         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2775         selection bug.  I hate touching this code -- it's scary.
2776
2777 2001-02-26  Havoc Pennington  <hp@redhat.com>
2778
2779         * gtk/testgtk.c: test the window state stuff
2780
2781         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2782         window come to the user's attention as if it were just created
2783         (gtk_window_iconify): new function
2784         (gtk_window_deiconify): new function
2785         (gtk_window_stick): new function
2786         (gtk_window_unstick): new function
2787         (gtk_window_maximize): new function
2788         (gtk_window_unmaximize): new function
2789
2790         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2791
2792         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2793
2794         * gdk/x11/gdkevents-x11.c: create window state events when
2795         appropriate
2796         (gdk_wmspec_supported): new function
2797
2798         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2799         iconification before showing the window
2800         (gdk_window_deiconify): new function
2801         (gdk_window_stick): new function
2802         (gdk_window_unstick): new function
2803         (gdk_window_maximize): new function
2804         (gdk_window_unmaximize): new function
2805
2806         * gdk/gdkwindow.c: store the window state in the window; 
2807         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2808         window->mapped.
2809         (gdk_window_get_state): return the current window state
2810
2811         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2812         (gdk_event_get_state): handle GDK_WINDOW_STATE
2813         (gdk_synthesize_window_state): function to create the window state
2814         events
2815
2816         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2817         event, for changes to "window state" such as maximized, sticky, 
2818         etc.
2819         
2820         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2821         focuses a window
2822
2823         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2824         finds out if we support a given WM spec hint
2825
2826 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2827
2828         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2829
2830 2001-02-25  Hans Breuer  <hans@breuer.org>
2831
2832         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2833         cause we want to loose those prototypes only in the latter case
2834
2835         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2836         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2837         impl member variable instead
2838
2839         * gtk/gtk.def : updated
2840
2841         * gtk/gtklist.c : 
2842         * gtk/gtkmenus.c : include <string.h> for memset ()
2843
2844         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2845         for everthing built here, but for gtk-x.x.dll only. This solves
2846         problem of indifferent gtk type definitions
2847
2848 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2849
2850         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2851
2852 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2853
2854         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2855         column that is exposed.
2856
2857         (_gtk_tree_view_update_size): Changed name from set_size, and
2858         changed function to do more work, and not force people calling it
2859         to figure out the size.  Simplifies a lot of code elsewhere.
2860
2861 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2862
2863         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2864         return solid masks for xpms that have no transparent color.
2865         This makes the ..._create_from_xpm... API backwards
2866         compatible.
2867
2868 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2869
2870         * README.win32: Update. Mention the gtk-1-3-win32-production
2871         branch.
2872
2873         * gdk/win32/bdfcursor.c: New file. A program that generates
2874         xcursors.h. Thanks to Stefan Ondrejicka.
2875
2876         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2877         compact format.
2878
2879         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2880
2881         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2882         function, uses xcursors.h.
2883         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2884         cursor from inline data instead of using LoadCursor() to generate
2885         it from a resource.
2886
2887         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2888         event, must check the Windows message for mouse button state, as
2889         the GDK event state might not have been built if it is
2890         undelivered. Remove one goto.
2891
2892         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2893         SetCursor() if the current cursor as returned by GetCursor() is
2894         the window's previous cursor. The ChildWindowFromPoint() test
2895         apparently didn't work correctly.
2896
2897         * gdk/win32/rc/*.cur: Remove.
2898
2899         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2900
2901         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2902
2903         * gtk/makefile.{mingw,msc}.in: Updates.
2904
2905 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2906
2907         * gtk/gtktreemodel.h: add functions for signal emission.
2908
2909         * gtk/gtktreestore.c: move to use above functions instead of
2910         g_signal_emit.
2911
2912         * gtk/gtkliststore.c: ditto
2913
2914 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2915
2916         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2917         GObject instead of GtkObject.
2918
2919         * gtk/gtkliststore.c: ditto.
2920
2921         * gtk/gtktreemodelsort.c: ditto.
2922
2923         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2924         GtkTreeModelIface, instead of in each model.
2925
2926 2001-02-21  Havoc Pennington  <hp@redhat.com>
2927
2928         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2929         unbreak this function
2930
2931         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2932         properties
2933
2934         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2935         properties
2936
2937         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2938         properties
2939
2940         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2941         mean unset the max length
2942
2943 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2944
2945         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2946         Changed name to be set_cell_data_func to make it clear what
2947         the functino does.  Close bug #51069.
2948
2949 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2950
2951         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2952         have memory actually freed.  Keeps box running longer.
2953
2954 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2955         
2956         * gtk/gtkseparatormenuitem.[ch]:
2957         Added new menu separator item. The drawing and size handling
2958         is still done in GtkMenuItem, but the API is a bit more sane.
2959         
2960         * gtk/Makefile.am:
2961         Add gtkseparatormenuitem.[ch].
2962
2963         * gtk/gtk.h:
2964         Add gtkseparatormenuitem.h.
2965         
2966         * gtk/gtkentry.c:
2967         * gtk/gtkmenufactory.c:
2968         * gtk/gtktextview.c:
2969         Use the new API for menu separators.
2970         
2971         * demos/gtk-demo/menus.c (create_menu):
2972         Add some GtkSeparatorMenuItem demo code.
2973
2974 2001-02-20  Havoc Pennington  <hp@redhat.com>
2975
2976         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2977         Lee Mallabone
2978
2979         * gtk/gtkarrow.c: Convert to new property API, patch from 
2980         Lee Mallabone
2981
2982 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2983
2984         * tests/testtreeview.c (toggled_callback): fix to reflect change
2985         in GtkTreeModelStore.
2986
2987 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2988
2989         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2990         function to create an icon set from a pixbuf.
2991
2992 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2993
2994         * gtk/gtkcellrenderertext.[ch]:
2995         Add a "markup" property.
2996
2997         * gtk/treestoretest.c:
2998         Use the markup property, remove some leftover stuff from
2999         GtkTreeModelMapping.
3000
3001 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3002
3003         * gtk/gtklabel.c (gtk_label_set_selectable):
3004         Queue a redraw if the selectable setting was changed.
3005
3006 2001-02-20  Alexander Larsson  <alexl@redhat.com>
3007
3008         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3009         Actually copy the whole gc, not just the public parts.
3010         
3011         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3012         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
3013         labels.
3014
3015 2001-02-19  Havoc Pennington  <hp@pobox.com>
3016
3017         * gdk/gdkwindow.c: docs
3018
3019         * gdk/gdkrgb.c: docs
3020
3021         * gdk/gdkregion-generic.c: docs
3022
3023         * gdk/gdkgc.c (gdk_gc_set_values): docs
3024
3025         * gdk/gdkdraw.c: docs
3026
3027         * gdk/gdkdrawable.h: deprecate drawable get/set data
3028
3029 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
3030
3031         * demos/gtk-demo/dialog.c: Add simple new demo.
3032
3033 2001-02-19  Havoc Pennington  <hp@redhat.com>
3034
3035         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
3036         insert_child_anchor signal, bug #50245
3037
3038         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
3039         from create_child_anchor, so the anchor is passed in
3040
3041         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
3042         (_gtk_widget_segment_new): have the child anchor object passed in, 
3043         instead of creating it.
3044
3045         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
3046         to gtk_text_buffer_get_modified
3047
3048 2001-02-19  Havoc Pennington  <hp@redhat.com>
3049
3050         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
3051         changed GLib without fixing GTK
3052
3053         * gtk/gtkrange.h: Rename all the stupid implementation detail 
3054         functions to have an underscore in front. Most of them should 
3055         probably just go away, but for starters don't export them.
3056         Bug #50482
3057
3058 2001-02-19  Havoc Pennington  <hp@redhat.com>
3059
3060         * gdk/gdkcolor.h: test was backward, so deprecated functions were
3061         excluded by default
3062
3063         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
3064         clean up the old code a bit
3065
3066         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
3067         inconsistent state
3068
3069         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
3070         draw inconsistent state
3071
3072         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
3073         (create_menu): add inconsistent test
3074
3075         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
3076         new function
3077         (gtk_check_menu_item_get_inconsistent): new function
3078         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
3079         state (using etched in for now)
3080
3081         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
3082         draw inconsistent state
3083
3084         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
3085         function, used when the user has selected a range of stuff in
3086         different states
3087         (gtk_toggle_button_get_inconsistent): accessor for that
3088         (gtk_toggle_button_paint): draw inconsistent state (etched in?
3089         don't know what else to do)
3090
3091 2001-02-19  Hans Breuer <hans@breuer.org>
3092
3093         * gtk/gtk.def : updated exported symbols
3094
3095         * gtk/makefile.msc.in : updated
3096
3097         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
3098         a colormap, when invoked from testgtk::entry. I'm not sure where
3099         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
3100         avoids immediate crashing ...
3101
3102         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
3103         any objections ?
3104
3105         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3106         0 parameter. At least msvc doesn't like macros with var args. 
3107         I simply removed the extra 0, was it a feature or a typo ?
3108
3109         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3110         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3111         because the value assignment to the internal struct wasn't working.
3112         I'm not absolutely sure. The problem could have been resolved by
3113         changing the "func" declartion in the struct, but was the pointer
3114         to the function pointer intended ?
3115
3116         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3117
3118         * gdk/gdk.def : updated exported symbols
3119
3120         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3121         only use SetDIBitsToDevice if there is a palette at the drawable
3122         and the image is GDK_VISUAL_PSEUDO_COLOR
3123
3124         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3125
3126         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3127
3128         * gdk/*/makefile.msc : updated
3129
3130 2001-02-19  Havoc Pennington  <hp@redhat.com>
3131
3132         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3133         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3134
3135         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3136         (gdk_key_repeat_restore): nuke
3137
3138         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3139         (gdk_init_check): no atexit func
3140
3141         * gdk/gdkrgb.h: mark some stuff deprecated
3142
3143         * gdk/gdkcolor.h: mark some stuff deprecated
3144         
3145         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3146
3147         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3148
3149 2001-02-16  Havoc Pennington  <hp@redhat.com>
3150
3151         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3152         scroll steps.
3153
3154         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3155         steps, and add Ctrl-arrow shortcuts for paging visually as with
3156         HScale, since Page Up and Page Down move logically.
3157
3158         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3159         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3160         
3161         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3162         steps
3163         (gtk_range_scroll): handle the visual steps
3164
3165         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3166         scroll steps
3167
3168         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3169         steps, not the logical ones.
3170
3171         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3172         (scroll_vertical): handle up/down steps
3173
3174 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3175
3176         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3177         Copy data and free data with free().
3178
3179         * gdk-pixbuf/gdk-pixbuf.c:
3180         * gdk-pixbuf/io-jpeg.c:
3181         * gdk-pixbuf/io-png.c:
3182         Use g_try_malloc/g_free instead malloc/free.
3183         
3184         * gdk-pixbuf/test-gdk-pixbuf.c:
3185         Must... initialize... gobject...
3186         
3187         * gdk-pixbuf/pixops/timescale.c:
3188         * gtk/gtkcalendar.c:
3189         Use g_malloc instead of malloc.
3190         
3191 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3192
3193         * gtk/testgtkrc:
3194         Comment out property assignments, these don't work yet.
3195
3196 2001-02-17  Havoc Pennington  <hp@pobox.com>
3197
3198         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3199         bit.
3200
3201 2001-02-17  Havoc Pennington  <hp@pobox.com>
3202
3203         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3204         shadowed variables that had broken size request in some cases,
3205         leading to bogus tooltips (#50996)
3206
3207 2001-02-06  Jon K Hellan  <hellan@acm.org>
3208
3209         Implement fast browsing of tooltips, bug #50619
3210         
3211         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3212         and last_popdown
3213         
3214         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3215         use_sticky_delay and last_popdown.
3216         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3217         time of popdown.
3218         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3219         is NULL.
3220         (gtk_tooltips_recently_shown): New static function.  Return true
3221         if < sticky_delay has elapsed since last popdown.
3222         (gtk_tooltips_event_handler): Display window after sticky_delay
3223         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3224         since last popdown.
3225         
3226 2001-02-17  Havoc Pennington  <hp@pobox.com>
3227
3228         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3229         instead of (). #6394
3230
3231         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3232         G_CONST_RETURN, make it return by reference, #50473
3233         
3234 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3235
3236         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3237         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3238         setup fields contain garbage (e.g. subwindow, breaking
3239         gdk_drawable_ref() upon event copy).
3240         (gtk_menu_stop_navigating_submenu_cb): same here.
3241
3242         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3243         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3244         * gtk/gtkclist.c (vertical_timeout): 
3245         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3246         default-zero-intialization for unions to memset(,0,), as unions are
3247         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3248         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3249
3250         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3251         g_closure_sink() warning.
3252
3253         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3254         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3255         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3256         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3257         
3258 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3259
3260         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3261         gtk_*_store_get, and moved to GtkTreeModel.
3262
3263         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3264
3265         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3266
3267         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3268
3269         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3270         set the func.
3271
3272         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3273         freeze/thaw notify between setting all the properties for a cell.
3274
3275         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3276
3277 2001-02-15  Havoc Pennington  <hp@redhat.com>
3278
3279         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3280         the X coordinates so they're with respect to the line, rather than 
3281         with respect to the layout.
3282
3283         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3284         Mallabone
3285
3286         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3287         and inverted test
3288
3289         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3290         #50806
3291
3292         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3293
3294         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3295         gtk_text_iter_is_end
3296
3297         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3298         rename gtk_text_buffer_get_end_iter
3299
3300         * gtk/testgtk.c (create_labels): Add test for selectable
3301
3302         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3303         the selection stuff. This code is kind of broken since it doesn't 
3304         use the theme engine.
3305
3306         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3307         fix infinite loop and y offset problem
3308         (gdk_draw_layout_line_with_colors): fix foreground color handling
3309
3310         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3311         that makes the label selectable.
3312         
3313         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3314         layout when the style is set, since fonts etc. could have changed.      
3315
3316 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3317
3318         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3319
3320         * gtk/gtktreemodelsimple.[ch]: removed.
3321
3322 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3323
3324         * gtk/gtktreemodelmapping.[ch]:
3325         New files. Implement GtkTreeModelMapping.
3326         
3327         * gtk/Makefile.am:
3328         Add gtktreemodelmapping.[ch].
3329         
3330         * gtk/gtk.h:
3331         Add gtktreemodelmapping.h
3332
3333         * gtk/treestoretest.c:
3334         Test the GtkTreeModelMapping
3335
3336 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3337
3338         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3339         have a demo, we might as well pass in real values.  Thanks to
3340         clahey for pointing this out.
3341
3342 2001-02-14  Havoc Pennington  <hp@pobox.com>
3343
3344         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3345         "static" to a private function
3346         (gtk_image_menu_item_class_init): remove destroy handler,
3347         add "image" object property
3348
3349 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3350
3351         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3352         Add a shortcut if the window and the current clip_region doesn't
3353         overlap. This is needed when there are a lot of windows in a
3354         window. The layout test in testgtk is a good test.
3355
3356         * gdk/linux-fb/gdkwindow-fb.c:
3357         Whitespace fix.
3358
3359 2001-02-13  Sven Neumann  <sven@convergence.de>
3360
3361         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3362
3363 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3364
3365         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3366         Don't reference last_cursor if it is null. Fixes crash when rotating
3367         the screen before having moved the mouse.
3368
3369         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3370
3371         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3372
3373         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3374         when using 90 or 270 degrees rotation.
3375
3376 2001-02-12  Havoc Pennington  <hp@pobox.com>
3377
3378         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3379         it always set the foreground, even if we were only using
3380         a stipple.
3381         (gdk_draw_layout_line_with_colors): new function, allow
3382         override colors
3383         (gdk_draw_layout_with_colors): new function, allow override
3384         colors
3385         (gdk_pango_layout_line_get_clip_region): function to get the clip
3386         region for a logical text range
3387         (gdk_pango_layout_get_clip_region): get the clip region for a
3388         logical text range
3389
3390         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3391         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3392         the right number of arguments.
3393
3394         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3395         enhance the function to check that node data corresponds to a 
3396         view still belonging to the tree.
3397
3398         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3399         GtkTreePath
3400         (gtk_tree_view_inserted): ditto
3401         (gtk_tree_view_child_toggled): ditto
3402
3403         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3404         simplify this code.
3405
3406         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3407         a PangoAttrList
3408
3409         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3410
3411         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3412
3413         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3414         size in the size request 
3415         (gtk_menu_bar_size_allocate): consider toggle size here
3416
3417         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3418         that displays a widget in the toggle slot
3419
3420         * gtk/testgtk.c: test GtkImageMenuItem
3421
3422         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3423         
3424         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3425         request and allocation
3426
3427         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3428
3429         * gtk/gtkcheckmenuitem.c
3430         (gtk_check_menu_item_toggle_size_request): ditto
3431         
3432 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3433
3434         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3435         reference.
3436
3437         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3438         and refuse to initialize GTK+ if they fail.
3439
3440 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3441
3442         * configure.in: Add check for gtk-doc version.
3443
3444 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3445
3446         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3447         where the xpad/ypad was only being used on one side!
3448
3449 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3450
3451         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3452         function, copied from X11 version.
3453
3454         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3455         DestroyCursor failures. The reason for the problem (despite the
3456         inconsistent messages from GetLastError()) was that
3457         DestroyCursor() cannot be called while a cursor is set in a
3458         window. Set the new cursor first and then destroy the old one.
3459         Thanks to jpe@archaeopteryx.com.
3460
3461         * gdk/win32/gdkcc-win32.c: Remove.
3462
3463         * gdk/win32/Makefile.am: Remove from here, too.
3464         
3465         * gdk/gdk.def
3466         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3467
3468         * gtk/gtk.def
3469         * gtk/makefile.mingw.in: Updates.
3470
3471 2001-02-08  Havoc Pennington  <hp@redhat.com>
3472
3473         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3474         add a widget to a bin that already has a child.
3475
3476         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3477
3478         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3479         
3480         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3481
3482         * gdk/gdk.h: remove gdkcc.h
3483
3484         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3485
3486         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3487         GdkPixbuf, since the previous implementation was GdkColorContext
3488         dependent.
3489
3490         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3491         
3492 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3493
3494         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3495         a sane value!
3496
3497 2001-02-08  Havoc Pennington  <hp@redhat.com>
3498
3499         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3500         lighten them.
3501
3502 2001-02-08  Havoc Pennington  <hp@redhat.com>
3503
3504         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3505         validation idle
3506
3507         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3508         cell renderer
3509
3510         * demos/pixbuf-demo.c (timeout): remove deprecated
3511         gtk_widget_draw
3512
3513         * demos/testpixbuf-save.c (main): remove deprecated
3514         gtk_drawing_area_size
3515
3516         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3517         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3518         at the start of the allocation.
3519         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3520         unsetup or NULL model.
3521
3522         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3523         even/odd/sorted cells in the tree view.
3524
3525         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3526         bugfixes
3527
3528         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3529         backgrounds with draw_flat_box using different detail for even/odd
3530         rows.
3531
3532         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3533         row, so we can draw the alternating colors thing
3534
3535         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3536         property from a synonym property, notify for the synonym.
3537         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3538         (gtk_text_tag_get_property): Always return the font, even if
3539         all its fields aren't set
3540
3541         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3542         store the attr list; it leaves us with no way to change attributes
3543         in _render according to the render flags, and no way to implement
3544         get_property. Instead store all the specific text attributes. 
3545         Separate whether an attribute is enabled from its value. Sync all
3546         properties with GtkTextTag, make them all consistent, etc.
3547
3548         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3549         renderers can highlight the sort row/column     
3550
3551         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3552         accessor functions to get values; this has the side effect of
3553         showing up which accessor functions were missing. Added those.
3554
3555         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3556         set_alignment, to be consistent with GtkLabel, GtkMisc
3557
3558         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3559         arrow.
3560
3561         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3562
3563         * gtk/gtktreesortable.h: updates in here
3564
3565 2001-02-07  Sven Neumann  <sven@convergence.de>
3566
3567         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3568         pango dimensions after painting the background. We used to draw
3569         gigantic flat boxes here.
3570
3571 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3572
3573         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3574         error introduced with earlier commit) (pointed out by
3575         Ollie Lho)
3576
3577 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3578
3579         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3580         which are no longer necessary.
3581
3582 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3583
3584         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3585
3586 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3587
3588         * gdk/gdk.def
3589         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3590         Provide dummy implementations.
3591
3592 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3593
3594         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3595
3596         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3597         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3598         deprecated this function.
3599
3600         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3601         argument.
3602
3603 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3604
3605         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3606
3607 2001-02-03  Havoc Pennington  <hp@pobox.com>
3608
3609         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3610         Mikael Hermansson with patch from Mikael (if there was a toggle
3611         start one after the first character in the range, this function
3612         was broken). Bug #50380
3613
3614 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3615
3616         * configure.in: Remove confusing comment about X11.
3617
3618 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3619
3620         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3621         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3622         
3623 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3624
3625         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3626         it breaks things on BSD. If you want to compile GTK+ with
3627         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3628         when configuring, since GTK+ simply can't be "pure ANSI" 
3629         in the header files it uses. (#8170, Greg Hudson)
3630
3631 2001-02-02  Havoc Pennington  <hp@redhat.com>
3632
3633         * gtk/gtkwindow.c: docs
3634
3635         * gtk/gtkwidget.c: docs
3636         (gtk_widget_set_colormap): add a reference to the colormap
3637         (gtk_widget_get_default_colormap): add a reference to the colormap
3638
3639         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3640
3641         * gtk/gtktextiter.c: docs
3642
3643         * gtk/gtkmain.c (gtk_propagate_event): docs
3644
3645         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3646         (gtk_paned_set_position): docs
3647
3648         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3649         sort interface, no implementation yet.
3650
3651         * demos/testpixbuf.c (new_testrgb_window): replace
3652         gtk_drawing_area_size() with gtk_widget_set_usize()
3653
3654         * demos/testpixbuf-drawable.c (main): ditto
3655         
3656         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3657
3658         * gtk/gtktextbuffer.c: docs
3659
3660         * gtk/gtkstock.c: docs
3661
3662         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3663
3664         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3665
3666         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3667         
3668         * gtk/gtkimage.c: add some docs in here
3669         (gtk_image_size_request): change name of
3670         gtk_widget_render_stock_icon
3671         (gtk_image_get_icon_set): don't dup returned string
3672         (gtk_image_get_icon_set): don't dup returned string
3673
3674         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3675         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3676         and gtkiconfactory.h functions
3677
3678         * gtk/gtkiconfactory.c: add some docs in here
3679
3680         * gtk/gtkmain.c (gtk_get_default_language): document
3681         (gtk_get_current_event): document
3682         (gtk_get_current_event_state): document
3683         (gtk_get_event_widget): document
3684
3685         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3686
3687         * gtk/gtkcontainer.c: Add some documentation
3688         (gtk_container_add): give a more explanatory warning on adding an
3689         already-parented widget, this is kind of a FAQ and also a common
3690         typo that's easier to debug with a nice warning 
3691
3692         * gtk/gtkcellrenderertoggle.c
3693         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3694         adding this, it's useless
3695         (gtk_cell_renderer_toggle_set_active): remove
3696         (gtk_cell_renderer_toggle_get_radio): add
3697
3698         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3699         the NULL cell renderer, that doesn't make any sense to me. 
3700
3701         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3702         demo code should never use deprecated features.
3703
3704         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3705         code should never use deprecated features.
3706
3707         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3708         gtk_widget_queue_clear_area deprecated
3709
3710         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3711         deprecated
3712
3713         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3714
3715         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3716         a GdkImage deprecated, replaced by new consistently-named
3717         functions       
3718
3719         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3720
3721         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3722
3723         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3724         deprecated
3725
3726         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3727         so it won't appear in docs and confuse people.
3728
3729         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3730
3731         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3732         macros deprecated. (can't mark the type itself deprecated, since
3733         GtkProgressBar is not deprecated and we need the type decl to use
3734         GtkProgressBar)
3735
3736         * gtk/gtkpixmap.h: Mark deprecated
3737
3738         * gtk/gtkoldeditable.h: Mark deprecated
3739
3740         * gtk/gtklist.h: Mark deprecated
3741
3742         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3743         for anything anymore.
3744
3745         * gtk/gtkctree.h: Mark deprecated
3746
3747         * gtk/gtkclist.h: Mark deprecated
3748
3749         * gtk/gtkpreview.h: Mark deprecated
3750
3751         * gtk/gtkpacker.h: Mark deprecated
3752
3753         * gtk/gtktipsquery.h: Mark deprecated
3754
3755         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3756
3757         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3758
3759         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3760
3761         * gtk/gtkruler.h: Add comment that it will move out of GTK
3762
3763         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3764
3765         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3766
3767 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3768
3769         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3770         gdk_colormap_sync private since it was never exported
3771         in a header file.
3772
3773         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3774         colormap->colors[] for StaticGray, StaticColor colormaps.
3775
3776         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3777         was being used as if it was image->bits_per_pixel.
3778
3779         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3780         for the image in the GdkImage structure since it isn't
3781         reconstructable, and we need it to handle packed types
3782
3783         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3784         the assumption that on Win32 image->bits_per_pixel == image->depth,
3785         always.
3786
3787         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3788
3789         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3790         warning message if no converter can be found. 
3791
3792 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3793
3794         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3795         chars to isupper() / tolower(). (#567)
3796
3797         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3798         to clear up 64-bit warnings. (#567)
3799
3800 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3801
3802         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3803         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3804
3805         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3806         since some people set $(libdir) separately. (#1290, David Kaelbling)
3807
3808 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3809
3810         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3811         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3812         MAXPATHLEN, but the code here depends on a fixed value.)
3813         (#4524)
3814
3815 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3818         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3819
3820 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3821
3822         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3823         viewable there is no way that moving the node will cause the 
3824         focus row to become not viewable, so omit check on the visibility
3825         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3826
3827 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3828
3829         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3830         selection before inserting new text.
3831
3832 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3833
3834         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3835         Make the sensitivity of the reparented child track that of
3836         the original parent menu item. (#34218, David Hodson)
3837
3838         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3839         the case where the current item is destroyed properly.
3840
3841         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3842         some edge cases with child-less menuitems.
3843         
3844 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3845
3846         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3847         key pop down window. (#12074, Jon K Hellan)
3848
3849 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3850
3851         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3852         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3853         The solution here isn't perfect - you get an extraneous
3854         emission of "toggle", which could conceivably confuse an app,
3855         but better than the current situation. LXR search seems to
3856         indicate that no apps in GNOME CVS connect to "toggle".
3857
3858 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3859
3860         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3861         gtk_public_h_sources to directly here to avoid warning when
3862         building srcdir != builddir. (#9656)
3863
3864 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3865
3866         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3867         handlers in gtkrange.c return the proper values (TRUE == handled)
3868         (#10316).
3869
3870         This is just the tip of the iceberg, but gtkrange.c is the
3871         most common place where the propagation is problematical,
3872         and also a place where it is almost certainly safe to change
3873         this in the stable branch.
3874
3875         (You don't want right click popups on a range control or anything...)
3876
3877 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3878
3879         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3880         area on focus out, even if a background pixmap isn't set.
3881         (#13941)
3882         
3883 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3884
3885         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3886         to deal with setting the shape properly when scrolling arrows are
3887         turned on, but not visible because there is sufficient space.
3888         (#13432)
3889
3890 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3891
3892         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3893         items with submenus, destroy the item along with the submenu.
3894         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3895         properly.
3896
3897         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3898         later.
3899
3900 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3901
3902         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3903         the focus widget sometimes wasn't drawn with the default if there
3904         was no default widget.
3905
3906         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3907         unreference pixmaps. 
3908
3909         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3910         for some extra safety.
3911
3912 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3913
3914         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3915         the text of a cell to the old pointer value better, by
3916         copying the new text before freeing the old text. Some code
3917         cleanup. (#8079, Karl Nelson)
3918
3919 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3920
3921         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3922         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3923
3924 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3925
3926         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3927         item from a menu, check to see if it matches 
3928         menu->old_active_menu_item, and if so, unref and clear
3929         old_active_menu_item (Patch from Pavel Cisler)
3930
3931         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3932         menu_shell->active_menu_item, if it is the child being
3933         removed. (Patch based on that of Gene Ragan, #50337)
3934
3935 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3936
3937         * gdk/linux-fb/gdkselection-fb.c: 
3938         * gdk/linux-fb/gdkcolor-fb.c: 
3939         * gdk/linux-fb/gdkdrawable-fb2.c: 
3940         * gdk/linux-fb/gdkfont-fb.c: 
3941         * gdk/linux-fb/gdkim-fb.c: 
3942         * gdk/linux-fb/gdkinput.c: 
3943         * gdk/linux-fb/gdkkeyboard-fb.c: 
3944         * gdk/linux-fb/gdkmain-fb.c: 
3945         * gdk/linux-fb/gdkrender-fb.c: 
3946         A bunch of whitespace cleanup.
3947         
3948 2001-01-30  Havoc Pennington  <hp@pobox.com>
3949
3950         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3951         #ifdef GTK_ENABLE_BROKEN.
3952
3953         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3954         GTK_ENABLE_BROKEN just before including the broken headers.
3955         
3956         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3957         deprecated types registered.
3958
3959         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3960         we have to test the broken stuff.
3961
3962         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3963         
3964 2001-01-30  Havoc Pennington  <hp@redhat.com>
3965
3966         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3967         here where prev pointer was set to the wrong thing
3968
3969         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3970         (gtk_tree_path_is_descendant): new function
3971
3972         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3973         cached length
3974         (gtk_list_store_get_iter): don't modify iter if we can't get the
3975         path.
3976
3977         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3978         
3979         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3980         GtkTreeDragDest
3981
3982         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3983         was causing segfault
3984
3985         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3986         pointer to NULL
3987
3988         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3989
3990         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3991         on returning FALSE
3992         (gtk_list_store_iter_children): ditto
3993         (gtk_list_store_iter_nth_child): ditto
3994         (gtk_list_store_iter_nth_child): ditto
3995         (gtk_list_store_iter_parent): ditto
3996
3997         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3998         on iter->user_data != NULL instead of silently accepting it.
3999         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
4000         we are returning TRUE.
4001         (gtk_tree_store_iter_children): ditto
4002         (gtk_tree_store_iter_nth_child): ditto
4003         (gtk_tree_store_iter_parent): ditto
4004         (gtk_tree_store_insert): remove handling of parent->user_data ==
4005         NULL, replace with parent == NULL       
4006
4007         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
4008         and a comment explaining things
4009
4010         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
4011         interface support to GtkTreeStore.
4012
4013         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
4014         FALSE if no prev, fix
4015
4016         * gtk/gtktreeview.c (set_source_row): use a row reference
4017         (set_dest_row): use a row reference
4018
4019 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
4020
4021         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
4022         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
4023         (gtk_tree_selection_select_iter): The same as above.
4024
4025 2001-01-26  Havoc Pennington  <hp@redhat.com>
4026
4027         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
4028         which holds a handle to a specific row (particular set of values
4029         in the model, i.e. pointer-identity row).
4030
4031         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
4032         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
4033         Still need to use it for the src/dest row saved on the drag context.
4034
4035 2001-01-26  Havoc Pennington  <hp@redhat.com>
4036
4037         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
4038
4039         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
4040         not offset by TREE_VIEW_HEADER_HEIGHT
4041         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
4042         TREE_VIEW_HEADER_HEIGHT
4043
4044         * configure.in (included_loaders): for me, --with-included-loaders
4045         generates the error "the specified loader yes does not exist",
4046         i.e. the arg defaults to "yes", so change test for value ""
4047         to test for value "yes", and include all loaders in that case.
4048
4049         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
4050
4051         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
4052         handle TREE_VIEW_VERTICAL_SEPARATOR
4053         (gtk_tree_view_bin_expose): fix to consider the row offset as
4054         pointing halfway into vertical separator.       
4055         (gtk_tree_view_draw_node_focus_rect): ditto
4056
4057         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
4058         --gtk-debug=updates, which causes gdk_window_set_debug_updates
4059         (TRUE) to be called.
4060
4061         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
4062         debug mode where the invalid region is colored in on invalidate,
4063         so you can see the flicker and know whether your redraw code is 
4064         doing a good job.
4065
4066         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
4067         tree window coordinates (clip rect is in tree window coords)
4068
4069         * gtk/Makefile.am: add gtktreednd.[hc]
4070
4071         * gtk/gtkliststore.c: implement gtktreednd interfaces.
4072
4073         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
4074         drag-and-drop data operations on a model (so we can set up tree
4075         drag-and-drop automatically)
4076
4077         * gtk/testgtk.c: Add a window to change sensitivity in the
4078         GtkLabel test; add a way to change the entry frame in GtkEntry
4079         test
4080
4081         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
4082         (gtk_entry_get_has_frame): new functions to remove the frame
4083         around an entry
4084         (gtk_entry_size_request): shrink requisition if no frame
4085         (gtk_entry_draw_focus): don't draw frame if no frame
4086
4087         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
4088         checks inside a cell renderer
4089         (gtk_default_draw_option): ditto for options
4090
4091         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
4092         children from the alignment, not the button
4093         (gtk_tree_view_column_init): ref/sink the column, to emulate
4094         GObject refcounting.
4095
4096         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
4097         
4098         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4099         Use theme functions to draw the toggles 
4100
4101         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
4102
4103         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
4104         GdkPangoAttrEmbossed to use in rendering insensitive text
4105
4106         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4107
4108         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4109         using new GDK features
4110         
4111 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4112
4113         * gtk/gtkimage.c:
4114         Splitted gtk_image_clear into gtk_image_clear() and
4115         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4116         to avoid leaks.
4117
4118         * gtk/gtklabel.c (set_markup):
4119         Don't leak text.
4120
4121         * gtk/gtktextlayout.c:
4122         Always free display->shaped_objects.
4123
4124         * gtk/testgtk.c (create_clist):
4125         Don't leak custom style.
4126
4127 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4128
4129         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4130         Don't leak image. Simplify using gdk_colormap_query_color().
4131         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4132
4133         * linux-fb/gdkcolor-fb.c:
4134         Implemented gdk_colormap_query_color.
4135
4136 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4137
4138         * linux-fb/gdkcursor-fb.c:
4139         Don't leak built-in cursors.
4140
4141         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4142         Don't leak tmp_points.
4143
4144         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4145         Don't modify desc. Don't leak font if the PangoFont
4146         isn't found.
4147         
4148         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4149         Free dash_list.
4150
4151         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4152         Don't leak string.
4153         
4154 2001-01-20  Havoc Pennington  <hp@pobox.com>
4155
4156         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4157         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4158         me, matches Pango
4159
4160 2001-01-22  Havoc Pennington  <hp@redhat.com>
4161
4162         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4163
4164         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4165
4166         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4167         Remove, move back to gdk-pixbuf
4168
4169         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4170         to all the word functions
4171
4172         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4173         before doing anything on NULL layout or if we don't have the focus
4174
4175         * gtk/testtext.c (fill_example_buffer): "justification"
4176
4177         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4178         to be called "justification" not "justify"
4179
4180         * demos/gtk-demo/textview.c (create_tags): "justification"
4181         
4182         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4183
4184 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4185
4186         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4187         Don't leak visible_region. Use visible_region instead of region.
4188         
4189         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4190         Don't do extra gdk_drawable_ref(). This is not X.
4191         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4192         gdk_fb_focused_window is ref:ed.
4193         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4194         windows.
4195
4196 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4197
4198         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4199         Don't leak the PangoFontDescriptor.
4200
4201 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4202
4203         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4204         when not realized.
4205         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4206         (gtk_tree_view_realize): add scroll_to support
4207         (gtk_tree_view_finalize): add a finalize method.  Populate.
4208         (gtk_tree_view_insert_column): ref and sink the column.
4209         (gtk_tree_view_append_column): ref and sink the column.
4210         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4211         individual nodes.  Should make the code much more efficient, if
4212         actually used.
4213
4214 2001-01-19  Havoc Pennington  <hp@redhat.com>
4215
4216         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4217         byte_offset variable was being used to mean both "offset into
4218         layout" and "offset into buffer line" which was no longer true
4219         with addition of preedit string; fix
4220
4221 2001-01-19  Havoc Pennington  <hp@redhat.com>
4222
4223         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4224
4225         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4226         function
4227
4228         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4229         implement
4230
4231         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4232         scroll_to_cell, matches TextView scroll functions better
4233         (gtk_tree_view_tree_to_widget_coords): new function
4234         (gtk_tree_view_widget_to_tree_coords): new function
4235         (gtk_tree_view_get_visible_rect): new function
4236         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4237         (gtk_tree_view_draw_node_focus_rect): new function moved from
4238         draw_focus, also, use width of bin_window as width of the focus
4239         rect
4240         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4241         already-expanded rows
4242         (gtk_tree_view_get_cell_rect): new function
4243         (gtk_tree_view_get_path_at_pos): return the click position
4244         relative to the passed-in cell
4245         (gtk_tree_view_set_expander_column): new function
4246
4247         * configure.in: remove gtk-config-2.0 chmod
4248
4249         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4250         and properly handle drags with targets we don't understand
4251         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4252         scrolling anyway
4253         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4254         mark invisible
4255
4256         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4257         function
4258         (gtk_drag_dest_get_target_list): new function
4259         (gtk_drag_dest_set_target_list): new function
4260         
4261         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4262
4263         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4264         related to drag-and-drop
4265
4266 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4267
4268         * gdk/linux-fb/gdkprivate-fb.h:
4269         Define EMULATE_GDKFONT.
4270         Add extra pango_font stuff to GfkFontPrivate.
4271         
4272         * gdk/linux-fb/gdkdrawable-fb2.c:
4273         * gdk/linux-fb/gdkfont-fb.c:
4274         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4275         emulation using PangoFont.
4276
4277 2001-01-17  Havoc Pennington  <hp@pobox.com>
4278
4279         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4280         all the non-deprecated set_foo functions. Added missing object
4281         properties, and added g_object_notify() to setters. 
4282         Wrote docs.
4283         
4284 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4285
4286         * gtk/gtkmain.c
4287         * gtk/gtkrc.c: (Win32) Use the new
4288         g_win32_get_package_installation_(sub)directory() functions.
4289
4290         * config.h.win32.in: New file.
4291         
4292         * config.h.win32: Removed.
4293
4294         * configure.in: Output config.h.win32.
4295
4296         * Makefile.am: Add it to EXTRA_DIST.
4297
4298         * gtk/gtk.def: Update.
4299
4300 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4301
4302         * gtk/gtklabel.c (gtk_label_size_request): Set the
4303         attributes onto the PangoLayout even if they are newly
4304         created from label->pattern.
4305
4306 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4307
4308         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4309
4310         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4311         structures in functions. Fixes bug where gtk_dataset_*
4312         was accidentally still being used in one place, causing
4313         every dest side event to be treated independently.
4314
4315         * gtk/gtkdnd.c: Remove last vestages of handling
4316         ::draw (fixes warning)
4317         
4318         * gtk/gtkentry.[ch]: Add drag and drop support.
4319
4320         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4321         new function gtk_check_drag_threshhold() for checking
4322         to check if (dx,dy) has exceeded the threshhold for starting
4323         a drag and use it everywhere.
4324
4325 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4326
4327         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4328         add -I{includedir}/gtk-2.0.
4329
4330         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4331         gdk/gdk-pixbuf.h: Doc fixups.
4332         
4333         * gtk/gtkobject.h: Remove trailing , from enum
4334
4335 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4336
4337         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4338         Doh! Mixed up x and y.
4339
4340         * gdk/linux-fb/gdkglobals-fb.c:
4341         Removed gdk_fb_pointer_grab_window_events,
4342         added _gdk_fb_pointer_grab_owner_events and
4343         _gdk_fb_keyboard_grab_owner_events.
4344
4345         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4346         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4347         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4348         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4349         Send crossing events after ungrab finished.
4350         (gdk_keyboard_grab): Set ..._owner_events
4351         (type_masks): Move out of function.
4352         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4353         gdk_fb_keyboard_event_window): New functions, return the
4354         window an event should be targeted at. Handles grabs and
4355         event propagation. Can return NULL.
4356         (gdk_event_make): Remove event_mask checking. Now always
4357         returns an event.
4358                 
4359         * gdk/linux-fb/gdkkeyboard-fb.c:
4360         * gdk/linux-fb/gdkproperty-fb.c:
4361         * gdk/linux-fb/gdkselection-fb.c:
4362         Use new event_window/gdk_event_make() behaviour.
4363         
4364         * gdk/linux-fb/gdkmouse-fb.c:
4365         Use new event_window/gdk_event_make() behaviour.
4366         Only send motion events if in the same window.
4367         If grabbed, use cursor from window if sibling of grabbed
4368         window, and cursor from grabbed window otherwise.
4369
4370         * gdk/linux-fb/gdkprivate-fb.h:
4371         Update gdk_fb_window_send_crossing_events, gdk_event_make
4372         and grab varaible declarations. Add gdk_fb_*_event_window().
4373
4374         * gdk/linux-fb/gdkwindow-fb.c:
4375         Use new event_window/gdk_event_make() behaviour.
4376         Keep correct track of focus window.
4377         (gdk_window_set_events): Set all specific button motion masks
4378         if GDK_BUTTON_MOTION_MASK set.
4379
4380         * gtk/gtkdnd.c (gtk_drag_update):
4381         Free info->last_event if gdk_drag_motion returned FALSE.
4382
4383 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4384
4385         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4386         Eliminate redraws when input-only windows are shown or
4387         hidden. Thanks to jpe@archaeopteryx.com.
4388
4389 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4390
4391         * docs/faq/gtk-faq.sgml: FAQ update:
4392           - Update to bugzilla
4393           - Add GTK+ and security/SUID/SGID
4394           - Add DnD question
4395
4396 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4397
4398         * gdk/linux-fb/gdkdnd-fb.c:
4399         Some cleanups.
4400         
4401 2001-01-15  Havoc Pennington  <hp@pobox.com>
4402
4403         * tests/testtreeview.c: add test stuff for CellRendererToggle
4404
4405         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4406         accessor
4407
4408         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4409         only toggle on button press (would do release like GtkButton, but
4410         we'd need implicit grab code for treeview cells)
4411
4412 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4413
4414         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4415
4416         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4417         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4418
4419         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4420         to g_{locale,filename}_{to,from}_utf8 to match current API.
4421
4422         * gtk/makefile.msc.in (gtk_OBJECTS)
4423         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4424
4425         * gtk/gtk.def: Update.
4426
4427 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4428
4429         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4430         implementaion that more closely mimics the events that an X server
4431         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4432         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4433         with nested preview widgets, for instance, more responsive when
4434         you move the mouse quickly into them.
4435         (find_window_for_pointer_event): Make it actually compile.
4436         (gdk_event_translate): Set send_event to the value of
4437         InSendMessage (). This doesn't really mean the same as X11's
4438         send_event flag, but is close enough, says jpe@archaeopteryx.com
4439
4440 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4441
4442         * gdk/linux-fb/gdkdnd-fb.c:
4443         Implemented drag and drop.
4444         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4445         when it tries to free and then copy the same event (info->last_event).
4446         I am not sure about why this happens, but will continue looking.
4447
4448 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4449
4450         * gdk/linux-fb/gdkwindow-fb.c:
4451         Use gdk_window_invalidate_rect instead of
4452         gdk_window_invalidate_rect_clear to minimise flashing.
4453         When hiding windows you need to clear the root window though.
4454
4455 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4456
4457         * gdk/linux-fb/gdkdrawable-fb2.c:
4458         For optization, add an full_shapes argument to gdk_fb_clip_region.
4459         If this is false, only the cliprects of the shapes are used.
4460
4461         * gdk/linux-fb/gdkprivate-fb.h:
4462         Export gdk_fb_window_peek_shape.
4463         Add full_shapes to gdk_fb_clip_region.
4464
4465         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4466         When moving a window, don't clear everything under the it, just the
4467         root window. Makes stuff faster and flash less.
4468         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4469         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4470         offset of the shape.
4471         
4472
4473 2001-01-12  Havoc Pennington  <hp@redhat.com>
4474
4475         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4476         current invalid region, fixes redraw bug while scrolling the 
4477         text widget
4478
4479         * gtk/gtktextview.c, gtk/gtktextview.h:
4480         Rearrange the scrolling/validation/etc. code in a major way, 
4481         so it seems to make sense to me. Probably isn't genuinely that
4482         much better, but...
4483
4484         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4485         notifies
4486
4487         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4488
4489 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4490
4491         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4492         Hide mouse pointer while rotation. Show it afterwards.
4493
4494 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4495
4496         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4497         windows in consideration when generating clip region.
4498
4499         * gdk/linux-fb/gdkfb.h:
4500         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4501
4502         * gdk/linux-fb/gdkprivate-fb.h:
4503         Add shape to GdkWindowFBDatat.
4504         exported gdk_fb_window_get_abs_shape().
4505         removed gdk_fb_draw_lines declaration.
4506
4507         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4508         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4509         send focus changes when there is a grabbed window.
4510         (gdk_window_get_pointer): Handle shaped windows.
4511         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4512         (gdk_fb_window_peek_shape): Returns the shape for a window,
4513         handles GDK_FB_USE_CHILD_SHAPE.
4514         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4515         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4516         (gdk_window_shape_combine_mask): Implement.
4517
4518         * gtk/gtkwindow-decorate.c:
4519         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4520         setting the shape of a window makes the window transparent.
4521
4522 2001-01-11  Havoc Pennington  <hp@redhat.com>
4523
4524         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4525
4526 2001-01-10  Havoc Pennington  <hp@redhat.com>
4527
4528         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4529         add this function, bug 40251
4530
4531         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4532         of type macro   
4533
4534 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4535
4536         * acconfig.h:
4537         Added ENABLE_SHADOW_FB
4538
4539         * configure.in:
4540         Added --disable-shadowfb
4541
4542         * gdk/linux-fb/gdkcursor-fb.c:
4543         Update shadowfb when updating cursor
4544
4545         * gdk/linux-fb/gdkdrawable-fb2.c:
4546         Added wrappers for shadowfb that calls  the normal drawable
4547         methods, but calls gdk_shadow_fb_update(bounding box) when
4548         GdkWindows are drawed to.
4549         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4550         which also returns the bounding box.
4551
4552         * gdk/linux-fb/gdkfb.h:
4553         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4554
4555         * gdk/linux-fb/gdkgeometry-fb.c:
4556         Update shadowfb when scrolling window.
4557
4558         * gdk/linux-fb/gdkglobals-fb.c:
4559         Add _gdk_fb_screen_angle.
4560         
4561         * gdk/linux-fb/gdkkeyboard-fb.c:
4562         Test code for screen rotation. Shift-F2 in the xlate driver
4563         rotates the screen.
4564
4565         * gdk/linux-fb/gdkmain-fb.c:
4566         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4567
4568         * gdk/linux-fb/gdkmouse-fb.c:
4569         Use fb_width/height instead of modeinfo.xres/yres.
4570
4571         * gdk/linux-fb/gdkprivate-fb.h:
4572         Added fb_men, fb_width, fb_height & fb_stride. When using
4573         shadow fb these can differ from the framebuffer stuff.
4574         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4575         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4576         _gdk_fb_screen_angle. Removed CM, RP.
4577
4578         * gdk/linux-fb/gdkrender-fb.c:
4579         Added code for shadowfb handling and screen rotation using
4580         shadowfb.
4581
4582         * gdk/linux-fb/gdkwindow-fb.c:
4583         Use fb_mem, fb_stride, fb_width, fb_height.
4584         Added recompute_rowstride to reset the rowstride of all windows.
4585         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4586         window abs positions and window rowstrides. Usefull when the
4587         rotation has changed.
4588
4589 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4590
4591         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4592
4593 2001-01-10  Havoc Pennington  <hp@redhat.com>
4594
4595         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4596         where sibling == iter
4597         (gtk_tree_store_insert_after): handle sibling == iter
4598         (gtk_tree_store_prepend): remove stamp checks
4599         (gtk_tree_store_insert_before): ditto
4600         (gtk_tree_store_append): ditto
4601         (gtk_tree_store_get_path): ditto
4602         (gtk_tree_store_get_value): ditto
4603         (gtk_tree_store_iter_has_child): ditto
4604         (gtk_tree_store_iter_n_children): ditto
4605         (gtk_tree_store_iter_nth_child): ditto
4606         (gtk_tree_store_insert_after): ditto
4607         (gtk_tree_store_is_ancestor): ditto
4608         (gtk_tree_store_iter_depth): ditto
4609         (gtk_tree_store_insert_before): assert that sibling's parent is
4610         the same as the passed-in parent
4611         (gtk_tree_store_insert_after): assert that sibling's parent is
4612         the same as the passed-in parent
4613
4614         
4615         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4616         function to get the first iterator in a model
4617         
4618         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4619         conventionally the "root" in this sense is just NULL afaict.
4620
4621         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4622         where sibling == iter
4623         (gtk_list_store_insert_after): handle case where sibling == iter
4624
4625         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4626         automated tests for ListStore, TreeStore
4627
4628         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4629         (gtk_list_store_insert): update tail pointer, and fix it to work
4630         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4631         (gtk_list_store_append): use tail to be faster
4632         (gtk_list_store_prepend): fix it, update tail pointer
4633         (gtk_list_store_insert_after): fix it, update tail pointer
4634
4635         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4636         the list
4637
4638 2001-01-09  Havoc Pennington  <hp@redhat.com>
4639
4640         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4641         is NULL due to a pending resize
4642
4643         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4644         column width to values less than 1
4645
4646         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4647         width to be between min/max width, and still set the width 
4648         even if autosize is turned on, so the tree view can use this 
4649         function in order to autosize.
4650         (gtk_tree_view_column_init): set initial width to 1 not 0
4651
4652         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4653         setter function to modify column width, so we get notification
4654         (gtk_tree_view_insert_iter_height): ditto
4655         (gtk_tree_view_calc_size): ditto
4656         (gtk_tree_view_check_dirty): ditto
4657
4658         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4659         properties to change all the interesting attributes of the tree
4660         view column.
4661         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4662         (gtk_tree_view_column_get_clickable): add
4663         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4664         attributes; assume a cell renderer with equivalent object
4665         properties has been swapped in. Do g_object_notify().
4666         (gtk_tree_view_column_set_visible): g_object_notify
4667         (gtk_tree_view_column_get_sizing): rename from get_col_type
4668         (gtk_tree_view_column_set_sizing): g_object_notify
4669         (gtk_tree_view_column_set_width): add g_object_notify
4670         (gtk_tree_view_column_set_min_width): ditto
4671         (gtk_tree_view_column_set_max_width): ditto
4672         (gtk_tree_view_column_set_title): ditto
4673         (gtk_tree_view_column_set_clickable): ditto
4674         (gtk_tree_view_column_set_widget): ditto
4675         (gtk_tree_view_column_set_justification): ditto
4676
4677 2001-01-09  Havoc Pennington  <hp@redhat.com>
4678
4679         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4680         there are no rows in the model
4681
4682         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4683         NULL, then return the start of the list
4684
4685         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4686         if we can't get any rows from an empty model 
4687
4688         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4689         extraneous * after function pointer typedef usage
4690
4691         * Makefile.am: don't specify full path to cp and rm
4692
4693         * gtk/gtkcellrenderertextpixbuf.c
4694         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4695         NULL before dereferencing, fixes a segfault that happened from
4696         time to time
4697
4698         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4699         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4700         and reindent the function
4701         (gtk_cell_renderer_pixbuf_get_size): indentation
4702
4703         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4704         we quit it
4705         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4706         (gtk_dialog_set_default_response): New function, to set default
4707         button
4708         (gtk_dialog_set_response_sensitive): New function, to set 
4709         sensitivity of buttons
4710
4711         * gtk/gtkcellrendererpixbuf.c
4712         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4713         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4714
4715         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4716         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4717         also boxed types.
4718         (_gtk_tree_data_list_value_to_node): ditto
4719
4720         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4721         --gtk-debug=tree
4722
4723         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4724
4725         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4726
4727 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4728
4729         * gdk/win32/gdkevents-win32.c: Implement better mouse
4730         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4731         (find_window_for_pointer_event): New function.
4732         (gdk_event_translate): Use it when handling mouse events.
4733
4734 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4735
4736         * configure.in:
4737         Added --with-included-loaders option
4738
4739         * gdk-pixbuf/Makefile.am:
4740         * gdk-pixbuf/gdk-pixbuf-io.c:
4741         Add support for including selected gdk-pixbuf loaders only.
4742
4743         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4744         gtk_window_set_has_frame):
4745         Added inline documentation.
4746
4747         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4748         * docs/reference/gdk/tmpl/windows.sgml:
4749         Added inline documentation.
4750
4751 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4752
4753         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4754         realizing buttons that have already been realized.
4755
4756 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4757
4758         * tests/testtreeview.c (main): Show menu items before adding to
4759         option menu.
4760
4761         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4762         around if we kill them.
4763
4764         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4765         Return if we pass in a NULL model.
4766
4767 2001-01-08  Havoc Pennington  <hp@redhat.com>
4768
4769         * tests/testtreeview.c: hack on this some
4770
4771         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4772         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4773         list
4774         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4775
4776         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4777         functions
4778
4779 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4780
4781         * gtk/gtkwindow-decorate.[hc]:
4782         * gtk/Makefile.am:
4783         New files. Contains an implementation of a minimal WM for
4784         linux-fb.
4785
4786         * gtk/gtkwindow.h:
4787         Add the possibility for GtkWindows to specify a frame. This
4788         is used for the window decoration code, but could concievably
4789         be used for X programs too (xmms style windows).
4790         GtkWindow->frame is the toplevel window if the window is framed.
4791         The signal frame_event gets all events that are targeted to
4792         GtkWindow->frame.
4793         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4794         
4795         * gtk/gtkwindow.c:
4796         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4797         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4798
4799 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4800
4801         * docs/README.linux-fb:
4802         Correct filename ~/.pangoft2_aliases
4803
4804         * gdk/gdkwindow.h:
4805         Added new function gdk_window_get_decorations.
4806
4807         * gdk/linux-fb/gdkfb.h:
4808         Removed _gdk_window_get_decorations declaration.
4809         Renamed _gdk_window_set_child_handler to
4810         gdk_fb_window_set_child_handler.
4811
4812         * gdk/linux-fb/gdkwindow-fb.c:
4813         Renamed _gdk_window_set_child_handler to
4814         gdk_fb_window_set_child_handler.
4815
4816         * gdk/x11/gdkwindow-x11.c:
4817         New function gdk_window_get_mwm_hints().
4818         Implemented gdk_window_get_decorations.
4819
4820         * docs/reference/gdk/tmpl/windows.sgml:
4821         * docs/reference/gdk/gdk-sections.txt:
4822         Added gdk_window_get_decorations docs.
4823         
4824 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4825
4826         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4827         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4828         gdk_fb_window_send_crossing_events):
4829         Possibly send focus events when the mouse moves from one
4830         window to another.
4831
4832 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4833
4834         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4835         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4836         to match current API.
4837
4838         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4839         environment variable is set, don't call g_error when on a
4840         palettized (PseudoColor) display. Some people want to use GTK+ 
4841         in 256-colour mode even though works only partially.
4842
4843         * gdk/gdk.def
4844         * gtk/gtk.def
4845         * gtk/makefile.mingw.in: Update.
4846
4847 2001-01-05  Havoc Pennington  <hp@redhat.com>
4848
4849         * tests/testtreeview.c: hack on this a bit
4850
4851         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4852         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4853
4854         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4855         was spelled incorrectly
4856         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4857
4858         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4859         from gtk_tree_view_set_headers_active   
4860
4861         * gtk/gtktexttag.c:
4862         (gtk_text_tag_get_property): handle PROP_DIRECTION
4863         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4864         properties, bug 40235
4865
4866         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4867         forward_to_line_end
4868
4869 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4870
4871         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4872         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4873         for unicode,locale,filename conversion functions.
4874
4875 2001-01-05  Havoc Pennington  <hp@redhat.com>
4876
4877         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4878         broken if called on the first position in the buffer.
4879
4880         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4881         forward_to_delimiters to be called only if we aren't already at
4882         the delimiters.
4883
4884 2001-01-05  Havoc Pennington  <hp@redhat.com>
4885
4886         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4887
4888 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4889
4890         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4891         colormap in here. Sync from X port.
4892         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4893         Sync from X port.
4894         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4895         This happens now and then, and i don't think it is a bug.
4896         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4897         != endpoint.
4898         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4899         GDK_LINE_SOLID.
4900
4901         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4902         some of the fields filled in at least.
4903
4904         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4905         miLineArcD is no more, remove it from the function definition.
4906
4907 2001-01-04  Havoc Pennington  <hp@redhat.com>
4908
4909         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4910         this
4911
4912         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4913         user_data instead of tree_node
4914
4915         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4916         TREE_VIEW_COLUMN_SIZE
4917
4918         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4919         "size" field to "width" finishes bug 40061
4920
4921         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4922         for bitfields, bug 40268
4923
4924 2001-01-04  Havoc Pennington  <hp@redhat.com>
4925
4926         Rename some stuff:
4927         
4928         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4929
4930         s/GtkModelSimple/GtkTreeModelSimple/g;
4931         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4932         s/gtk_model_simple/gtk_tree_model_simple/g;
4933         s/gtkmodelsimple/gtktreemodelsimple/g;
4934
4935         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4936
4937         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4938         s/column_set_col_type/column_set_sizing/g;
4939
4940         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4941         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4942
4943         s/GtkCellRendererType/GtkCellRendererState/g;
4944         
4945         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4946         (gtk_cell_renderer_toggle_class_init): change "state" property to
4947         "active", to match GtkToggleButton
4948         (gtk_cell_renderer_toggle_get_active): new function, bug
4949         40269
4950         (gtk_cell_renderer_toggle_set_active): new function
4951         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4952         state through gtk_cell_renderer_set_active
4953
4954 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4955
4956         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4957         temporarily until they work again.  Brought up to date with
4958         changes in the model.
4959         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4960         model.
4961
4962 2001-01-04  Havoc Pennington  <hp@redhat.com>
4963
4964         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4965         equal to the line length, then position iterator before paragraph 
4966         separators. Fixes crash reported by Mikael Hermansson when
4967         pressing left arrow from the start of a line.   
4968
4969         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4970         about byte indexes off the end
4971         (iter_set_from_char_offset): add g_error about char offsets
4972         off the end
4973
4974 2001-01-03  Havoc Pennington  <hp@redhat.com>
4975
4976         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4977
4978         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4979         of private functions; remove inclusion of private headers.
4980
4981         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4982         function, so we don't need private functions in gtktextdisplay.c
4983
4984         * gtk/gtktextiterprivate.h: underscore-ification
4985
4986         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4987         to instead say "only useful to implement widgets"
4988
4989         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4990         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4991         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4992
4993         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4994         This function was completely broken
4995
4996         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4997
4998         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4999
5000         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
5001
5002         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
5003
5004         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
5005
5006         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
5007
5008         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
5009         gtk_paint_layout
5010
5011         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
5012         gtk_paint_layout
5013
5014         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
5015         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
5016         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
5017         which were not implemented.     
5018
5019         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
5020         insert_pixbuf signal. Rename delete_text to delete_range since it
5021         also deletes pixbufs and child anchors. This almost closes bug
5022         40245 (still need to deal with child anchors)
5023
5024         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
5025         insert_pixbuf, change signal names as appropriate, change types of
5026         signals taking marks/tags to have the specific type, not just
5027         G_TYPE_OBJECT
5028         
5029         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
5030         closes bug 40051
5031
5032         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
5033         unnecessary remove_contents() call
5034         (gtk_option_menu_class_init): add a "changed" signal, closes
5035         bug 40039
5036         (gtk_option_menu_update_contents): emit "changed" if the 
5037         active menu item changes
5038
5039         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
5040         cast to GtkObject, reported by Jonas Borgstrom
5041         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
5042         we can't do stuff with side effects in finalize. Instead, spew a
5043         warning if the loader isn't closed.
5044
5045         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
5046         colormap in here, non-X ports probably need to sync to this change
5047
5048         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
5049         assertion that colormap != NULL, you can set the colormap to NULL
5050         if you like.
5051         
5052         * Makefile.am: remove gtk-config-2.0
5053
5054         * configure.in: Use pkg-config to locate GLib. Remove
5055         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
5056         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
5057         Use pkg-config to locate Pango. Output correct Pango libs to
5058         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
5059
5060         * Makefile.am (pkgconfig_DATA): install only target-specific pc
5061         files
5062         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
5063         X11 pc files
5064
5065         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
5066         unref from here
5067
5068 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
5069
5070         * configure.in:
5071         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
5072
5073 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
5074
5075         * gtk/gtktextlayout.c
5076         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
5077         variable when moving back onto a single line.
5078
5079 2001-01-01  Havoc Pennington  <hp@redhat.com>
5080
5081         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5082
5083         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
5084
5085         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
5086         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
5087
5088 2001-01-01  Havoc Pennington  <hp@redhat.com>
5089
5090         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
5091
5092         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
5093         GtkTextAttributes
5094
5095         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
5096         #40246
5097         (gtk_text_attributes_copy_values): rename from 
5098         gtk_text_attributes_copy
5099         (gtk_text_attributes_copy): a more standard GTK copy function, 
5100         which returns a new object
5101
5102 2001-01-01  Havoc Pennington  <hp@redhat.com>
5103
5104         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5105         
5106         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5107         don't fill in tree_view->priv->selection, kind of an unexpected
5108         side effect
5109
5110         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5111         gtkintl.h
5112         
5113         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5114         gtkintl.h
5115         (gtk_cell_renderer_get_property): remove calls to g_value_init
5116
5117         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5118         gtkintl.h
5119
5120         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5121         and include gtkintl.h
5122         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5123         property names
5124
5125         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5126         GtkTreeSelection
5127         (_gtk_tree_selection_new_from_with_view): rename, return
5128         GtkTreeSelection
5129         (_gtk_tree_selection_set_tree_view): rename with uscore
5130         (gtk_tree_selection_get_selected): fill in the "model" out param
5131         first, so it gets filled in even if we return at the top of the 
5132         function
5133         (gtk_tree_selection_real_select_all): add a comment and an else{}
5134         to clarify this a bit
5135         (gtk_tree_selection_real_unselect_all): add the same else{}
5136
5137         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5138         set_tree_view to have underscore prefixes, move them to the
5139         private header, fix return type of new_with_tree_view
5140         (struct _GtkTreeSelection): mark struct
5141         fields private  
5142
5143         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5144         GtkTreeModelFlags, not a guint
5145         (gtk_tree_path_prev): return gboolean not gint
5146         (gtk_tree_path_up): return gboolean not gint
5147
5148         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5149         return GtkTreeModelFlags, not a guint
5150
5151         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5152         that child model is non-null before unrefing it
5153         (g_value_int_compare_func): make this a qsort compare func, not 
5154         a boolean predicate
5155
5156         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5157         (add -umn to the end), and mark it unimplemented
5158         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5159         I don't see what it's for - doesn't the model always sort itself?
5160         (gtk_tree_model_sort_set_compare): this had the wrong signature
5161
5162         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5163         Fix the docs to say that it destructively replaces existing
5164         attributes (previously said that it added attributes).
5165         (gtk_tree_view_column_set_visible): canonicalize bool before
5166         equality testing. Also, check for realization before
5167         hiding/showing the tree_column->window; if this window could exist
5168         before realization, then it's busted and needs fixing, we can't 
5169         create GDK resources pre-realization. Also, remove
5170         superfluous queue_resize(), since set_size() does that for us.
5171         (gtk_tree_view_column_set_col_type): check realization before 
5172         using tree_column->window
5173
5174         * gtk/gtktreedatalist.c: fix filename in copyright notice
5175
5176 2000-12-31  Havoc Pennington  <hp@pobox.com>
5177
5178         * gtk/gtktextview.c: Rearrange all the
5179         scroll-while-dragging-or-selecting code to be different, not
5180         necessarily better. ;-)
5181         (gtk_text_view_scroll_to_mark): Change this
5182         function to take within_margin as a fraction instead of a pixel
5183         value, and to take alignment arguments (indicating where to align 
5184         the mark inside the visible area)
5185         
5186         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5187         to GtkObject
5188
5189         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5190         behavior so that offsets past the end of the line are not 
5191         allowed, and an offset equal to the line length moves the iterator
5192         to the next line
5193         (gtk_text_iter_set_line_index): make parallel change
5194         (gtk_text_iter_get_bytes_in_line): add this function
5195         
5196         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5197         of byte indexes off the end of the line; byte index at the end of
5198         the line now returns FALSE and doesn't fill in the requested
5199         values, byte index past the end of the line is an error.  Also,
5200         don't allow -1 offset anymore, since its meaning is unclear.
5201
5202         This change exposes some bug in visual cursor motion, where we
5203         end up with a huge invalid byte index; needs fixing. Symptom of 
5204         bug is a crash when you hit up arrow.
5205         
5206         (_gtk_text_line_char_locate): match the change to byte_locate
5207
5208         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5209         from start of line properly. fixes bug reported by Mikael
5210         Hermansson where backspace would delete all text before the
5211         cursor.
5212
5213 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5214
5215         * gdk/win32/gdkwindow-win32.c
5216         (gdk_window_impl_win32_get_visible_region): New function, as in
5217         the X11 backend.
5218         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5219         instead of duplicating the same code here.
5220
5221         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5222         GDK_COLORMAP macro.
5223
5224         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5225         destroy function.
5226         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5227         access that.
5228
5229         * gtk/gtk.def: Update.
5230
5231         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5232
5233 2000-12-30  Havoc Pennington  <hp@pobox.com>
5234
5235         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5236         colormap on input only windows, to avoid special cases all over
5237         the code for these windows.
5238
5239 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5240
5241         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5242         we are on a palettized display ("PseudoColor" in X11), as the code
5243         for that doesn't work anyway, and never has.
5244
5245 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5246
5247         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5248         Don't use isprint() for chars > 255.
5249
5250 2000-12-21  Havoc Pennington  <hp@redhat.com>
5251
5252         * tests/testtreeview.c: more work
5253
5254 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5255
5256         * docs/README.linux-fb:
5257         Update the docs to the new pangoft2 way.
5258
5259 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5260
5261         * configure.in:
5262         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5263         pango version.
5264         Remove modules/linux-fb/Makefile.
5265
5266         * gdk/linux-fb/gdkdrawable-fb2.c:
5267         Render glyphs using freetype.
5268
5269         * gdk/linux-fb/gdkfb.h:
5270         Add new fb-specific functions needed for managing windows.
5271
5272         * gdk/linux-fb/gdkmain-fb.c:
5273         Remove gdk_font_init/fini() calls.
5274
5275         * gdk/linux-fb/gdkpango-fb.c:
5276         Remove old implementation. Use pangoft2 instead.
5277
5278         * gdk/linux-fb/gdkprivate-fb.h:
5279         Remove PangoFBFont and related stuff.
5280
5281         * gdk/linux-fb/gdkwindow-fb.c:
5282         Implement drawable->get_visible_region.
5283         Implement support for _gdk_window_set_child_handler () and
5284         _gdk_window_get_decorations().
5285
5286         * modules/Makefile.am:
5287         Remove linux-fb subdir.
5288
5289         * modules/linux-fb/*:
5290         Removed all.
5291         
5292 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5293
5294         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5295         calls, as they are no longer needed.
5296
5297         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5298         
5299         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5300         figure out how to emit a signal on an interface.
5301
5302 2000-12-20  Havoc Pennington  <hp@redhat.com>
5303
5304         * tests: new directory to contain tests, gtk/test* should move
5305         here sometime (with appropriate on-cvs-server hackery)
5306
5307         * tests/testtreeview.c, tests/Makefile.am: a test
5308         
5309         * configure.in (AC_OUTPUT): add tests/Makefile
5310
5311         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5312         and "invisible_set" which were missing
5313
5314         * gtk/gtkrbtree.h: some cheesy indentation fix
5315         
5316 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5317
5318         * gtk/gtkinvisible.c (gtk_invisible_realize):
5319         Attach the style to the window so that the style it is not
5320         leaked when unrealizing the window.
5321
5322 2000-12-18  Havoc Pennington  <hp@redhat.com>
5323
5324         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5325         begin/end user action where appropriate
5326         (gtk_text_view_commit_handler): add begin/end user action
5327
5328         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5329         bracket interactive operations with begin/end user action pair.
5330         
5331         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5332         "interactive" arg from insert_text and delete_text signals.
5333         Add begin_user_action, end_user_action signals
5334         (gtk_text_buffer_begin_user_action): 
5335         (gtk_text_buffer_end_user_action): New functions to delimit 
5336         a user-visible action
5337
5338         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5339         signals.
5340         
5341 2000-12-18  Havoc Pennington  <hp@redhat.com>
5342
5343         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5344         was pretty non-working.
5345
5346         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5347         by passing the length to g_utf8_validate().
5348
5349 2000-12-16  Havoc Pennington  <hp@pobox.com>
5350
5351         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5352         Port to GObject, can go back in gdk-pixbuf after setting up 
5353         a gdk-pixbuf-marshal.h header over there.
5354
5355         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5356         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5357         args
5358         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5359         set
5360         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5361         here, do it when we create the buttons later
5362         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5363         (gtk_tree_view_map): paranoia checks that column->button is shown 
5364         and unmapped
5365         (gtk_tree_view_size_request): only request visible children.
5366         Move header size calculation in here, for cleanliness, and 
5367         to maintain invariants for child widgets if we eventually 
5368         let users set different children inside the buttons
5369         (gtk_tree_view_map_buttons): factor out code to map buttons,
5370         since it was being called several times
5371         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5372         windows instead of just moving them; their height may change 
5373         if we allow random widgets in there, or the theme changes.
5374         (gtk_tree_view_size_allocate): move button size allocation 
5375         above emitting the scroll signals, to ensure a sane state when we
5376         hit user code
5377         (gtk_tree_view_button_release): remove queue_resize after
5378         tree_view_set_size(), set_size() will handle any resize queuing
5379         that's needed
5380         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5381         draw_focus goo
5382         (gtk_tree_view_focus): use gtk_get_current_event() and
5383         gdk_event_get_state()
5384         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5385         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5386         semicolon
5387         (gtk_tree_view_create_button): show the button here
5388         (gtk_tree_view_button_clicked): actually emit the clicked signal
5389         on the column
5390         (_gtk_tree_view_set_size): return right away if the size is
5391         unchanged, as a cheesy optimization
5392         (gtk_tree_view_setup_model): rename set_model_realized to 
5393         setup_model to match the flag that indicates whether we've 
5394         called it
5395         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5396         exist, because set_scroll_adjustment does that and it shouldn't
5397         matter what order you call these in
5398         (gtk_tree_view_get_vadjustment): ditto
5399         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5400         for paranoia
5401         (gtk_tree_view_set_headers_visible): call
5402         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5403         (gtk_tree_view_append_column): clarify whether the return value
5404         is the count of columns before or after, and do the increment 
5405         separately from the return statement so you can tell from the code.
5406         (gtk_tree_view_remove_column): ditto
5407         (gtk_tree_view_insert_column): ditto
5408         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5409         outside the existing range, the docs say that outside-range
5410         columns are allowed, so we handle them as documented. (Presumably
5411         this allows a nice loop with column != NULL as test.)
5412         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5413         mean (left/right/center etc.).
5414         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5415         (gtk_tree_view_expand_row): add docs
5416         (gtk_tree_view_collapse_row): add docs
5417
5418         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5419         function to emit the clicked signal on a column
5420         
5421         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5422         state of an event
5423         (gdk_event_get_time): don't treat GDK_SCROLL 
5424         as a button event, remove default case from switch so gcc 
5425         will whine if we don't explicitly handle all event types
5426
5427         * gtk/gtktreeselection.h: added some FIXME 
5428         
5429         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5430         "columns" to "n_columns" and "column" to "columns" for clarity
5431
5432 2000-12-16  Havoc Pennington  <hp@pobox.com>
5433         
5434         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5435         stuff. This should make e.g. the delete key work again in the
5436         text widget...
5437         (gtk_text_iter_forward_cursor_positions): handle negative count
5438         (gtk_text_iter_backward_cursor_positions): handle negative count
5439         (gtk_text_iter_forward_word_ends): handle negative count
5440         (gtk_text_iter_backward_word_starts): handle negative count
5441
5442         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5443         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5444         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5445         GObject. No doubt will cause breakage.
5446
5447         * demos/gtk-demo/textview.c: remove hacks around
5448         non-GObject-ification of the text objects
5449
5450         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5451         the text tag
5452         
5453 2000-12-14  Havoc Pennington  <hp@pobox.com>
5454
5455         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5456         that we have Xrender
5457
5458 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5459
5460         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5461         Add two virtualized functions gdk_drawable_get_clip_region - to
5462         get the clip region when drawing.
5463         
5464         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5465         use invalidate_region.
5466
5467         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5468         region.
5469
5470         * acconfig.h configure.in: Check for Xft. For now, assume
5471         that if Xft is found, Pango was compiled with Xft support
5472         as well.
5473
5474         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5475         gdk_colormap_query_color().
5476         
5477         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5478         with Xft if appropriate.
5479
5480         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5481         a pangoxft context if we have XFT and the environment
5482         variable GD_USE_XFT is set.
5483         
5484         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5485         and also possibly an XftDraw structure.
5486
5487         * gtk/gtkfontsel.c: Handle the case where the font from the
5488         style doesn't match any of the fonts a bit better.
5489         
5490         * gtk/testgtk.c: Add tabs between directional segments for
5491         hebrew/arabic test. (Not really necessary, just a little
5492         prettier.)
5493
5494 2000-12-14  Havoc Pennington  <hp@redhat.com>
5495
5496         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5497         reading a file
5498
5499 2000-12-14  Havoc Pennington  <hp@redhat.com>
5500
5501         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5502         unused call to get_last_line()
5503
5504         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5505         here until boxed is working (and maybe after that - we should
5506         really not gratuitously break old code)
5507
5508         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5509         specific types for font_desc and tabs args, move them to
5510         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5511         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5512
5513         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5514         use GTK_TYPE_POINTER for signal signatures as a hack-around
5515
5516         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5517         PangoTabArray
5518
5519         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5520         make static
5521         (line_display_index_to_iter): make static
5522
5523         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5524         to marshal a string not a boxed
5525
5526         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5527
5528         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5529         since the UTF-8 isn't validated yet
5530
5531         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5532         lines to end in '\n'
5533         
5534         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5535         forward_to_delimiters, and grapheme boundaries
5536         (gtk_text_view_delete_from_cursor): properly handle non-newline
5537         delimiters, and grapheme boundaries
5538
5539         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5540         to gtk_text_iter_forward_to_delimiters, and make it work properly
5541         if empty lines end with a character other than '\n'
5542
5543         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5544         position
5545
5546 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5547
5548         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5549
5550         * gtk/gtk.def
5551         * gdk/gdk.def: Update.
5552
5553         * gdk/win32/gdkmain-win32.c
5554         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5555         gdkmain-win32.c here.
5556
5557         * gdk/win32/makefile.mingw.in (all): No need to make
5558         gdk-win32res.o here, the makefile one step up will call us to make
5559         it.
5560
5561         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5562         gdkkeys-win32.
5563
5564         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5565
5566         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5567         call to g_source_add().
5568
5569         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5570         leak. Thanks to Andreas Kemnade.
5571
5572 2000-12-13  Havoc Pennington  <hp@pobox.com>
5573
5574         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5575
5576         * gtk/gtktext*.[hc]: update accordingly
5577         
5578 2000-12-13  Havoc Pennington  <hp@pobox.com>
5579
5580         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5581         header file
5582
5583         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5584
5585 2000-12-13  Alex Larsson  <alexl@redhat.com>
5586
5587         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5588         Add support for ps2 intellimouse.
5589
5590         * gdkkeyboard-fb.c:
5591         Move shift-F1 repaint handling to xlate handler only.
5592         
5593         * docs/README.linux-fb:
5594         Add imps2 to docs.
5595         Document the new refresh keys.
5596         
5597 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5598
5599         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5600
5601         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5602         ::position and ::padding.
5603
5604         * gtk/gtkcontainer.c: make ::border_width an INT property.
5605
5606         * gtk/gtkpacker.c: make ::position an INT property.
5607
5608         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5609         guard against NULL h/v scrollbars, since this is used at construction
5610         time.
5611
5612         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5613         internal gtk_clist_constructor().
5614
5615         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5616         gtk_ctree_constructor().
5617
5618         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5619         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5620
5621         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5622         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5623
5624         * gtk/gtkwidget.[hc]:
5625         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5626         and gtk_widget_get().
5627         (gtk_widget_new): use g_object_new_valist().
5628         (gtk_widget_set): use g_object_set_valist().
5629
5630         * gtk/gtkobject.[hc]:
5631         removed gtk_object_arg_get_info(), gtk_object_getv(),
5632         gtk_object_query_args(), gtk_object_newv(),
5633         gtk_object_class_add_signals(),
5634         gtk_object_class_user_signal_new(),
5635         gtk_object_class_user_signal_newv(),
5636         gtk_object_arg_set(), gtk_object_arg_get(),
5637         gtk_object_args_collect(),
5638         gtk_object_default_construct(),
5639         gtk_object_constructed(),
5640         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5641         removed nsignals, signals and n_args members from GtkObjectClass.
5642         (gtk_object_new): use g_object_new_valist().
5643         (gtk_object_set): use g_object_set_valist().
5644         (gtk_object_get): use g_object_get_valist().
5645         
5646         * gtk/gtkcompat.h: define gtk_object_default_construct().
5647         
5648         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5649         g_object_new().
5650
5651         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5652         fucntions, cleaned up method assignments (make sure your structures
5653         are setup properly before calling out). removed all GTK_CONSTRUCTED
5654         hacks ;)
5655
5656 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5657
5658         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5659         off-by-one error in checks. (Dave Lambert)
5660
5661 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5662
5663         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5664         Don't free gdk_fb_keyboard twice.
5665
5666 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5667
5668         * gtk/testgtk.c:
5669         (create_tooltips): 
5670         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5671         use GObject swapped_signal:: properties instead.
5672
5673         * gtk/gtkcellrenderertoggle.c: 
5674         * gtk/gtkcellrenderertextpixbuf.c: 
5675         * gtk/gtkcellrenderertext.c: 
5676         * gtk/gtkcellrendererpixbuf.c: 
5677         * gtk/gtkcellrenderer.c:
5678         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5679         missing warnings for invalid property ids, install properties
5680         with g_object_class_install_property() now.
5681         
5682         * gtk/gtksignal.c:
5683         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5684         
5685 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5686         
5687         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5688         to determine if a window is the focus widget within
5689         its toplevel.
5690
5691         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5692         to be boolean.
5693
5694         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5695         of the case where the container CAN_FOCUS to here instead
5696         of having it in each individual move-the-focus place.
5697
5698         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5699         focusing to be geometric in a much more obvious sense. Arrowing
5700         around is still non-intuitive because it isn't perfect and
5701         because entries, etc, grab the arrow keys, but it at least
5702         usually will do what you expect now.
5703         
5704         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5705         file.
5706
5707         * gtk/gtknotebook.c: Change tabs to be a single item in
5708         the focus chain. Make movement of focus on tabs with arrow
5709         keys wrap around.
5710         
5711         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5712         CHECK_FIND_CHILD macro to give informative error messages
5713         instead of silent returns.
5714
5715         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5716         flag since we handle GdkReturn on the tabs.
5717
5718         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5719         windows rather than sending expose events directly.
5720
5721         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5722         definition for GtkNotebookPage into .c file, since it is private.
5723
5724         * gtk/testgtk.c (create_notebook): Add option for 
5725         testing borderless notebook.
5726
5727         * gtk/testgtk.c (page_switch): Removed egregious poking
5728         around in GTK+ internals.
5729
5730         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5731
5732         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5733         properly through gtk_clist_focus. Make the title headers a
5734         single item in the tab-focus chain, and make left-right wrap
5735         around.
5736
5737         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5738         focus method so that wrapping around works properly.
5739
5740         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5741         that is handled for the widget now. 
5742
5743 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5744
5745         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5746         widgets as TOPLEVEL.
5747
5748         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5749         TOPLEVEL widgets are containers.
5750
5751         * gtk/gtkinvisible.h: Remove useless include.
5752
5753 2000-12-11  Havoc Pennington  <hp@redhat.com>
5754
5755         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5756         Handle chopping off \r\n and 0x2029 in addition to \n before
5757         passing to PangoLayout
5758
5759         * gtk/gtkimcontextsimple.c
5760         (gtk_im_context_simple_get_preedit_string): 
5761         return an empty string if no match is pending
5762
5763         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5764         assertion that the returned preedit string was sane
5765
5766         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5767         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5768         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5769
5770 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5771
5772         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5773         Fix up finalizer to chain to its parent.
5774
5775 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5776
5777         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5778         Clearified the difference between the keyboard types. Wrote a note
5779         about the magic sysrq key to get out of raw mode.
5780
5781 2000-12-09  James Henstridge  <james@daa.com.au>
5782
5783         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5784         member to hold masks for detecting the start of a protocol packet.
5785         (mouse_devs): add packet start masks for ps2 and ms device types.
5786         Left the mask for fidmour blank, as I have no idea what it should
5787         be.
5788         (handle_mouse_io): skip bytes until we get to the start of a
5789         packet.  My Logitech mouse seems to be passing an extra NULL pad
5790         byte, and GPM does a similar thing here.
5791         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5792         this is the ms mouse driver.
5793         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5794         completely broken except for button1.  It was checking the wrong
5795         bit in the packet for the status of the right mouse button, and
5796         wrongly assuming right == button2 rather than 3.  I fixed that and
5797         also added support for middle button (button2).
5798
5799 2000-12-08  Havoc Pennington  <hp@redhat.com>
5800
5801         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5802         that cause a segfault on text insertion
5803
5804         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5805         warning
5806
5807         * gtk/gtktextiter.c (test_log_attrs): use
5808         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5809
5810         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5811         Get log attrs for a line, using a cache stored on the buffer
5812         
5813         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5814         reported by Jeff Franks
5815
5816 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5817
5818         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5819         /dev/ttyS0 -> /dev/mouse
5820
5821 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5822
5823         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5824         Added dummy gdk_fontset_load.
5825
5826 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5827
5828         * docs/README.linux-fb:
5829         * docs/Makefile.am:
5830         Initial GtkFB docs.
5831         
5832         * gdk/linux-fb/Makefile.am:
5833         Define GDK_DATA_PREFIX.
5834
5835         * gdk/linux-fb/gdkmain-fb.c:
5836         Fix typo.
5837         Change default display to /dev/fb0.
5838
5839         * gdk/linux-fb/gdkpango-fb.c:
5840         Add $(prefix)/share/fonts/ to font path.
5841         
5842 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5843
5844         * gdk/linux-fb/gdkkeyboard-fb.c:
5845         New file containing the abstracted keyboard driver. Most code
5846         taken from gdkinput-ps2.c
5847
5848         * gdk/linux-fb/gdkinput-ps2.c:
5849         Removed file.
5850         
5851         * gdk/linux-fb/Makefile.am:
5852         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5853
5854         * gdk/linux-fb/gdkcolor-fb.c:
5855         display->fb was renamed to display->fb_fd.
5856
5857         * gdk/linux-fb/gdkcursor-fb.c:
5858         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5859
5860         * gdk/linux-fb/gdkinput.c:
5861         Moved gdk_input_init here from gdkinput-ps2.c
5862
5863         * gdk/linux-fb/gdkmain-fb.c:
5864         display->fb was renamed to display->fb_fd.
5865         Now the tty and the console is opened here instead
5866         of in the keyboard driver. Also check GDK_VT to see what
5867         tty to open.
5868         Move gdk_beep () here from gdkinput-ps2.c
5869         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5870
5871         * gdk/linux-fb/gdkmouse-fb.c:
5872         Add header.
5873         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5874         Return correct keyboard modifiers.
5875         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5876
5877         * gdk/linux-fb/gdkprivate-fb.h:
5878         Add tty and vt info to display.
5879         Add orignal modeinfo storage to display
5880         Update global functions
5881
5882         * gdk/linux-fb/gdkwindow-fb.c:
5883         Added gdk_fb_window_find_focus().
5884         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5885
5886 2000-12-07  Havoc Pennington  <hp@pobox.com>
5887
5888         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5889         function, noticed by Alex
5890
5891 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5892
5893         * configure.in: Detect freetype properly
5894
5895         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5896         above.
5897
5898 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5899
5900         * gdk/linux-fb/Makefile.am:
5901         Add gdkmouse-fb.c
5902         
5903         * gdk/linux-fb/gdkmouse-fb.c:
5904         New file. Abstracted the mouse drivers a bit.
5905
5906         * gdk/linux-fb/gdkcursor-fb.c:
5907         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5908
5909         * gdk/linux-fb/gdkinput-ps2.c:
5910         Removed old mouse handling code. Moved cursor handling code
5911         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5912         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5913         gdk_mouse_get_info.
5914
5915         * gdk/linux-fb/gdkmain-fb.c:
5916         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5917
5918         * gdk/linux-fb/gdkprivate-fb.h:
5919         Removed public gdk_fb_find_common_ancestor, added and renamed
5920         functions for the new mouse handling code.
5921
5922         * gdk/linux-fb/gdkwindow-fb.c:
5923         Moved gdk_fb_window_send_crossing_events here. added global
5924         variable gdk_fb_window_containing_pointer. made
5925         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5926         renamed to gdk_mouse_get_info.
5927
5928 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5929
5930         * gdk/linux-fb/gdkevents-fb.c:
5931         Update to match latest gmain/gsource changes.
5932
5933         * gdk/linux-fb/gdkinput-ps2.c:
5934         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5935         it links. Will be implemented later.
5936
5937 2000-12-03  Havoc Pennington  <hp@pobox.com>
5938
5939         * gdk/Makefile.am: add gdkkeys.[hc]
5940
5941         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5942         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5943
5944         * acconfig.h, configure.in: add checks and command line options
5945         for XKB
5946
5947         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5948         
5949         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5950         and group in the key event
5951
5952         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5953         field with the low-level hardware key code, and a group
5954         field with the keyboard group
5955
5956         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5957         and declare a couple globals used for keymap handling
5958         
5959         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5960         hold down Shift-Control and type a hex number to get a Unicode 
5961         character corresponding to the hex number
5962         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5963         (return bytes not chars)
5964
5965 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5966
5967         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5968         to avoid waste on 64-bit platforms.
5969
5970 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5971
5972         * INSTALL: Fix link to PNG home, remove reference
5973         to fribidi.
5974
5975         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5976         
5977         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5978         tested.)
5979
5980         * gtk/gtkcheckmenuitem.c: Permanently turn on
5981         always_show_toggle.
5982
5983         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5984         be NULL. (Vladimir Klebanov, #26545)
5985
5986         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5987         some signed/unsigned comparison problems. (#6510,
5988         David Kaelbling)
5989
5990         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5991         return type to boolean (Oskar Liljeblad, #18648)
5992
5993 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5994
5995         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5996         Remove bogus colormap setting.
5997
5998 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5999
6000         * gdk/linux-fb/gdkcolor-fb.c:
6001         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
6002
6003         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
6004         Must set colormap.
6005         
6006 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
6007
6008         * docs/tutorial/gtk-tut.sgml: DND updates
6009
6010 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
6011
6012         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6013         Remove old debug g_warning().
6014         (gdk_fb_draw_drawable): The src argument can be either a wrapper
6015         or an implementation, just pass the implementation to draw_drawable_2.
6016         
6017         * gdk/linux-fb/gdkprivate-fb.h:
6018         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
6019
6020         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6021         clear and invalidate area when window is destroyed.
6022         (send_map_events): Remove old commented out code.
6023
6024 2000-12-05  Alexander Larsson  <alexl@redhat.com>
6025
6026         * gdk/linux-fb/gdkpango-fb.c:
6027         Use italic instead of oblique in font aliases.
6028         
6029         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
6030         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
6031         other unsupported functions.
6032
6033 2000-12-04  Havoc Pennington  <hp@redhat.com>
6034
6035         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
6036
6037         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
6038
6039         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
6040
6041         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
6042         hack to avoid infinite loops (synthetic expose event) - 
6043         Owen has more appropriate fixes in a branch he'll check in later.
6044
6045         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
6046         separator, CR, and CRLF as line ends
6047
6048         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
6049         into lines using pango_find_paragraph_boundary(); other bits of
6050         the widget are still going to be broken if the boundary isn't '\n'
6051         though
6052
6053 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6054
6055         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
6056         multiply.
6057
6058         * gdk/linux-fb/gdkpango-fb.c:
6059         Copied some 26.6 scaling macros from pango to clean up the rounding.
6060         (pango_fb_font_get_glyph_info): Correct sign on x value.
6061
6062         * gdk/linux-fb/gdkprivate-fb.h:
6063         Removed unreferenced external functions.
6064
6065         * modules/linux-fb/Makefile.am: Use ` instead of '.
6066
6067         * modules/linux-fb/basic.c:
6068         Remove dead code. In particular the dummy lang engine which broke all
6069         pango layouts in GtkFB. Don't include tables-big.i anymore.
6070
6071         * modules/linux-fb/tables-big.i:
6072         Upgrade to latest version from pango. Left for reference, basic_ranges
6073         moved to basic.c.
6074         
6075 2000-12-04  Havoc Pennington  <hp@redhat.com>
6076
6077         Fix bugs Alex found:
6078         
6079         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
6080         to "draw"
6081
6082         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
6083
6084         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
6085
6086         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
6087         implementation in here, apparently the expose() implementation was
6088         dead code.
6089
6090 2000-12-04  Alexander Larsson  <alexl@redhat.com>
6091
6092         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6093         Return positive descent.
6094
6095 2000-12-02  Havoc Pennington  <hp@pobox.com>
6096
6097         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
6098         method and signal
6099         
6100         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
6101         calls gdk_window_process_updates() to push the exposes through
6102         (gtk_widget_class_init): No more draw signal, no
6103         gtk_widget_real_draw()  
6104         
6105         * gtk/gtkbin.c (gtk_bin_draw): remove
6106
6107         * gtk/gtkbox.c (gtk_box_draw): remove
6108
6109         * gtk/gtkbutton.c (gtk_button_draw): remove
6110
6111         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6112
6113         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6114
6115         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6116
6117         * gtk/gtkclist.c (gtk_clist_draw): remove
6118
6119         * gtk/gtkentry.c (gtk_entry_draw): remove
6120
6121         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6122
6123         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6124
6125         * gtk/gtkframe.c (gtk_frame_draw): remove
6126
6127         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6128
6129         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6130
6131         * gtk/gtklayout.c (gtk_layout_draw): remove
6132
6133         * gtk/gtklist.c (gtk_list_draw): remove
6134
6135         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6136
6137         * gtk/gtkmenu.c (gtk_menu_draw): remove
6138
6139         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6140
6141         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6142
6143         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6144
6145         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6146
6147         * gtk/gtkpacker.c (gtk_packer_draw): remove
6148
6149         * gtk/gtkrange.c (gtk_range_draw): remove
6150
6151         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6152
6153         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6154
6155         * gtk/gtktable.c (gtk_table_draw): remove
6156
6157         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6158
6159         * gtk/gtktext.c (gtk_text_draw): remove
6160
6161         * gtk/gtktextview.c (gtk_text_view_draw): remove
6162
6163         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6164
6165         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6166
6167         * gtk/gtktree.c (gtk_tree_draw): remove
6168
6169         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6170
6171         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6172
6173         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6174
6175         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6176
6177         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6178
6179         * gtk/gtkwindow.c (gtk_window_draw): remove
6180
6181 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6182
6183         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6184         a GtkToggleButton is both insensitive and active, it was being
6185         drawn by the GtkButton draw handler which doesn't check the
6186         state. Now it's calling gtk_toggle_button_paint instead.
6187         
6188 2000-12-01  Havoc Pennington  <hp@redhat.com>
6189
6190         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6191         dangling pointers to the appearance attributes from the 
6192         line display
6193
6194         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6195         width/height to mean "full width/height of drawable"
6196
6197         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6198         click to select word/line
6199         
6200         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6201         when getting log attrs. Get a slice, so that pixmaps and stuff
6202         are properly handled.
6203
6204         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6205         paste into the selection (replaces selection now, previously
6206         crashed or added to selection). Reveals longstanding btree bug -
6207         select multiple lines, middle-click on the selection, boom. This
6208         isn't related to my changes though.
6209
6210         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6211         PangoLogAttrs changes
6212         (gtk_entry_move_backward_word): ditto
6213
6214         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6215         functions return bool whether the iter moved onto a
6216         dereferenceable position.
6217  
6218         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6219         functions for motion in terms of display lines.
6220
6221         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6222         get the buffer a mark is inside
6223         
6224 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6225
6226         * gdk/linux-fb/Makefile.am:
6227         * modules/linux-fb/Makefile.am:
6228         Freetype 2 final uses freetype-config
6229
6230         * gdk/linux-fb/gdkpango-fb.c:
6231         Upgrade to use Freetype 2 final.
6232         More flexible support for font aliases, this also fixes a bug with
6233         GtkFontSelector, as the aliases must be visible in the font/family list,
6234         or GtkFontSelector reads uninitialized memory.
6235
6236 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6237
6238         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6239         XGetIMValues to properly terminate variable argument list, and do
6240         NULL return check for ic_values and xim_styles.
6241
6242         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6243         Restore preedit state after XmbResetIC().
6244         
6245         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6246         XvaCreateNestedList() should take XvaNestedList, but not
6247         XvaNestedList*.
6248
6249         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6250         preedit_draw_callback, preedit_caret_callback): Match
6251         "preedit-changed" signal name to "preedit_changed" to be
6252         consistent to the spec.
6253
6254         * gtk/gtkimcontextsimple.c (check_table):
6255         Match "preedit-changed" to "preedit_changed" to be consistent
6256         to the spec.
6257
6258 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6259
6260         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6261         gc->clip_region == NULL>
6262
6263 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6264
6265         Changes by Hans Breuer:
6266         
6267         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6268         Dont't use negative width and height as max_hints. This fixes
6269         Owen's recent testgtk changes for win32.
6270
6271         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6272         gdk_win32_hdc_release): These are exported and may be called with
6273         other drawable types than our GdkDrawableImplWin32 (?).
6274
6275         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6276         so always #define USE_BACKING_STORE.
6277
6278         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6279         of printf for debugging output.
6280
6281         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6282         
6283         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6284
6285         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6286         declaration.
6287
6288         * gtk/gtktexttypes.h: Ditto.
6289
6290         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6291         (GDK_VoidSymbol) also if in case of arg check failure.
6292
6293         * gtk/gtkimcontextsimple.c
6294         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6295         position to the pointer, but to the variable it points to.
6296
6297         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6298
6299         * gtk/gtk.def: Updates.
6300
6301 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6302
6303         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6304         GTK_TYPE_TREE_MODEL.
6305
6306 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6307
6308         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6309         Set the size of the font from the description.
6310         (gdk_text_width): Gross hack that calculates the width
6311         of text by text_length * size/2. This is necessary because
6312         GtkLabel does some ugly gtk_string_width call to calculate
6313         an good size.
6314         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6315
6316 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6317
6318         * docs/tutorial/gtk-tut.sgml: DND updates
6319
6320 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6321
6322         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6323         If you pass width or height == 0 to gdk_window_clear_area they
6324         should be calculated from the window size.
6325
6326 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6327
6328         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6329         a grab, but no grab-cursor, use the cursor from the grabbed
6330         window. (gdk_fb_window_send_crossing_events): Send normal
6331         enter/leave notifications if grab and owner_events == TRUE.
6332
6333 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6334
6335         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6336         Do implicit button grabs, even if the window doesn't
6337         want the event.
6338         (gdk_fb_window_send_crossing_events): If there is a
6339         grab, only the grabbed window gets normal enter/leave
6340         notifications. On ungrab go from grabbed window to current.
6341         Don't send any notification to b when propagating from c -> b.
6342         If setting a grab on window, don't set prev_window.
6343         (handle_mouse_input): Send enter/leave events to the window the
6344         mouse is over, not the grabbed one.
6345         
6346 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6347
6348         * gdk/gdkregion-generic.c: Zap warning.
6349         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6350         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6351
6352 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6353
6354         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6355         The cursor should be hidden if it is part of either the
6356         source or destination region. Not only if it is in both.
6357         (gdk_window_set_transient_for): Silence warnings.
6358
6359 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6360
6361         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6362         The default mode in X is Pie Arcs, therefore that is
6363         what Gtk+ uses.
6364
6365 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6366
6367         * gdk/linux-fb/gdkinput-ps2.c:
6368         Implement correct EnterNotify/LeaveNotify:
6369         (gdk_fb_window_send_crossing_events): New function that sends
6370         all GdkCrossingEvents from the last mouse-window to the specified
6371         destination.
6372         (gdk_fb_window_visibility_crossing): Removed function.
6373         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6374         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6375         instead of gdk_window_get_pointer() for better readability.
6376
6377         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6378         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6379
6380         * gdk/linux-fb/gdkprivate-fb.h:
6381         removed gdk_fb_window_visibility_crossing, added
6382         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6383
6384         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6385         New function that finds the least common ancestor of two windows.
6386         (gdk_window_show, gdk_window_hide):
6387         Use gdk_fb_window_send_crossing_events.
6388         (gdk_fb_window_move_resize): Send configure events to toplevel
6389         windows. Use gdk_fb_window_send_crossing_events.
6390
6391 2000-11-27  Havoc Pennington  <hp@redhat.com>
6392
6393         * gtk/gtkprivate.h (enum): Remove a trailing comma
6394
6395 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6396
6397         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6398         the "changed" callback of the adjustment.  We need to redraw the
6399         spin button's arrows when the adjustment's range changes.
6400         (adjustment_changed_cb): Draw the arrows.
6401         (gtk_spin_button_value_changed): Draw the arrows.
6402
6403 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6404
6405         * gdk/linux-fb/gdkselection-fb.c:
6406         Initial selection implementation.
6407
6408         * gtk/gtkselection.c:
6409         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6410         requestor in gtk_selection_request.
6411         
6412         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6413         Added gdk_selection_property atom.
6414
6415         * gdk/linux-fb/gdkprivate-fb.h:
6416         Export _gdk_selection_window_destroyed.
6417         Removed mask_off_x/y from GdkCursorPrivateFB.
6418         Removed hbearing, added top, left to PangoFBGlyphInfo.
6419
6420         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6421         Call _gdk_selection_window_destroyed
6422         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6423         the root window has been created.
6424         (static_dx_hack, static_dy_hack, compare_draw_rects,
6425         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6426         in region. They are already sorted. Instead just traverse them in
6427         reverse if draw_direction < 0.
6428         
6429         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6430         Double-clicks must be sent after the normal button_press.
6431         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6432         
6433         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6434         Pass _gdk_fb_screen_gc instead of NULL.
6435
6436         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6437         Initialize gdk_selection_property.
6438         (gdk_event_make): Remove unused code.
6439
6440         * gdk/linux-fb/gdkcursor-fb.c:
6441         Make the pixmap for the cursor the same size as the mask. Also remove
6442         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6443         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6444         Now the whole cursor is visible.
6445
6446         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6447         Fix bug where xdest+height instead of ydest+height was used
6448         to calculate if the source and dest overlapped. This fixes the
6449         redraw bug when the main window in testgtk was scrolled when
6450         partially covered by a tall window.
6451         Copy rectangles in region in order depending on draw_direction.
6452         Also moved the draw_direction flipping of start_y and end_y into
6453         the gc functions, as this might not be what all of them want.
6454         (gdk_fb_draw_lines): Support dashed lines.
6455         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6456         so that the text is positioned correctly (was 1 pixel high).
6457
6458         gdk/linux-fb/gdkgc-fb.c:
6459         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6460         all lines were drawn a pixel to short. Also checked the default of
6461         the rest of the values, and they're the same as X now.
6462
6463         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6464         Clean up pixel positioning of the glyphs. Just use bgy->top and
6465         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6466         to all divisions to get correct rounding behaviour.
6467
6468         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6469         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6470         Moved start_y/end_y flip into draw_drawable implementations.
6471         Flip also x rendering when draw_direction < 0.
6472         Remove unneccesary multiply with draw_direction.
6473
6474 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6475
6476         * docs/tutorial/gtk-tut.sgml:
6477           - get rid of gtk_toggle_button_toggled FUD
6478           - start DND section - needs work - based on:
6479                 http://wolfpack.twu.net/docs/gtkdnd/
6480
6481 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6482
6483         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6484         Correct calculation of font metrics. Now GtkEntrys have sane
6485         size.
6486
6487 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6488
6489         * gdk/gdktypes.h:
6490         Add new type GdkSpan
6491         
6492         * docs/reference/gdk/gdk-sections.txt,
6493         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6494         gdk/gdkregion.h:
6495         Implement and document gdk_region_spans_intersect_foreach.
6496
6497         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6498         Add new file gdkrender-fb.c which contains all core
6499         rendering code.
6500         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6501         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6502         (optimized rectangle fillers).
6503
6504         * gdk/linux-fb/gdkdrawable-fb2.c:
6505         Move all rendering code to gdkrender-fb.c.
6506         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6507         Use the new span intersection functions in gdk_fb_fill_spans.
6508         gdk_fb_draw_rectangle() clips filled rectangles and calls
6509         gc->fill_rectangle with the result.
6510         gdk_fb_fill_spans() gets extra argument "sorted".
6511
6512         * gdk/linux-fb/gdkevents-fb.c:
6513         Remove unused includes and defines.
6514         New function gdk_fb_get_time() to get correct time for events.
6515
6516         * gdk/linux-fb/gdkinput-ps2.c:
6517         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6518         Make sure to set the time of all events.
6519
6520         * gdk/linux-fb/gdkmain-fb.c:
6521         Use gdk_fb_get_time ().
6522
6523         * gdk/linux-fb/gdkprivate-fb.h:
6524         New virtual GC calls: fill_span & fill_rectangle.
6525         Export gdk_fb_get_time().
6526         gdk_fb_fill_spans() gets extra argument "sorted".
6527
6528         * gdk/linux-fb/mi*.c:
6529         Use GdkSpan instead of GdkRectangle.
6530         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6531         from XFree 4 source)
6532         
6533 2000-11-22    <jrb@redhat.com>
6534
6535         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6536         reversing the order in an if statement will do.  Doing so managed
6537         to make the treemodelsort half work.  Other half will follow after
6538         I get the insert function fully fixed.
6539
6540 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6541         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6542         more than 2 bits. Besides, I need to implement an evil hack. :)
6543
6544 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6545
6546         * docs/tutorial/gtk-tut.sgml: minor corrections
6547
6548 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6549         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6550           convert to and from relative path's and iters.
6551
6552         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6553           testing sorting functions a bit better.  Currently broken -- will
6554           fix in morning.
6555
6556 2000-11-20  Havoc Pennington  <hp@redhat.com>
6557
6558         * gtk/gtkwidget.c: Documented a bunch of functions in here
6559         (gtk_widget_realize): Warn if you try to realize
6560         a widget with no parent that isn't a toplevel
6561         (gtk_widget_intersect): return a gboolean
6562
6563 2000-11-20  Havoc Pennington  <hp@redhat.com>
6564
6565         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6566         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6567         scrolling to be implemented in GDK to finish. Also, right now
6568         we just size_allocate all children on every layout change,
6569         which is pretty lame. Test commented out of testtext.c, 
6570         until it works better.
6571
6572 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6573
6574         * gdk/linux-fb/gdkdrawable-fb2.c:
6575         Removed unused arguments from gdk_fb_drawable_get_pixel().
6576
6577         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6578         Renamed fidur specific mouse packet data in MouseDevice to
6579         generic. Used it in ps2 mouse handling code to avoid blocking
6580         reads.
6581
6582 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6583
6584         * demos/gtk-demo/main.c: Changed to have the list become
6585         non-italic when the demo window is destroyed through an external
6586         event (like a close button).  Doing so found three bugs in the
6587         widget.
6588
6589         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6590
6591         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6592         we actually set the cell.
6593
6594         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6595
6596         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6597         free a leaked path.  Thanks memprof.
6598
6599 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6600
6601         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6602         off-by-one error when destroying allocated segments
6603         on failure. (Elliot)
6604
6605 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6606
6607         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6608         memleaks found by Evan Martin.
6609
6610 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6611
6612         * Released 1.3.2
6613         
6614         * NEWS: Updates for 1.3.2
6615
6616 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6617
6618         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6619         but in general for window system specific events.
6620
6621         * gtk/gtk.def
6622         * gtk/makefile.mingw.in
6623         * gtk/makefile.msc.in: Update.
6624         
6625         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6626
6627 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6628
6629         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6630         distribute gtk.immodules.
6631
6632         * gtk/Makefile.am (install-data-local): Don't install the
6633         gtk.immodules file created for the uninstalled modules;
6634         instead run gtk-query-immodules after install
6635
6636 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6637
6638         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6639         -rpath to the right install location.
6640
6641         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6642         -export-dynamic.
6643
6644         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6645         properly.
6646
6647 2000-11-15  Havoc Pennington  <hp@pobox.com>
6648
6649         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6650         patch from Mikael Hermansson to temporarily stop blinking while
6651         the user is using the keyboard to type or navigate. 
6652
6653         Also, when blinking, stay on for longer than we stay off. Also,
6654         return from start_cursor_blink if !cursor_visible, to save
6655         checking that flag all over the place before we call
6656         start_cursor_blink.
6657
6658 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6659
6660         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6661         only contain a "fontset" line, which is now ignored.
6662
6663         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6664         double-click-to-select-word work.
6665         
6666 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6667
6668         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6669         Don't move back one char when we are actually at the end of the 
6670         paragraph.
6671
6672 2000-11-15  Robert Brady  <robert@suse.co.uk>
6673
6674         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6675         'o' < 'p'.
6676         
6677         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6678         bind_textdomain_codeset.
6679
6680         (gtk_init_check): Make the warning about translating default:LTR
6681         sterner.
6682         
6683 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6684
6685         * **/Makefile.am : remove unecessary rules for win32-specific
6686         config-substituted targets. If you want these rules, use
6687         --enable-maintainer-mode (called automatically by autogen.sh).
6688         Stops a lot of unneccessary make-time warnings.
6689
6690         * gtk/gtktext{layout,display}.c: Factor in total width as
6691         well as screen when figuring alignment for word-wrap as well as
6692         no wrap; this is necessary to handle lines that cannot be wrapped
6693         at all.
6694
6695 2000-11-15  Havoc Pennington  <hp@redhat.com>
6696
6697         * gtk/testtext.c: Implement essential color cycling feature
6698
6699 2000-11-15  Havoc Pennington  <hp@redhat.com>
6700
6701         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6702         when we invalidate the main window.
6703
6704         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6705         GtkTextView will now invalidate the side windows for us when text
6706         changes.
6707
6708 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6709
6710         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6711         unconditionally, since we may need to update the horizontal
6712         scrollbars even if the height didn't change.
6713
6714         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6715         the extra attrs, since some of them affect size.
6716
6717         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6718         x_offset correctly.
6719
6720 2000-11-15  Havoc Pennington  <hp@redhat.com>
6721
6722         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6723         don't move the first line out into the margin, instead move the
6724         whole paragraph in order to make space for the first line within 
6725         the margin
6726
6727 2000-11-15  Havoc Pennington  <hp@redhat.com>
6728
6729         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6730         xoffset in addition to yoffset, so horizontal scrolling doesn't
6731         break redraws
6732
6733 2000-11-15  Havoc Pennington  <hp@redhat.com>
6734
6735         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6736         from the cursor
6737         (render_layout_line): fix reversed test that caused weird
6738         underlines to get drawn
6739
6740 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6741
6742         * gdk/linux-fb/gdkprivate-fb.h:
6743         Fix debug macros.
6744         
6745 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6746
6747         * gdk/linux-fb/gdkprivate-fb.h:
6748         Added virtual functions set_pixel, get_color,
6749         fill_span and draw_drawable to the GC.
6750         Added global _gdk_fb_screen_gc to use instead of
6751         NULL when drawing to the screen.
6752         Added _gdk_fb_gc_calc_state() prototype.
6753
6754         * gdk/linux-fb/gdkgc-fb.c:
6755         Call _gdk_fb_gc_calc_state() on any gc state change.
6756
6757         * gdk/linux-fb/gdkglobals-fb.c:
6758         Add _gdk_fb_screen_gc
6759                 
6760         * gdk/linux-fb/gdkdrawable-fb2.c:
6761         _gdk_fb_gc_calc_state() calculates best functions
6762         for the GC state and depth.
6763         Moved bpp specialized code to separate functions.
6764         Added optimized 24 bpp AA draw_drawable.
6765
6766         * gdk/linux-fb/gdkevents-fb.c:
6767         Silence gcc warning.
6768
6769         * gdk/linux-fb/gdkimage-fb.c:
6770         Use _gdk_fb_screen_gc
6771
6772         * gdk/linux-fb/gdkwindow-fb.c:
6773         Init and use _gdk_fb_screen_gc
6774
6775         * gdk/linux-fb/mitypes.h:
6776         Remove unused types.
6777
6778 2000-11-14  Havoc Pennington  <hp@pobox.com>
6779
6780         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6781         to pixels
6782
6783 2000-11-14  Havoc Pennington  <hp@pobox.com>
6784
6785         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6786
6787         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6788         unknown char, no real reason we were using a variable. 
6789         Remove gtk_text_unknown_char variable. Fix all the text widget
6790         files accordingly.
6791
6792         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6793         since the Unicode spec seems to prefer that character for our
6794         purposes.
6795
6796 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6797
6798         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6799         value of g_getenv() isn't freeable, so g_strdup it.
6800
6801         * modules/input/inuktitut.c: Inuktitut input method.
6802
6803         * modules/input/Makefile.am: Build this.
6804         
6805 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6806
6807         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6808         of gtk programs.
6809
6810 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6811
6812         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6813         reversed > that was causing Home to go to end of previous line.
6814
6815         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6816         modified-keypresses (leave for bindings.)
6817
6818         * modules/input/Makefile.am: Remove useless -export-dynamic
6819         from module LDFLAGS.
6820
6821 2000-11-14  Havoc Pennington  <hp@redhat.com>
6822
6823         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6824         higher.
6825
6826         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6827         account. Also, render rise, underline, background, etc. for
6828         pixbufs as well as text. Also, draw underlines one pixel higher.
6829
6830         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6831         PangoAttribute for the rise, so it gets drawn properly. Also,
6832         add the GtkTextAppearance attribute for pixbuf/widget segments
6833         as well; we should go ahead and have rise, underline, background,
6834         stipple work for those
6835
6836         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6837         Pango
6838
6839 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6840
6841         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6842
6843         * gtk/gtk.def: Update.
6844
6845         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6846         included.
6847         (gtk_rc_get_im_module_file): Use run-time installation directory
6848         on Win32.
6849
6850         * gdk/win32/rc/gdk.rc: Remove.
6851         * gdk/win32/rc/gdk.rc.in: New file.
6852         * gdk/win32/rc/Makefile.am: New file
6853         * gdk/win32/Makefile.am: Corresponding changes.
6854
6855         * gtk/gtk.rc: Remove.
6856         * gtk/gtk-win32.rc.in: New file.
6857         * gtk/Makefile.am: Corresponding changes.
6858
6859         * configure.in: Corresponding changes.
6860
6861         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6862         has a built gtkcompat.h. Developers using CVS code on Win32 can
6863         hand-edit it from gtkcompat.h.in.
6864
6865         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6866         gtkcompat.h from gtkcompat.h.win32.
6867
6868 2000-11-14  Havoc Pennington  <hp@redhat.com>
6869
6870         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6871         to default to GDK_ACTION_MOVE if the drag is within a single
6872         widget. Defaults to GDK_ACTION_COPY between widgets.
6873
6874 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6875
6876         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6877
6878         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6879
6880         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6881         srcdir != builddir
6882
6883         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6884
6885         * configure.in (GTK_VERSION): Up to 1.3.2
6886
6887         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6888         gtkimcontextxim.h
6889
6890         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6891         missing doc comment.
6892
6893 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6894
6895         * modules/linux-fb/basic.c:
6896         Use the glib iconv wrappers.
6897
6898 2000-11-13  Havoc Pennington  <hp@pobox.com>
6899
6900         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6901         still more bugs.
6902
6903         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6904         scroll the GdkWindows before realization.
6905
6906 2000-11-13  Havoc Pennington  <hp@redhat.com>
6907
6908         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6909         where GC didn't always get updated properly
6910
6911         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6912         of fonts instead of setting the entire font
6913
6914         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6915         setting entire font
6916
6917         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6918
6919         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6920         a bunch of individually-settable font attributes. You can still 
6921         use the "font" and "font_desc" args, they just set all the font
6922         attributes at once.
6923
6924 2000-11-13 Elliot Lee <sopwith@redhat.com>
6925
6926         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6927
6928 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6929
6930         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6931         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6932
6933         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6934         work better.
6935
6936 2000-11-13  Havoc Pennington  <hp@redhat.com>
6937
6938         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6939         the module file.
6940
6941         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6942         dest->language
6943
6944         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6945         settings
6946
6947         * gtk/gtktextview.c: Implement object args and setters/getters for
6948         all the aspects of the GtkTextAttributes that are not set from
6949         GtkWidget attributes. This is spacing, justification, margins,
6950         etc.
6951
6952         (gtk_text_view_set_arg)
6953         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6954         args
6955         (gtk_text_view_class_init): Add args for justify, left_margin,
6956         right_margin, indent, and tabs
6957         
6958
6959         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6960         attribute properly
6961
6962         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6963         replace with indent attribute
6964
6965         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6966         PANGO_SCALE
6967
6968         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6969         rearranging code to do that
6970         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6971         i.e. don't subtract the top_margin first, just to keep
6972         all margin-futzing in one place.
6973
6974         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6975
6976         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6977         special case of last line, Pango now handles this itself.
6978         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6979         Y coordinate
6980         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6981         (find_display_line_above): wasn't moving the byte index as it
6982         iterated over lines, so always returned byte 0. Also, port to use
6983         PangoLayoutIter.
6984         (find_display_line_below): same problem as
6985         find_display_line_above. Also, port to use PangoLayoutIter.
6986
6987 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6988
6989         * gdk/linux-fb/*.[ch]:
6990         Massive reindent to gtk+ standard. My hands hurt.
6991
6992         * gdk/linux-fb/gdkcolor-fb.c:
6993         Move GdkColorPrivateFB from inherited to windowing_data
6994
6995         * gdk/linux-fb/gdkcursor-fb.c:
6996         _gdk_cursor_new_from_pixmap made static
6997
6998         * gdk/linux-fb/gdkdnd-fb.c:
6999         GdkDragContextPrivate moved to windowing_data
7000
7001         * gdk/linux-fb/gdkdrawable-fb2.c:
7002         Removed endian.h, use glib endianness macros instead
7003         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
7004         and GDK_DRAWABLE_IMPL_FBDATA
7005
7006         * gdk/linux-fb/gdkfont-fb.c:
7007         Add empty gdk_font_load(). Needed for linking of Gtk+.
7008
7009         * gdk/linux-fb/gdkimage-fb.c:
7010         Removed endian.h, use glib endianness macros instead
7011         Moved GdkImagePrivateFB to windowing_data
7012         gdk_image_new_bitmap didn't always allocate enough
7013         memory.
7014
7015         * gdk/linux-fb/gdkinput-ps2.c:
7016         Added semi-working support for MS serial mice.
7017
7018         * gdk/linux-fb/gdkprivate-fb.h:
7019         s/GdkWindowPrivate/GdkWindowObject/
7020         Removed GdkWindowPrivate typedef
7021         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
7022         Removed GDK_DRAWABLE_P
7023         Move GdkColorPrivateFB from inherited to windowing_data
7024         Moved GdkImagePrivateFB to windowing_data
7025
7026         * gdk/linux-fb/gdkvisual-fb.c:
7027         Removed some unused debug code.
7028
7029         * gdk/linux-fb/gdkwindow-fb.c:
7030         Use stock cursors instead of including X headers.
7031         s/GdkWindowPrivate/GdkWindowObject/
7032
7033         * gdk/linux-fb/mitypes.h:
7034         Removed unused types.
7035
7036         * modules/linux-fb/basic.c:
7037         Use the pango fribidi wrappers.
7038
7039 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7040
7041         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
7042         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
7043         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
7044         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
7045         GEqualFunc where applicable.
7046         
7047         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
7048         pango_font_description_equal as changed in pango.
7049         
7050         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
7051
7052         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
7053
7054         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
7055
7056         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
7057
7058         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
7059
7060         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
7061
7062         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
7063         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
7064
7065         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
7066         gtk_rc_styles_compare -> gtk_rc_styles_equal.
7067
7068 2000-11-12  Havoc Pennington  <hp@pobox.com>
7069
7070         * demos/gtk-demo/Makefile.am (democodedir): change demo install
7071         dir to datadir/gtk+-2.0/demo
7072
7073         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
7074         sorts of text widget and Pango font bugs. Urgh.
7075
7076         * demos/gtk-demo/Makefile.am (demos): Add textview.c
7077
7078         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
7079         tree that you should double click to see the demo. Fix 
7080         types of variables to reflect changed return values from 
7081         GtkTreeStore and GtkTreeViewColumn constructors.
7082
7083         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
7084         newly-created buffer to prepare for GObject semantics
7085
7086         * gtk/testtext.c: don't leak the buffer with GObject semantics
7087
7088         * gtk/testtextbuffer.c: ditto
7089         
7090 2000-11-12  Havoc Pennington  <hp@pobox.com>
7091
7092         Rename this testgtk to gtk-demo to avoid confusion, and 
7093         install it so people can use it as a supplement to 
7094         the documentation.
7095         
7096         * demos/gtk-demo: Moved from demos/testgtk
7097
7098         * demos/testgtk: Removed
7099
7100         * configure.in: make Makefile in gtk-demo
7101         
7102         * demos/gtk-demo/Makefile.am: Install sample source to 
7103         datadir/gtk-demo (maybe there's a better place?), and 
7104         rename the binary to gtk-demo
7105         
7106         * demos/gtk-demo/main.c (load_file): Load installed sample
7107         source if source isn't found in pwd.
7108
7109 2000-11-09  Havoc Pennington  <hp@pobox.com>
7110
7111         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7112         argument to set the char displayed when visibility == FALSE
7113         (gtk_entry_create_layout): If !entry->visible, replace 
7114         all chars with the "invisible char"
7115
7116         * gtk/testgtk.c: Test the invisible_char deal
7117         
7118 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7119
7120         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7121         can't get a native font in the right encoding.
7122
7123 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7124
7125         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7126         respectively.
7127
7128 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7129
7130         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7131         Fix warning when moving between paragraphs.
7132
7133         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7134         delete => delete_from_cursor, insert => insert_at_cursor
7135
7136 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7137
7138         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7139
7140         * modules/input/imthai-broken.c: A Thai input method for use if
7141         Thai keys are really generating Latin1 keysyms.
7142
7143         * modules/input/Makefile.am: Build these.
7144
7145 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7146
7147         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7148         g_filename_{to,from}_utf8 now takes an extra parameter.
7149
7150         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7151         strftime into UTF-8.
7152
7153         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7154         calendars.
7155
7156         (gtk_calendar_paint_day_names): Draw day names in the right 
7157         place.
7158         
7159 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7160
7161         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7162         problem with using result of g_get_charset() backwards -
7163         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7164
7165         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7166         negative min_width/height and max_width/height to
7167         mean "requisition"; this allows setting a window
7168         to be user-resizable in only one direction easily.
7169
7170         * gtk/testgtk.c (create_main_window): Remove hard-coded
7171         usize - set a default size in the vertical direction.
7172
7173 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7174
7175         * gtk/gtkrange.c: Add some missing casts. Support 
7176         2 and 3 button clicks on the arrows to mean 
7177         "move by pages" and "jump to end". (Like gtkspinbutton)
7178
7179 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7180
7181         * gdk/win32/makefile.msc : reflect build module changes
7182
7183         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7184         from GdkPixmap*, cast implementation member instead.
7185
7186         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7187         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7188         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7189         more Gdi functions return value checking. 
7190         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7191         GdkImagePrivateWin32 *.
7192
7193         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7194         menus useable again. Add #pragma message to keep reminded on this issue.
7195         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7196         windows. This allows to enable backing store on Win32!
7197
7198         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7199         in drawable is of impl type. Correct specific type checks appropriate.
7200  
7201         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7202         GDK_WINDOW_DESTROYED before allocating new resources.
7203
7204         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7205
7206         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7207         (gdk_window_foreign_new) initialize parent handle.
7208         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7209
7210         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7211         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7212         problems (e.g. main buttons in testgtk). 
7213
7214 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7215
7216         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7217         gtk_widget_activate for GDK_Return.
7218
7219         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7220         of preedit cursor position.
7221
7222 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7223
7224         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7225         static.
7226
7227 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7228
7229         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7230         out support for multiple locales; that simple doesn't
7231         work reliably with current Xlib
7232
7233         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7234         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7235         Add support for positioning the cursor within the preedit string.
7236
7237 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7238
7239         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7240         at XIM input method module.
7241
7242         * gtk/gtktextview.c: Check for bindings after passing
7243         events to im context filter.
7244
7245 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7246
7247         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7248         empty attribute lists properly.
7249
7250 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7251
7252         * gtk/queryimmodules.c (main): Return non-zero exit
7253         status if errors were encountered querying any
7254         modules.
7255
7256         * modules/input/Makefile.am (moduledir): remove
7257         leftover bin program target.
7258
7259         * docs/make-todo: Fix typo in error message.
7260
7261 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7262
7263         * configure.in: Add modules/input/Makefile
7264
7265 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7266
7267         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7268         don't include gtkthemes.h.
7269
7270         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7271         to point
7272
7273         * gtk/Makefile.am: Add new .c and .h files, build 
7274         gtk-query-immodules and use it to create a gtk.immodules
7275         file for use of test programs.
7276
7277         * gtk/gtkpreview.c: remove extra blank line.
7278
7279 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7280
7281         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7282         Add the ability to add extra tables beyond the default
7283         one, and also the ability to have compose sequences 
7284         that are prefixes of other compose sequences. 
7285
7286         * gtk/gtkimcontextsimple.c: Export a preedit string which
7287         consists of possible candidates for keystrokes that have
7288         been entered but not yet committed.
7289
7290         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7291         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7292
7293         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7294         Add a function to add input-method switching menu items
7295         to a menu.
7296
7297         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7298         when switching input methods.
7299
7300         * gtk/gtkimcontextsimple.[ch]: Change the format of
7301         the compose table to allow compose tables of different
7302         lengths / sequence.
7303
7304 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7305
7306         * gtk/gtkimmodule.[ch]: Support routines for loading
7307         GtkIMContext implementations dynamically at runtime.
7308
7309         * modules/input/imcyrillic-translit.c: A sample input
7310         method (based on GtkIMContextSimple with an extra table),
7311         which demonstrates preedit strings and the module
7312         system for input modules
7313
7314         * gtk/queryimmodules.c: Program to query the available
7315         input modules and write the results into a file.
7316          
7317         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7318         extra config options "im_module_file" (cache file for
7319         input method modules), and "im_module_path" - path
7320         to look for modules when generating cache file.
7321
7322         This doesn't scale.
7323
7324 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7325
7326         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7327         generic code from gtkthemes into a new abstraction
7328         GtkModule which has the logic for implementing
7329         a loadable module which implements a number of 
7330         GObject types.
7331
7332 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7333
7334         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7335         a class into an interface  
7336         
7337         * gtk/gtkoldeditable.[ch]: Move the old editable
7338         implementation into here, so legacy widgets can
7339         still rely on the implemenation. GtkOldEditable
7340         exports GtkEditable. Make selection handling
7341         code use new text conversion functions (and
7342         handle UTF-8 as a side-effect). Use GtkClipboard
7343         for CLIPBOARD.
7344
7345         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7346         Adopt to match above changes.
7347
7348         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7349         avoid GtkOldEditable implementation. Restructure
7350         to reduce number of places that modify state directly.
7351         Move to GtkBindingSet. Display the preedit string.
7352         Queue recomputation of PangoLayout and scroll position
7353         to improve effiency of doing complex changes naively.
7354         Add a menu with cut/copy/paste and input method selection.
7355
7356 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7357
7358         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7359         to set preedit string and attributes; display preedit string by
7360         inserting string and attributes at cursor when creating the
7361         GtkTextLineDisplay.
7362
7363         * gtk/gtktextlayout.c: Move all conversions between byte
7364         positions in PangoLayout and GtkTextIter into new functions
7365         line_display_iter_to_index/index_to_iter that properly
7366         handle the preedit string.
7367
7368         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7369         it to return const char * (eventually will end up
7370         as GCONST char *, most likely.)
7371
7372         * gtk/gtktextview.[ch]: Handle the preedit string, call
7373         gtk_im_context_reset() as necessary, add a menu to switch
7374         input methods.
7375         
7376         * gtk/gtktextlayout.[ch]: Remove useless
7377         gtk_text_layout_get_log_attrs() function.
7378
7379 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7380
7381         * gdk/gdk.def
7382         * gtk/gtk.def: Update.
7383
7384         * gdk/win32/*.c: Add last argument to g_type_register_static()
7385         calls.
7386
7387         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7388
7389         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7390         generated by older wheel mouse drivers. Get the correct y
7391         coordinate from WM_MOUSEWHEEL messages.
7392
7393         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7394         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7395         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7396         Debugging functions.
7397
7398         * gdk/win32/gdkprivate-win32.h: Declare them.
7399
7400         * gdk/win32/gdkinput-win32.h: Add declaration for
7401         gdk_input_window_destroy().
7402
7403         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7404
7405 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7406
7407         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7408         function to help handle keeping things in sync.
7409
7410 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7411
7412         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7413         BOXED marshallers.
7414
7415         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7416         (gtk_list_store_class_init): use the new BOXED marshallers.
7417
7418         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7419         new_with_values to new_with_types.
7420         (gtk_tree_store_get_column_type): add this.
7421         (gtk_tree_store_class_init): use the new BOXED marshallers.
7422
7423         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7424         mirror some POINTER marshallers.
7425
7426 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7427
7428         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7429         allow more interesting iterators.  Also, made the lifecycle of
7430         iterators more explicit.
7431
7432         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7433
7434         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7435         types.
7436
7437 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7438
7439         * demos/testgtk/menus.c:
7440         Changes to make the new testgtk compile after
7441         gtk_menu_append was removed.
7442
7443         * gdk/linux-fb/gdkdrawable-fb2.c
7444         (gdk_fb_get_depth, gdk_fb_get_visual,
7445         gdk_drawable_impl_fb_class_init): Implement
7446         these drawable functions. Now GtkImages work again.
7447
7448         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7449
7450         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7451         
7452         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7453         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7454         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7455         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7456
7457 2000-11-08  Havoc Pennington  <hp@pobox.com>
7458
7459         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7460         visible_set args, don't know where these had gone, I thought they
7461         used to be there
7462
7463         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7464         now we can test the feature and see that it's totally broken.
7465
7466 2000-11-08  Havoc Pennington  <hp@pobox.com>
7467
7468         Make DND copy pixbufs and tags when source and target share a 
7469         tag table.
7470         
7471         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7472         in-process GTK_TEXT_BUFFER_CONTENTS target
7473         (gtk_text_view_drag_data_received): Paste from
7474         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7475
7476 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7477
7478         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7479         API changes.
7480
7481         * gtk/gtkmenu.c: Add support for scrolling menus.
7482         Remove gtk_menu_append/prepend/insert, these have been moved to
7483         gtkcompat.h as #defines.
7484
7485         * gtk/gtkcompat.h.in:
7486         Add compatibility #defines for gtk_menu_append/prepend/insert
7487
7488         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7489         GtkMenuPositionFunc gets an extra argument push_in.
7490         gtk_menu_append/prepend/insert removed.
7491         
7492         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7493         positioning behaviour to fit to scrolling menus.
7494
7495         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7496         into menuitem->submeny. That is wrong, and broke torn
7497         off submenus of torn off menus, since they were unrealized
7498         when the first menu was unrealized.
7499
7500         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7501         gtk_menu_shell_select_item() since these need to be overridden in
7502         GtkMenu.
7503
7504         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7505         positioning behaviour to fit to scrolling menus.
7506         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7507         the current item so that it is prelighted when the menu pops up.
7508         This is a workaround to the fact that the menu doesn't get the
7509         initial enter event (due to grabs).
7510
7511         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7512         s/gtk_menu_append/gtk_menu_shell_append/
7513
7514         * gtk/gtknotebook.c:
7515         s/gtk_menu_insert/gtk_menu_shell_insert/
7516
7517         * gtk/testgtk.c (create_menu, create_menus):
7518         Create the first menu with 50 items so that menu scrolling
7519         can be tested.
7520         
7521         
7522         Patch from Jonathan Blandford  <jrb@redhat.com>
7523
7524         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7525         system to handle size requests.  First, we ask what the size of
7526         the toggle is.  Then, when allocating the size, we allocate the
7527         toggle_size first.  This way we can have multiple menu-item
7528         classes w/o needing a seperate class for each.
7529
7530         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7531         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7532
7533         * gtk/gtkcheckmenuitem.c
7534         (gtk_check_menu_item_toggle_size_request): New function to handle
7535         the toggle size-request.
7536
7537 2000-11-07  Havoc Pennington  <hp@redhat.com>
7538
7539         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7540         Half-ass somewhat fix this function, so that scrolling to the
7541         insertion point works. Pango hacking is in the future to really
7542         fix it.
7543
7544         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7545         length of data, no longer used.
7546
7547         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7548         method contents in here, get rid of destroy method
7549         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7550         that were backward. Remove debug spew.
7551         (cut_or_copy): Make the clipboard work with insert_range to
7552         preserve tags and pixbufs, not just the primary selection.
7553
7554 2000-11-07  Havoc Pennington  <hp@redhat.com>
7555
7556         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7557         to gtk_text_mark_get_visible
7558
7559         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7560         bug that was generating an invalid iterator
7561
7562         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7563         ensure_char_offsets() in front of code placing the iter in an
7564         invalid state.
7565
7566         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7567         make override_location arg const
7568         (paste): Replace the selection if we paste into the 
7569         current selection
7570
7571         * gtk/gtkselection.h: Remove "GtkSelectioData"
7572         (struct _GtkSelectionData): move the definition here.
7573
7574         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7575         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7576
7577         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7578
7579         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7580         (gtk_text_buffer_insert_range_interactive): implement
7581         (gtk_text_buffer_get_tags): Remove, replaced by
7582         gtk_text_iter_get_tags()
7583
7584         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7585         limit parameter, to avoid infinite linear scan.
7586         (gtk_text_iter_backward_search): Add search limit
7587         (gtk_text_iter_forward_find_char): Add search limit
7588         (gtk_text_iter_backward_find_char): Add search limit
7589
7590 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7591
7592         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7593         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7594         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7595         gdk/linux-fb/gdkwindow-fb.c:
7596         use g_object_new() instead of g_type_create_instance() which
7597         is a private function for fundamental type implementations.
7598
7599         * gdk/linux-fb/gdkinput-ps2.c:
7600         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7601         instead just store the current modifier state. Add a (somewhat broken)
7602         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7603         Rename exported function gdk_input_ps2_get_mouseinfo to
7604         gdk_input_get_mouseinfo.
7605
7606         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7607         gdk/linux-fb/gdkwindow-fb.c:
7608         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7609         
7610
7611 2000-11-02  Havoc Pennington  <hp@redhat.com>
7612
7613         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7614         use stock buttons. Should be 100% source compatible, appropriate
7615         filesel fields now point to dialog->vbox and dialog->action_area.
7616         On the bizarre side, dialog->action_area and filesel->action_area
7617         are not the same widget.
7618         (gtk_file_selection_init): Put some padding around the selection
7619         entry, so it isn't touching the GtkDialog separator.    
7620
7621         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7622         use stock buttons, etc. Should also be source compatible.
7623         Set the dialog default title in _init not _new().
7624         
7625         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7626         Use stock buttons; don't put a button box inside the existing
7627         dialog button box. Don't bother with push/pop colormap anymore.
7628
7629         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7630         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7631         for message dialog, and necessary for the font selection and color
7632         selection with help and apply buttons.
7633         
7634         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7635         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7636         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7637         between buttons, put less padding around the action area.
7638         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7639         This will also exit the loop if the widget is hidden.
7640         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7641         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7642         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7643         special-case delete event.
7644
7645         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7646         formatting
7647         
7648 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7649
7650         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7651         button to temporarily disable position recording in the
7652         "saved position" test.
7653
7654 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7655
7656         * gtk/gtkthemes.c: added compat code that temporarily implements
7657         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7658         going to be revamped by owen's upcoming GtkModule patches, but
7659         untill then people want gtk to build, right? ;)
7660
7661 2000-11-04  Havoc Pennington  <hp@pobox.com>
7662
7663         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7664         list
7665
7666         * docs/Changes-2.0.txt: Add note about
7667         gtk_container_get_toplevels()
7668
7669         * gtk/gtktextview.h: formatting
7670         
7671         * gtk/gtktextview.c: don't start descriptions with "Returns",
7672         confuses gtk-doc
7673
7674 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7675
7676         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7677         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7678
7679 2000-11-03  Havoc Pennington  <hp@redhat.com>
7680
7681         * gtk/gtktexttagtable.c: Docs
7682         (gtk_text_tag_table_size): return a signed int
7683
7684         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7685         (gtk_text_tag_event): make the event_object a GObject
7686
7687         * gtk/gtktextview.c: Write API docs for all functions.
7688
7689         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7690         for gtk_text_view_get_window_type() called on one of the private
7691         windows.
7692
7693         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7694         directly, call get_buffer() which demand-creates a default
7695         buffer. So gtk_text_view_new() can be used to create a view with a
7696         default buffer in it, if you just want an empty text box users can
7697         put data in. Useful for GUI builders also.
7698
7699 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7700
7701         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7702         the charset encodign portion MUST be in lowercase.
7703         * gtk/gtkrc.az: added file for Azeri language
7704
7705 2000-11-03  Havoc Pennington  <hp@redhat.com>
7706
7707         Get widgets working on the btree/buffer side. Display of them 
7708         still doesn't work.
7709         
7710         * gtk/gtktextview.c: start implementing child widget stuff
7711
7712         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7713
7714         * gtk/gtktextlayout.c: handle embedded widgets
7715
7716         * gtk/gtktextdisplay.c: handle embedded widgets
7717
7718         * gtk/gtktextchild.c: Implement all the child anchor goo
7719
7720         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7721         function
7722
7723         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7724         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7725         creating a child anchor or a pixbuf segment.
7726         (gtk_text_btree_create_child_anchor): new function
7727         (gtk_text_btree_unregister_child_anchor): new function
7728
7729         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7730         allocate_child signal on GtkTextLayout
7731
7732         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7733         values
7734         (gtk_text_iter_get_child_anchor): new function
7735
7736         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7737         default handler for the changed signal, which calls
7738         gtk_text_buffer_set_modified(), instead of just always emitting
7739         changed then calling set_modified() manually. I guess this is
7740         maybe more flexible. It seems logical.
7741
7742 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7743
7744         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7745         now.
7746
7747         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7748
7749 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7750
7751         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7752         been marked static.
7753
7754 2000-11-02  Havoc Pennington  <hp@redhat.com>
7755
7756         * gtk/testgtk.c (create_labels): had a test backward
7757
7758         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7759         fields, so the dest GC ends up with the correct clip origin, 
7760         etc. Fixes a bug where colored labels didn't redraw 
7761         properly.
7762
7763 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7764
7765         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7766         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7767         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7768         Add last argument to t_type_register_static call.
7769         
7770         * gdk/linux-fb/gdkdrawable-fb2.c:
7771         Add last argument to t_type_register_static call.
7772         export the get_image drawable virtual function.
7773
7774         * gdk/linux-fb/gdkimage-fb.c:
7775         Add last argument to t_type_register_static call.
7776         rename gtk_image_get to _gdk_fb_get_image and
7777         export it for use by gdkdrawable-fb2.
7778
7779         * gdk/linux-fb/gdkprivate-fb.h:
7780         export _gdk_fb_get_image.
7781
7782         * gdk/linux-fb/gdkselection-fb.c:
7783         Add new api call stubs.
7784
7785         * gtk/Makefile.am:
7786         Missing ( in linux-fb part.
7787
7788         * modules/linux-fb/Makefile.am:
7789         Must link with gdk_pixbuf or get unresolved symbol.
7790
7791 2000-11-01  Havoc Pennington  <hp@pobox.com>
7792
7793         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7794         GTK_TYPE_TEXT_ITER and BOXED marshallers
7795
7796         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7797
7798         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7799         
7800         * gtk/gtk-boxed.defs: add GtkTextIter
7801
7802         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7803         properly use OBJECT and BOXED
7804
7805 2000-11-01  Havoc Pennington  <hp@redhat.com>
7806
7807         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7808
7809         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7810         before returning it. 
7811         
7812 2000-11-01  Havoc Pennington  <hp@redhat.com>
7813
7814         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7815         Clip the rectangle to be rendered to the drawable, since
7816         get_from_drawable() requires a region within the drawable
7817
7818 2000-11-01  Havoc Pennington  <hp@redhat.com>
7819
7820         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7821         from coordinates.
7822
7823 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7824
7825         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7826         it isn't NULL.
7827
7828 2000-11-01  Havoc Pennington  <hp@pobox.com>
7829
7830         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7831         on a label
7832         (gtk_label_finalize): unref the attr list if any.
7833
7834         * gtk/testgtk.c (create_get_image): close test on second click
7835         (make_message_dialog): close dialog if it exists
7836
7837         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7838
7839         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7840         gdk-pixbuf
7841
7842         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7843         from Pango markup format
7844         (gtk_label_set_markup_with_accel): ditto but with accelerator
7845         parsing
7846
7847         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7848
7849         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7850         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7851         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7852         call gdk_window_get_origin().
7853
7854         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7855         implement GDK_PIXBUF_ALPHA_FULL
7856         
7857 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7858
7859         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7860         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7861         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7862         multiple handlers respectively, instead of only treating the
7863         first handler found (bug reported by owen).
7864
7865 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7866
7867         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7868
7869         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7870
7871         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7872         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7873         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7874
7875         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7876         widget.  Needs writing someday.
7877
7878         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7879         the docs.
7880
7881 2000-10-30  Havoc Pennington  <hp@redhat.com>
7882
7883         * gtk/gtktextview.h, gtk/gtktextview.c:
7884         Rename delete_at_cursor delete_from_cursor, and 
7885         move to move_cursor.
7886
7887 2000-10-30  Havoc Pennington  <hp@redhat.com>
7888
7889         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7890         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7891         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7892         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7893         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7894         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7895         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7896         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7897         gtktexttypes.h, gtktextview.c, gtktextview.h:
7898
7899         Massive reindentation and reformatting. Arg alignment and comments
7900         still need fixing in various places.
7901
7902 2000-10-30  Havoc Pennington  <hp@redhat.com>
7903
7904         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7905         to be named insert_at_cursor and delete_at_cursor so C++ can
7906         handle them.
7907
7908 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7909
7910         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7911         to get a double directory separator in case the home directory
7912         ends with one. This would cause trouble especially on Windows,
7913         where the path will be confused with the syntax for an an UNC
7914         (network share) path \\server\share\path.
7915         (gtk_rc_add_initial_default_files): Ditto.
7916
7917 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7918
7919         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7920
7921         * gtk/gtktextview.c: Use correct marshallers.
7922
7923 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7924
7925         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7926         use new iter stuff, and added all the appropriate signals et al.
7927
7928         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7929         code is internal to gtk only.
7930
7931 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7932
7933         * gtk/gtk.def
7934         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7935         glib-genmarshal etc.
7936
7937 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7938
7939         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7940         parallel builds.
7941
7942 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7943
7944         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7945
7946 2000-10-27  Robert Brady  <robert@suse.co.uk>
7947
7948         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7949         en_GB (British), ia (Interlingua).
7950
7951 2000-10-26  Havoc Pennington  <hp@redhat.com>
7952
7953         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7954
7955         Fixed output of:
7956         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7957         
7958         * gtk/gtktextsegment.c (char_segment_new): rename
7959         (_char_segment_new_from_two_strings): rename
7960         (_toggle_segment_new): rename
7961         
7962         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7963         (make_clipboard_widget): make it static
7964         (text_get_func): static
7965         (text_clear_func): static
7966
7967         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7968         static
7969         (hex_changed): make it static
7970         (hsv_changed): make it static
7971         (opacity_entry_changed): make it static
7972
7973         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7974         (toggle_segment_check_func): rename with _gtk
7975
7976         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7977         (_widget_segment_new): rename
7978         (_widget_segment_add): rename
7979         (_widget_segment_remove): rename
7980         (_widget_segment_ref): rename
7981         (_widget_segment_unref): rename
7982
7983         * gtk/gtktextmark.c (_mark_segment_new): Rename
7984         _gtk_mark_segment_new   
7985
7986 2000-10-26  Havoc Pennington  <hp@redhat.com>
7987
7988         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7989         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7990         types
7991
7992         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7993         marshaller types
7994
7995         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7996         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7997         license on these files.
7998
7999         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
8000         work.
8001
8002         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
8003         runtime random number different for each tree, instead of 
8004         a constant I made up.
8005
8006 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
8007
8008         * gtk/Makefile.am: buncha cleanups, kludged build sources
8009         dependencies with a Makefile: oldest-source-stamp dependancy
8010         for the moment. automake is really fighting us here, with
8011         intentionally not allowing user-defined rules or dependancies
8012         prior to it's -include $(DEP_FILES) statement. sucks rocks!
8013
8014         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
8015         to public headers. tehy have a comment stating that they are
8016         "semi-public" aren't included by gtk.h and if enums popup there,
8017         they can be /*< skip >*/-ed.
8018
8019         * gtk/gtktextlayout.h: 
8020         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
8021         added LGPL... <SIGH>
8022
8023 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
8024
8025         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
8026         GtkTreeIter.  Added iterators everywhere.
8027
8028         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
8029
8030         * gtk/gtktreeviewselection.c: Changed to use the iterators.
8031
8032         * gtk/gtktreestore.c: Changed to use the iterators.
8033
8034         * gtk/gtkliststore.c: Commented out the code.  Will convert to
8035         iterators tomorrow.
8036
8037         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
8038         iterators tomorrow.
8039
8040         * gtk/treestoretest.c: Changed to use iterators.
8041
8042         * demos/testgtk/main.c: Moved to use the new iterator system.
8043
8044 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
8045
8046         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
8047         localization misbehaviour.
8048
8049         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
8050         a useless type without copy/free.
8051
8052         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
8053         of GTK_TYPE_CTREE_NODE.
8054
8055 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
8056
8057         * gtk/gtksignal.c:
8058         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
8059         applicable.
8060
8061         * gtk/gtk-boxed.defs (GtkSelectionData): specify
8062         gtk_selection_data_copy and gtk_selection_data_free
8063         do GtkSelectionData work as params in signals.
8064
8065 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
8066
8067         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
8068         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
8069         couldn't they at least give it a non-standard name?
8070         
8071         * gtk/gtktextlayout.c: arg! yet another implementation of
8072         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
8073
8074         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
8075         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
8076         home. now i know this _is_ a conspiracy.
8077
8078         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
8079         ::state-changed.
8080
8081         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
8082         (gtk_accel_group_create_add): marshaller signature fixups.
8083
8084         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
8085         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
8086
8087         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
8088         anymore.
8089
8090 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
8091
8092         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
8093         due to the signal system changes, it wouldn't build currently. to
8094         be fixed soon.
8095
8096         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
8097
8098         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
8099         so it needs gtk_marshal_VOID__ENUM() instead of
8100         gtk_marshal_NONE__UINT().
8101
8102         * gdk/gdk*.c: adapted type registration functions.
8103
8104         * gtk/gtkbindings.c:
8105         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8106         gone.
8107
8108         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8109
8110         * gtk/gtkobject.c:
8111         (gtk_object_destroy):
8112         (gtk_object_shutdown): fixed recursion guards. basically we have to
8113         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8114         is called during ::destroy, and avoid recursion there.
8115
8116         * gtk/gtktypeutils.c:
8117         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8118         boxed_copy/boxed_free. this needs a more general solution based on a
8119         publically installed code-generator utility.
8120
8121         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8122         glib's gobject has support for that now.
8123         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8124
8125 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8126
8127         * gtk/gtksignal.[hc]:
8128         * gtk/gtkmarshal.[hc]:
8129         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8130         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8131         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8132         care of that.
8133
8134         * *.c: marshaller name fixups.
8135
8136         * gtk/gtkmarshal.list: added a comment briefing the format.
8137
8138 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8139
8140         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8141         compatibility macros here now. more specifically, most of
8142         the API is preserved (yes, _most_, nonwithstanding the
8143         following exceptions listed, the API is stil lHUGE ;)
8144         things that got removed completely:
8145         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8146         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8147         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8148         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8149         gtk_signal_remove_emission_hook().
8150         non-functional functions variants:
8151         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8152         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8153         not supported anymore.
8154         (gtk_signal_compat_matched): new internal function to aid
8155         implementation of the compatibility macros, it  provides
8156         functionality to block/unblock/disconnect handlers based
8157         on func/data.
8158
8159         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8160
8161         * *.c: adaptions to new type registration API signatures.
8162
8163 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8164
8165         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8166
8167 2000-10-25  Robert Brady  <robert@suse.co.uk>
8168
8169         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8170         gdk_property_delete): If window == NULL, assume the root window.
8171         (restoring the behaviour that was in 1.2).
8172         
8173         * gtk/testtext.c (save_buffer): Allow creation of new files when
8174         saving.
8175
8176         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8177         calls to read().
8178
8179 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8180
8181         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8182
8183         * gdk/win32/gdkdrawable-win32.c
8184         * gdk/win32/gdkimage-win32.c
8185         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8186         X11 backend.
8187
8188         * gdk/win32/gdkcc-win32.c
8189         * gdk/win32/gdkcolor-win32.c
8190         * gdk/win32/gdkfont-win32.c
8191         * gdk/win32/gdkinput-win32.c
8192         * gdk/win32/gdkmain-win32.c
8193         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8194
8195 2000-10-24  Havoc Pennington  <hp@redhat.com>
8196
8197         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8198         it a static function
8199
8200         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8201         redraw text when a tag is applied to it.
8202
8203         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8204         (gtk_text_tag_affects_nonsize_appearance): private functions to
8205         see if a tag requires various kinds of redraw/layout to be queued
8206         up.
8207
8208         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8209
8210         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8211         at the start of the buffer, so search works by default
8212
8213         * gtk/gtktextiter.c (lines_match): init match_start always
8214
8215         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8216         function, get iter at a line + a byte index
8217
8218         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8219         to set byte position within a line
8220         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8221
8222 2000-10-23  Havoc Pennington  <hp@redhat.com>
8223
8224         * gtk/testtext.c: Re-enable the "find" dialog
8225
8226         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8227         
8228         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8229         the arguments to gdk_draw_drawable were in the wrong order
8230         (gdk_window_paint_init_bg): This function was ignoring the
8231         init_region, instead of clipping to it, so the entire backing
8232         pixmap was cleared on every begin_paint()
8233         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8234         was in here again, the loop kept using the same GtkWindowPaint
8235         over and over.
8236         (gdk_window_begin_paint_region): Fix a bug where we had two
8237         x_offset instead of x_offset and y_offset
8238
8239         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8240         before we get the image.
8241         (gdk_draw_drawable): get the composite before we draw the drawable.
8242         (gdk_drawable_real_get_composite_drawable): default
8243         get_composite_drawable implementation that returns the drawable 
8244         itself
8245
8246         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8247         get_composite_drawable virtual function
8248
8249         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8250         list-walking bug
8251
8252         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8253         make this work if the source drawable is a GdkDrawableImplX11
8254         instead of a public drawable type. This is really broken; the
8255         problem is that GdkDrawable needs a virtual method get_xid(), but
8256         of course that doesn't work in practice. Enter RTTI.
8257
8258         Also, improve mismatched depth message.
8259
8260         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8261         GdkPixmap
8262
8263         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8264         install _gdk_x11_get_image as our implementation of get_image
8265         
8266         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8267         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8268
8269         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8270         gdk_drawable_get_image
8271
8272         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8273
8274         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8275         get_image
8276
8277         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8278         trailing semicolon after for loop
8279
8280 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8281
8282         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8283         where font_desc for widget's context lagged widget's font_desc by
8284         one step.
8285
8286 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8287
8288         * gdk/win32/gdkgc-win32.c
8289         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8290
8291         * gtk/makefile.mingw.in
8292         * gtk/gtk.def: Updates.
8293
8294         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8295         library.
8296
8297         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8298
8299         * gtk/makefile.msc: Remove
8300
8301         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8302
8303         * gtk/Makefile.am: Add it.
8304
8305         * configure.in: Generate it.
8306
8307         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8308         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8309         something even if not implemented, to satisfy picky MSVC.
8310
8311         Patches by Hans Breuer:
8312         
8313         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8314         SetBkMode() and SetTextAlign() before calling
8315         pango_win32_render().
8316
8317         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8318         Set hcliprgn to NULL after destroying it.
8319         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8320
8321         * gdk/win32/gdkgeometry-win32.c
8322         (_gdk_windowing_window_queue_antiexpose): More effective
8323         implementation.
8324
8325         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8326         depth as default, not the visual's.
8327
8328         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8329         against empty title.
8330
8331         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8332         IMAGE_PRIVATE_DATA.
8333
8334         * gdk/win32/gdkimage-win32.c: Use it.
8335
8336 2000-10-22  Robert Brady  <robert@suse.co.uk>
8337
8338         * configure.in: Check for bind_textdomain_codeset
8339
8340         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8341         present, make use of it.
8342
8343         Add a translatable string "default:LTR" which, if translated
8344         to "default:RTL", will cause the default direction to be
8345         Right-to-Left.
8346
8347         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8348         direction if marked as flippable.
8349
8350         * gtk/gtkhscale.c: Mark widget as flippable.
8351         
8352 2000-10-04  Havoc Pennington  <hp@redhat.com>
8353
8354         * gtk/testgtk.c (create_buttons): create some stock buttons
8355         with the default accel group
8356         (create_image): test some new GtkImage features
8357         (make_message_dialog): test GtkMessageDialog
8358         (create_modal_window): fix someone's bizzarro indentation
8359
8360         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8361         GTK_WIN_POS_CENTER_ON_PARENT. 
8362         Add "destroy with parent" setting, which means the window goes
8363         away with its transient parent.
8364         (gtk_window_get_default_accel_group): get the default accel group
8365         for the window.
8366         (gtk_window_set_destroy_with_parent): set/unset destroy with
8367         parent flag
8368         (gtk_window_read_rcfiles): invalidate icon set caches
8369         after reloading rcfiles 
8370
8371         * gtk/gtkenums.h (GtkWindowPosition): add
8372         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8373         on its parent window when the dialog is mapped for the first time.
8374
8375         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8376         a simple message dialog class
8377         
8378         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8379         handler to emit response signal, and maybe later it would
8380         honor a hide_on_delete flag - though that isn't there yet.
8381         Set border width on the vbox to 2, so we get some padding.      
8382         Use a button box for the action area.
8383         (gtk_dialog_key_press): synthesize a delete event if Esc
8384         is pressed and the GtkWidget key press handler didn't 
8385         handle the escape key.
8386         (gtk_dialog_new_with_buttons): new function creates a dialog
8387         with some default buttons in it.
8388         (gtk_dialog_add_action_widget): add an activatable widget
8389         as a button in the dialog - you can also add a non-activatable
8390         widget by accessing the action area directly.
8391         (gtk_dialog_add_button): add a simple button - stock ID or 
8392         label - to the action area
8393         (gtk_dialog_response): emit response signal
8394         (gtk_dialog_run): block waiting for the dialog, return 
8395         the response. Override normal delete_event behavior, so that 
8396         delete_event does nothing inside gtk_dialog_run().
8397
8398         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8399         emitted when an action widget is clicked or the dialog gets
8400         delete_event
8401
8402         * gtk/gtk.h: add gtkmessagedialog.h
8403
8404         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8405
8406 2000-10-18  Havoc Pennington  <hp@redhat.com>
8407
8408         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8409         where any number of empty lines would get skipped
8410
8411         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8412         edge.
8413
8414         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8415         warning about invalid iterators (explain more thoroughly)
8416         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8417
8418         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8419         big
8420
8421         * demos/*.c: Add error handling
8422
8423         * gtk/gtktextbuffer.c: don't modify const iterators
8424
8425         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8426
8427         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8428         on file load
8429
8430         * gtk/gtkiconfactory.c: Update to reflect addition of error
8431         handling to gdk-pixbuf loaders
8432
8433 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8434
8435         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8436         move to new modularized testgtk.
8437
8438 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8439
8440         * gtk/gtktreeview.c: Draw the arrows correctly.
8441
8442         * gtk/gtktreemodel.c: Added user docs.
8443
8444         * gtk/gtk.h: remove gtktreedatalist.h.
8445
8446         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8447         parent when generating my type.
8448
8449         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8450         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8451
8452 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8453
8454         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8455         GtkTreeModel from object to interface.
8456
8457 2000-10-16  Havoc Pennington  <hp@redhat.com>
8458
8459         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8460         compilation
8461
8462 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8463
8464         * gtk/gtktreeselection.c: Add API documentation to all public
8465         functions.
8466
8467         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8468         functions.
8469
8470 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8471
8472         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8473         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8474         docs to all public functions.
8475
8476         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8477         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8478         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8479         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8480         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8481         issue.
8482
8483 2000-10-14  Robert Brady  <robert@suse.co.uk>
8484
8485         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8486
8487 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8488
8489         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8490         values other then G_TYPE_STRING.
8491         * gtk/gtktreeselection.c: Minor commenting updates.
8492         * gtk/gtktreeview.c: Format updates.
8493
8494 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8495
8496         * README.win32: Update.
8497
8498         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8499         lines that had been deleted by mistake (?).
8500
8501         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8502         also the case fg==white and bg==black (but still not randomly
8503         coloured cursors). Thanks to Wolfgang Sourdeau.
8504
8505         * gdk/win32/*.c: Silence gcc -Wall.
8506
8507         * gtk/gtk.def: Add missing entry points.
8508
8509         Fixes by Hans Breuer:
8510
8511         * gdk/makefile.msc
8512         * gdk/win32/makefile.msc: Update.
8513
8514         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8515         some MSVC thing, presumably), cause breakpoint on failures. Add
8516         GDK_NOR case. Call g_log_set_always_fatal.
8517
8518         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8519         should be pased by reference.
8520         
8521         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8522         
8523         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8524
8525         * gdk/win32/gdkevents-win32.c
8526         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8527
8528         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8529         implementation object.
8530
8531         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8532         not just windows.
8533         
8534         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8535         Use the wrapper object.
8536         
8537 2000-10-06  Havoc Pennington  <hp@redhat.com>
8538
8539         * Makefile.am (SRC_SUBDIRS): contrib subdir
8540
8541         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8542         so it can be used in Xlib version
8543
8544         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8545         tree
8546
8547         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8548         change from 1.0 tree that returns first frame of animation
8549         if the loaded file is an animation.
8550
8551         * contrib: add new directory to hold stuff that comes with GTK+
8552         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8553         
8554         * configure.in: add contrib/*
8555
8556 2000-10-05  Havoc Pennington  <hp@redhat.com>
8557
8558         * demos/testpixbuf-save.c: add pixbuf save test
8559
8560         * demos/Makefile.am: add testpixbuf-save.c
8561
8562 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8563
8564         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8565         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8566         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8567         * gtk/gtktreeselection.[ch]: Replaced
8568         "node_selected"/"node_unselected" signal with "selection_changed"
8569         signal.
8570
8571 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8572
8573         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8574         tree widget.
8575
8576 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8577
8578         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8579         drawing.
8580
8581 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8582
8583         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8584         Move list pointer forwards before removing item from
8585         list. (Crash reported by Salmaso Raffaele)
8586
8587         * gdk/gdkwindow.h: Remove spurious trailing ,
8588
8589         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8590         dependencies on uninstalled libraries, sorry folks.
8591
8592 2000-10-04  Havoc Pennington  <hp@redhat.com>
8593
8594         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8595         gtk/gtkiconfactory.c: Fix copyrights    
8596
8597         * demos/testpixbuf.c: add inline pixbuf test
8598         
8599 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8600
8601         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8602         Add gdk_window_iconify.
8603
8604         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8605         (gdk_window_set_geometry_hints): Add win_gravity
8606         to geometry structure.
8607
8608         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8609         Implement _NET_WM_PING.
8610
8611         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8612         Set _NET_WM_PID on the client leader.
8613
8614         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8615         Handle UTF-8 better.
8616
8617         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8618         UTF-8 better, set _NET_WM_NAME as well. Only set
8619         icon name if it hasn't previously been explicitely 
8620         set.
8621
8622 2000-10-03  Havoc Pennington  <hp@redhat.com>
8623
8624         * gtk/testtextbuffer.c: clean up trailing whitespace,
8625         add extensive tests for tag toggle iteration.
8626         
8627         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8628         distance
8629
8630         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8631         optimize case where the tag root is on level 1
8632         (gtk_text_line_previous_could_contain_tag): attempt to implement
8633         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8634         functionality
8635
8636         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8637         Implement this, though not very efficiently.
8638
8639         * gtk/gtktextiterprivate.h: reformat
8640
8641         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8642         iterator
8643
8644         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8645         this to properly revalidate the iterators.
8646
8647         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8648         properly at the end of the line (and therefore on empty lines)
8649
8650         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8651         maybe we should return a value...
8652
8653 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8654
8655         * config.h.win32: Guard definition of alloca(). glib.h now handles
8656         that.
8657
8658         * gdk/gdk.def
8659         * gtk/gtk.def: Add new entry points.
8660
8661         Changes just to make GTK+ build without errors on Win32. No hope
8662         of it working in its current state, though...:
8663         
8664         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8665         some functions from the X11 backend, just to make GTK+ build.
8666
8667         * gdk/makefile.mingw.in
8668         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8669         number. Add new object files.
8670
8671         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8672         GetMessageTime to get timestamp (where on X11 uses
8673         gdk_x11_get_server_time()).
8674
8675 2000-10-02  Havoc Pennington  <hp@pobox.com>
8676
8677         * gtk/gtktextview.c: text_window_* weren't static and should have
8678         been.
8679         Start work on child widgets; not yet complete, syncing to 
8680         office computer.
8681
8682         * gtk/gtktextchild.h: change this to contain a public interface,
8683         starting work on child interfaces.
8684         * gtk/gtktextchildprivate.h: move private interfaces here
8685
8686         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8687
8688         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8689         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8690         gtk/gtktextmark.c: copyright notices
8691
8692         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8693         internal functions      
8694
8695         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8696         internal function
8697
8698         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8699         Reformatting    
8700
8701 2000-09-30  Havoc Pennington  <hp@pobox.com>
8702
8703         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8704         NULL start/end pointers
8705
8706         * gtk/gtktextbuffer.c: Write some docs
8707         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8708         NULL, so you can just check whether there's a selection.        
8709
8710         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8711         cleanup_line or segments_changed ourselves, it gets done 
8712         in unlink_segment
8713
8714         * gtk/gtktextmark.h:
8715         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8716         
8717         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8718
8719         * gtk/gtktextmark.c: delete some more old Tk cruft
8720
8721         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8722         mark before removing it, so we can emit MARK_DELETED with a valid
8723         pointer.
8724         (gtk_text_buffer_mark_set): hold ref across signal emission
8725
8726         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8727         whining about attempts to delete special marks
8728
8729         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8730         underscore, since it's internal.
8731
8732         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8733         now implemented in terms of iterators in gtktextiter.h
8734
8735         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8736         New function, destructively sets contents of buffer. Also 
8737         a convenient way to clear the buffer by setting text to ""
8738
8739         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8740         multiline string literal
8741
8742         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8743         text changes.
8744
8745         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8746         is not dereferenceable
8747         (gtk_text_iter_forward_lines): fix return value
8748
8749 2000-09-29  Havoc Pennington  <hp@redhat.com>
8750
8751         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8752
8753         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8754         that set border window size to have nicer name
8755         (gtk_text_view_mark_set_handler):  Fix this to have the 
8756         right signature.
8757
8758         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8759
8760         * gtk/testtext.c: Update with API changes, put line numbers on 
8761         both sides.
8762         
8763         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8764         with this
8765
8766         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8767         pixbuf; delete a big block of #if 0 Tk code
8768
8769         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8770         insert_pixmap with insert_pixbuf
8771
8772 2000-09-29  Martin Baulig  <baulig@suse.de>
8773
8774         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8775         confusion with the GdkPixbuf of the GNOME 1.x platform.
8776
8777 2000-09-29  Havoc Pennington  <hp@pobox.com>
8778
8779         * gtk/gtktextview.c: Implement the side windows.
8780
8781         * gtk/testtext.c: Implement simple line numbering in the 
8782         left side window; seems to make scrolling sloooow. Oops.
8783         Also, cursor blink is for some reason causing redraws
8784         of the line numbers. Should investigate...
8785
8786 2000-09-28  Havoc Pennington  <hp@redhat.com>
8787
8788         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8789         scrolling child windows, and draw focus rectangle properly.
8790         
8791         (gtk_text_view_buffer_to_window_coords):
8792         Coordinate transformation to deal with all these freaking windows
8793         and offsets
8794         (gtk_text_view_window_to_buffer_coords): transform the other way
8795
8796         * gtk/testtext.c (create_buffer): Update to match Pango API change
8797
8798         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8799         anonymous tags
8800         (foreach_unref): don't emit remove signal from finalize, just
8801         set tag's parent to NULL
8802
8803 2000-09-26  Havoc Pennington  <hp@redhat.com>
8804
8805         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8806         Fix some warnings       
8807
8808 2000-09-26  Havoc Pennington  <hp@redhat.com>
8809
8810         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8811         headers into the private header list
8812
8813         * Makefile.am (pkgconfig_DATA): install pkg-config files
8814
8815         * configure.in: add pkg-config files
8816
8817         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8818
8819         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8820         outstanding icon caches on theme change.
8821
8822         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8823         important types:
8824
8825         (GtkIconSource): Specification for creating a pixbuf 
8826         appropriate for a direction/state/size triplet from 
8827         a source pixbuf or filename
8828
8829         (GtkIconSet): List of GtkIconSource objects that are used to
8830         create the "same" icon (e.g. an OK button icon), and cache for
8831         rendered icons
8832
8833         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8834         up the icon set for a given stock ID.  GTK maintains a stack of
8835         GtkIconFactory to search, and applications or libraries can add
8836         additional icon factories on top of the stack
8837         
8838         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8839         the set of GtkIconSource specified for a given stock ID into 
8840         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8841         RcStyle, under the specified stock ID.
8842
8843         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8844         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8845         This allows people to theme how prelight, insensitive, etc. are
8846         done.
8847
8848         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8849         icon factories for a style, and return the resulting 
8850         icon set if any.
8851
8852         (gtk_style_render_icon): Render an icon using the render_icon 
8853         method in the GtkStyleClass.
8854
8855         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8856         Use the style for a given widget to look up a stock ID, get the
8857         icon set, and render an icon using the render_icon method 
8858         of the style
8859
8860         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8861         (contains information about a stock item), the built-in stock item
8862         IDs, and functions to add/lookup stock items.
8863
8864         * gtk/stock-icons/*: Stock icons that come with GTK
8865
8866         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8867         a button based on a GtkStockItem
8868         (gtk_button_new_accel): Takes a uline string and accel group, and
8869         installs the accelerator.
8870
8871         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8872         image-display widget.
8873
8874 2000-09-25  Havoc Pennington  <hp@redhat.com>
8875
8876         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8877
8878         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8879         Fix a bug when removing node data, we didn't properly 
8880         re-splice the linked list after removing the data.
8881
8882         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8883         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8884
8885         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8886
8887         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8888         for the layout from the GtkTextTag.
8889
8890         * gtk/gtktexttypes.h: delete tab and search cruft, 
8891         remove g_convert() in favor of GLib version
8892
8893         * gtk/gtktexttypes.c: remove tab implementation from here,
8894         move to Pango
8895
8896         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8897         tab stuff using new PangoTabArray from Pango
8898
8899         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8900         unused border_width stuff
8901
8902 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8903
8904         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8905         glib) and now useless utf_to_latin1() latin1_to_utf()
8906
8907         * gtk/gtktextview.[ch]: Change ::move_insert and
8908         ::delete_text action signals to ::move and ::delete;
8909         create the signals with the right enumeration type,
8910         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8911         C-v bindings, change Home, End to move to beginning/end
8912         of line, Add C-Home C-End to move to beginning/end
8913         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8914         combine ::scroll_text into ::move; use new GtkSelectionData
8915         functions to simplify DND text handling.
8916         
8917         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8918         deletion enumerations here, rename enumeration values to 
8919         be consistently plural.
8920
8921         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8922         for cut/copy/paste and primary selection.
8923
8924         * gtk/gtktextbuffer.[ch]: Remove excess time and
8925         'interactive' arguments from cut/copy/paste;
8926         rename cut to cut_clipboard, etc; remove
8927         gtk_text_buffer_get_clipboard_contents().
8928
8929         * gtk/gtktextlayout.[ch]: Add 
8930         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8931         line ends.
8932
8933         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8934         Functions to set or get a UTF-8 string on the selection
8935         data.
8936
8937         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8938         interfaces.
8939
8940         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8941         created widgets - one of these is useless if we don't.
8942
8943         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8944         a public function clear all targets registered for the
8945         widget.
8946
8947         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8948         Never call gtk_widget_realize() - that was just asking
8949         for bizarre side-effects.
8950
8951         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8952         gdk_selection_owner_set even if the widget is the
8953         same so that we reliably update the timestamp on
8954         the server.
8955
8956         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8957         gdk_x11_get_server_time() function.
8958         
8959         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8960         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8961         Add some tricky filtering on serial numbers for
8962         selection clear events to fix up long-standard
8963         race condition FIXME's in gtkselection.c.
8964
8965         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8966         routines to convert from utf8 to compound text or
8967         STRING and from a text property to UTF-8.
8968
8969         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8970         a convenience function gdk_get_current_event_time().
8971
8972         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8973         and free selection_data->data properly
8974
8975 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8976
8977         * gtk/gtkthemes.c: Remove some unecessary includes.
8978
8979 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8980
8981         * gtk/gtktextdisplay.c
8982         * gtk/gtktextlayout.c
8983         * gtk/gtktexttag.c
8984         * gtk/gtktexttag.h
8985         * gtk/testtext.c: Change the overstrike property to strikethrough,
8986         to closer match pango.
8987
8988 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8989
8990         * gtk/gtktextview.c: Fix up visibility so that focus,
8991         cursor_visible and blink interact properly.  Reenable cursor blink
8992         which had been roughly disabled. Make blink and focus
8993         properly per-view.
8994
8995         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8996         Add a flag for whether to display insertion cursor and
8997         a function to set the flag.
8998
8999         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
9000         get_line_y() to get_line_yrange(), to be a bit more generally
9001         useful.
9002
9003 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
9004
9005         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
9006           do stop_navigating_submenu, to clear last timeout properly.
9007           Also in gtk_menu_motion_notify move ignore_enter above
9008           the conditional to make it always happen as suggested by Owen
9009
9010 2000-09-07  Tor Lillqvist  <tml@iki.fi>
9011
9012         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
9013
9014         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
9015         w32api headers.
9016
9017         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
9018         declarations.
9019
9020         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
9021         (gdk_win32_get_colormap): A line had been deleted by mistake.
9022
9023         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
9024         (gdk_event_translate): Handle more virtual keycodes to be able to
9025         generate GDK events for Control-comma, Control-period, etc.
9026
9027         * gtk/gtk.def: Add some missing entry points.
9028
9029 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
9030
9031         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
9032         Doc comment fixing. (Mostly non-matching parameter names.)
9033
9034         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
9035         comments a little to avoid looking like a doc comment.
9036
9037         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
9038         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
9039         conversions be changed to GError?)
9040
9041         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
9042         Move private #defines into .c file.
9043
9044         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
9045         order of argument addition, remove duplicates.
9046
9047         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
9048         parent class is FrameClass, not BinClass.
9049
9050         * gtk/gtk.h: Add gtkinvisible, which was missing.
9051         (It's occasionalyl useful for client apps, if seldom.)
9052
9053         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
9054         #define.
9055
9056 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
9057
9058         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
9059         coordinates when creating window, instead of GDK-space
9060         coordinates. (Avoid BadValue on too large windows.)
9061
9062 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9063
9064         * configure.in (use_mmx_asm): Remove conftest* after use along the
9065         lines of AC_TRY_COMPILE.        
9066         
9067         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
9068         of g_dirname, which is deprecated.
9069         (gtk_rc_parse_any): Removed calls to
9070         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
9071
9072         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
9073         Removed calls to g_hash_table_{freeze,thaw}, as they are
9074         deprecated now.
9075
9076         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
9077         instead of g_basename.
9078         
9079 2000-09-04 Elliot Lee <sopwith@redhat.com>
9080         
9081         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
9082         ANSI warning.
9083
9084 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
9085
9086         * gtk/gtkwidget.h:  Add some documenting comments about 
9087           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
9088           just as owen said on irc.
9089
9090         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
9091           set HAS_DEFAULT.  Only set it if there isn't another window
9092           holding it (a focus window which RECEIVES_DEFAULT) and only unset
9093           it if the widget is not the focused window with RECEIVES_DEFAULT.
9094           This fixes weird double default bugs in dialogs which has things
9095           call gtk_window_set_default at times.
9096
9097 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
9098
9099         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
9100         Nils Barth and David Santiago to improve submenu
9101         navigation. The patch does this by creating a triangular
9102         region from the point where the pointer leaves the
9103         menu to the submenu.  While the pointer is in
9104         that region and a timeout has not expired, events 
9105         that would cause the active submenu to change are
9106         ignored.
9107
9108 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9109
9110         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9111         moving a toplevel window immediately after sizing it would
9112         result in it being sized back to the old size since 
9113         impl->width, impl->height aren't updated until we hear
9114         back from the server. There is still a (longstanding) bug
9115         here that gdk_window_get_size() will give the wrong size
9116         until we do hear back.
9117
9118 2000-08-31  Havoc Pennington  <hp@redhat.com>
9119
9120         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9121         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9122         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9123         Rename GtkTextStyleValues to GtkTextAttributes
9124
9125 2000-08-31  Havoc Pennington  <hp@pobox.com>
9126
9127         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9128         for rapid testing whether an iterator is the end iterator
9129         (gtk_text_btree_new): init end line cache
9130         (gtk_text_line_is_last): use fast cached line to 
9131         see if we're the last line.
9132         (get_last_line): use cached line here too, should 
9133         speed up some random unrelated code.
9134         
9135 2000-08-30  Havoc Pennington  <hp@pobox.com>
9136
9137         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9138         signals.
9139
9140         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9141         delete_text signals. This allows the signals to be used for
9142         implementing undo.
9143
9144         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9145         provide "interactive" argument when emitting insert_text or
9146         delete_text signal.
9147         
9148 2000-08-30  Havoc Pennington  <hp@pobox.com>
9149
9150         * gtk/gtktextbuffer.c: Docs
9151
9152 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9153
9154         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9155         from switch statements, since Tor removed the enumeration
9156         value.
9157         
9158         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9159         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9160
9161 2000-08-29 Elliot Lee <sopwith@redhat.com>
9162         * */*.h: Use G_GNUC_CONST.
9163
9164 2000-08-27  Havoc Pennington  <hp@pobox.com>
9165
9166         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9167         minor indentation fixes, inserted some FIXME about stuff I
9168         realized was broken while documenting it.
9169         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9170         GTK convention  
9171
9172 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9173
9174         * gtk/testgtk.c (create_styles): Fix double free of
9175         font desc.
9176
9177 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9180         
9181         * gtk/testgtk.c (create_styles): Add a test for modifying
9182         the style through gtk_widget_modify_*.
9183
9184         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9185         a function to get the current modifier style.
9186
9187         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9188         of the passed in GtkRcStyle instead of ref'ing it.
9189
9190         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9191
9192 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9193
9194         * gdk/gdkimage.h
9195         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9196         shared memory image+pixmap GdkImage type, or
9197         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9198         I am dropping that.
9199
9200         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9201         actually call gtk_init_abi_check(), passing also
9202         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9203
9204         * gtk/gtk.def
9205         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9206         New functions, used to check that the GTK+-using code has been
9207         compiled using the correct compiler and switches. In particular,
9208         with gcc one has to use the -fnative-struct switch as GTK+ is
9209         compiled with that.
9210
9211 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9212
9213         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9214         ->prev fields when merging lists. (Found simultaneously
9215         by Pawel Salek and Jakub Jelinek)
9216
9217 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9218
9219         * gdk/gdk.def
9220         * gtk/gtk.def: Add missing entries.
9221
9222         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9223         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9224
9225         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9226         function. Dummy implementation at this point.
9227
9228         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9229         rules. Undefine GTK_COMPILATION when compiling the test programs.
9230         
9231         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9232
9233 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9234
9235         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9236         to convert back and forth from UTF-8 and the "system" (or "current
9237         locale") charset when necessary. Indentation/spacing cleanup.
9238
9239 2000-08-10  Havoc Pennington  <hp@redhat.com>
9240
9241         * Makefile.am (snapshot): Change the format of the snapshot
9242         version to match glib
9243
9244         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9245         from EXTRA_DIST since it doesn't seem to exist
9246
9247 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9248
9249         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9250         version of the directory name (not the UTF-8 one) when building
9251         the path name to stat().
9252
9253 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9254
9255         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9256         PANGO_ATTR_SHAPE set.
9257
9258 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9259
9260         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9261         Peter Osterlund to simplify the code while keeping the
9262         functionality the same.
9263
9264 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9265
9266         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9267         is_viewable() test further inside the function, since removing the 
9268         window from the redraw list without clearing ->update_area
9269         was also very broken.
9270
9271 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9272
9273         * configure.in: Check for <unistd.h>.
9274
9275 2000-08-01  Martin Baulig  <baulig@suse.de>
9276
9277         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9278         to display the message that this is a development version of GTK+.
9279
9280 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9281
9282         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9283         was depending on widget->allocation instead of the width of text_area,
9284         which was incorrect for subclasses like GtkSpinButton.
9285
9286         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9287         with width == 1 tests that should be width == -1.
9288
9289 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9290
9291         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9292         (broken, Elliot, every single window blank on X) custom code with call
9293         to gdk_window_is_viewable() which a) prevents code duplicate and
9294         b) works. 
9295
9296 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9297
9298         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9299         to get the GDK_PARENT_ROOT() macro to work.
9300         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9301         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9302         of, windows that aren't shown.
9303         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9304         pointer grab stuff.
9305
9306 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9307
9308         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9309           s/gtk_main_iteration/g_main_iteration/
9310
9311           Did this already in change:
9312                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9313           don't know how it got reverted.
9314
9315 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9316
9317         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9318         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9319
9320         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9321         not gdk_pixbuf.
9322
9323 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9324
9325         * configure.in,po/{sp,sr}.po: Added Serbian files
9326
9327 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9328
9329         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9330
9331         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9332         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9333         GIOChannel implementation.
9334
9335         * gdk/win32/gdkinput.c
9336         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9337
9338         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9339         definition to match prototype.
9340
9341         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9342
9343 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9344
9345         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9346         function, to allow handling image formats that cannot be detected
9347         by looking at content alone.
9348
9349 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9350
9351         * docs/tutorial/*.gif *.jpg *.eps
9352           Update these to the same look-n-feel.
9353           Why does including images in DocBook suck so badly?
9354
9355 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9356
9357         * gtk/gtktable.c: applied patch from Phil Thompson
9358         <phil@river-bank.demon.co.uk> that enables space settings for
9359         the last row/columns as well.
9360
9361 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9362
9363         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9364         updates the license headers to the GNU Lesser General Public License,
9365         as well as updating the copyright year to 2000.
9366
9367 2000-07-26  Robert Brady  <rwb197@zepler.org>
9368
9369         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9370           and po/Makefile, was installing and looking for them under gtk20
9371           and gtk2 respectively.
9372
9373 2000-07-25  Havoc Pennington  <hp@redhat.com>
9374
9375         * gtk/testtext.c: Comment out some stuff that depends on the rest
9376         of my patches.
9377
9378 2000-07-25  Havoc Pennington  <hp@redhat.com>
9379
9380         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9381         buffer
9382
9383 2000-07-25  Havoc Pennington  <hp@redhat.com>
9384
9385         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9386         widget changes.
9387
9388         * gtk/gtktextview.h: To be consistent with usage of "line"
9389         throughout the API to mean "newline-terminated thingy", change
9390         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9391         to MOVEMENT_LINE.
9392
9393         (GtkTextView): Add flags for default editability, and whether to
9394         show the cursor. Add functions to get/set that. Add 
9395
9396         (gtk_text_view_get_iter_location): new function
9397
9398         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9399         gtktextlayout.h
9400         (g_convert): Add g_convert temporarily, will go in glib in a bit
9401         
9402         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9403         GtkTextTagTableForeach instead of brokenly using GHFunc.
9404         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9405
9406         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9407         moved to public header.
9408
9409         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9410         "invisible", since "elide" was a bad name.
9411         (gtk_text_tag_get_priority): Added
9412
9413         (GtkTextStyleValues): put this in public header, along with
9414         functions to use it.
9415
9416         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9417         longer include gtktextbtree.h.
9418
9419         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9420         gtk_text_mark_deleted
9421
9422         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9423         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9424         to make this possible. Now we only need to install
9425         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9426         (However the Makefile.am isn't changed yet because of the
9427         logistics of merging gtk-hp-patches piecemeal)
9428
9429         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9430         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9431         gtk_text_iter_get_line is now used in the public API for a
9432         different purpose.
9433
9434         * gtk/gtktextiter.h: Clean up function names to be more
9435         consistent. Always call char offset "offset" and byte index
9436         "index". A "line" is always a line number. 
9437
9438         (gtk_text_iter_is_last): new function, more efficient than 
9439         the existing way to check
9440         (gtk_text_iter_is_first): new function, also more efficient
9441
9442         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9443
9444         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9445         gtk_text_iter_forward_char, etc.
9446
9447         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9448         forward_find_tag_toggle, since this isn't a linear search
9449
9450         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9451
9452         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9453         New functions, search for a buffer substring.
9454
9455         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9456         interactive and default editable (since we need to store that info
9457         until we receive the selection data).
9458
9459         Remove all the _at_char and at_line etc. versions of functions;
9460         only have iterator versions.
9461
9462         Add _interactive() versions of functions, that consider the
9463         editability of text. (FIXME add interactive flag to the 
9464         insert/delete signals per Darin's suggestion)
9465
9466         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9467         tag table if necessary
9468
9469         Remove declaration of gtk_text_buffer_get_iter_from_string
9470
9471         (_gtk_text_buffer_get_btree): private/internal function, added.
9472         
9473
9474         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9475         (gtk_text_line_is_last): new function
9476
9477 2000-07-25  Havoc Pennington  <hp@redhat.com>
9478
9479         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9480         using GtkProgressBar. See Changes-2.0.txt for details.
9481
9482         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9483         "pulse_step" which are the equivalent of
9484         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9485         Implement new API.
9486         
9487         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9488         (use_text_format) to mark whether text set on the progress bar is
9489         a format string. Deprecate entire GtkProgress interface.
9490
9491         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9492         (gtk_progress_build_string): make this a no-op if use_text_format
9493         is FALSE
9494
9495         * docs/Changes-2.0.txt: Describe progress bar changes.
9496
9497 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9498
9499         * Makefile.am: Include the build directory.
9500
9501         * configure.in: Generate build/Makefile, build/win32/Makefile,
9502         gdk/, gdk/win32/, and gtk/makefile.mingw.
9503
9504         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9505         Add GETTEXT_PACKAGE.
9506         
9507         * gdk/gdk.def
9508         * gtk/gtk.def: Updates.
9509
9510         * gdk/gdkfont.h
9511         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9512         need them any longer.
9513
9514         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9515
9516         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9517         PANGOWIN32_LIBS and gdk_pixbuf.
9518
9519         * gdk/win32: Compiles, but no doubt doesn't work at all.
9520
9521         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9522
9523         * gdk/win32/gdkinput.c: New file, temporarily.
9524         
9525         * gdk/win32/gdkinput-win32.h: New file
9526
9527         * gdk/win32/gdkinputprivate.h: Remove.
9528
9529         * gdk/win32/gdkpango-win32.c: New file.
9530
9531         * gtk/makefile.mingw.in: New file
9532
9533         * gtk/makefile.cygwin: Removed
9534         
9535         * gtk/Makefile.am: Update accordingly.
9536
9537         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9538         made externally visible.
9539
9540         * gtk/gtkmain.c: Use it.
9541         
9542         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9543         is enough.
9544
9545         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9546
9547 2000-07-24 Elliot Lee <sopwith@redhat.com>
9548         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9549         individual backends already.
9550         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9551         again. Yes, there really is a good reason for this, if you are using the gdkregion
9552         internals, and if you're not, why do you care?
9553         * gdk/gdkwindow.c: Fix inverted condition
9554         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9555         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9556         * gtk/gtkrange.c: Redraw trough when moving.
9557         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9558         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9559
9560 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9561
9562         * configure.in: Check for mkstemp and sigsetjmp. Output
9563         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9564
9565         More work on GDK for Win32. Still in an intermediate state.
9566
9567         * gdk/makefile.cygwin
9568         * gdk/win32/makefile.cygwin: Removed.
9569         
9570         * gdk/makefile.mingw.in
9571         * gdk/win32/makefile.mingw.in: New files.
9572
9573         * gdk/Makefile.am
9574         * gdk/win32/Makefile.am: Generate and distribute them.
9575
9576         * gdk/win32/gdkwindow-win32.h
9577         * gdk/win32/gdkdrawable-win32.h
9578         * gdk/win32/gdkpixmap-win32.h: New files.
9579
9580         * gdk/win32/gdkcolor-win32.c
9581         * gdk/win32/gdkcursor-win32.c
9582         * gdk/win32/gdkdrawable-win32.c
9583         * gdk/win32/gdkgc-win32.c
9584         * gdk/win32/gdkimage-win32.c
9585         * gdk/win32/gdkprivate-win32.h
9586         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9587         Rename fields and variables called xcursor, xid, etc (these names
9588         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9589
9590 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9591
9592         * gtk/gtkentry.[ch]: Fix some problems with vertical
9593         alignment.
9594
9595         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9596         char/byte confusion.
9597
9598 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9599
9600         * gtk/gtktextview.c (changed_handler): Fix bug where
9601         redraw wasn't being done properly when height of
9602         dirty region changed.
9603
9604         * demos/Makefile.am: Remove various references to
9605         -lgmodule
9606
9607 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9608
9609         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9610         PangoAttrShape to reserve space for pixmaps, add 
9611         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9612         in the display functions.
9613         
9614         * gtk/testgtk.c (create_layout): Set some more exotic
9615         scrolled window options
9616
9617         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9618         Add function to set the shadow type of a window, to allow
9619         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9620         which don't draw their own frame.
9621
9622 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9623
9624         * docs/tutorial/package-db-tutorial.sh: New file for
9625           packaging DocBook format tutorial
9626
9627 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9628
9629         * docs/tutorial/gtk-tut.sgml: Minor updates
9630
9631         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9632
9633 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9634
9635         * gtk/gtksignal.c: Fix C++ comment.
9636
9637         * gtk/gtkimmulticontext.c
9638         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9639         don't return value from void functions.
9640
9641         * gtk/gtk.def: Add gtk_rc_style_unref.
9642
9643 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9644
9645         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9646         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9647         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9648         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9649         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9650         gtk/gtktypeutils.h: Include files outside of the extern "C"
9651         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9652         <vakatov@peony.nlm.nih.gov>.
9653
9654 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9655
9656         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9657           Completes first pass. Hurrah!
9658
9659 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9660
9661         * docs/tutorial/gtk-tut.sgml: More clean ups.
9662
9663 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9664
9665         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9666         paint the background of the text area which was accidentally
9667         removed at some point.
9668
9669         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9670           
9671          - Move most of the functionality from the theme vtable
9672            into GtkRcStyleClass and GtkStyleClass. The moved
9673            vtable functions were changed a bit in the move to
9674            work better in their new home.
9675
9676          - Get rid of the engine and engine_data fields from
9677            GtkRcStyle and GtkStyle; instead the theme
9678            engine derives theme-specific subclasses of GtkRcStyle
9679            and GtkStyle
9680
9681          - Add extra dlsym() found entry point to themes,
9682            theme_create_rc_style().
9683
9684         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9685         in gtk_style_real_copy.
9686
9687         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9688         to register a type associated with an engine. (The engine
9689         won't be unloaded as there is an instance of the type.)
9690
9691
9692 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9693
9694         * docs/tutorial/gtk-tut.sgml: Clean ups.
9695
9696 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9697
9698         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9699           of cleaning up to do.
9700
9701 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9702
9703         * gdk/testgdk.c: New file, quick hack to test backends for
9704         pixel-by-pixel correctness of the most simple graphic operations.
9705
9706 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9707
9708         * Really release 1.3.1
9709         
9710         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9711         include structure.
9712
9713 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9714
9715         * Released 1.3.1
9716
9717 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9718
9719         * gtk/gtktextlayout.c: use FALSE for size_only most
9720         of the time when calling gtk_text_layout_get_line_display()
9721         to avoid causing double reshapes when a redraw follows
9722         immediately after.
9723
9724 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9725
9726         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9727         appropriate region and gdk_window_process_updates() so trough
9728         updating doesn't lag behind the window being scrolled.
9729
9730         * gdk/gdkgc.c: Make parent_class pointer static.
9731          
9732 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9733
9734         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9735         include <string.h>.
9736          
9737         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9738         cut-and-paste error in computing memory offset for 4 channels.
9739
9740 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9741
9742         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9743         gtk_rc_append_default_pixmap_path(), since it wasn't
9744         adding an interesting path and we don't have a meaningful
9745         default for this value.
9746
9747 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9748
9749         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9750         gtk-config to gtk-config-2.0 move gtk_.m4 to
9751         gtk-2.0.m4
9752
9753         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9754         gdk/Makefile.am demos/Makefile.am: Change 
9755         library names to libgtk-1.3.la, etc, so that we
9756         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9757
9758         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9759         gdk/Makefile.am gdk/x11/Makfile.am
9760         Move include files into /usr/include/gtk-2.0, 
9761         /usr/lib/gtk-2.0/include/
9762          
9763         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9764         gtk/gtkintl.h: Change package for gettext from 
9765         gtk+ to gtk20. Put hack in autogen.sh to modify
9766         po/Makefile.in.in after gettextize to make this
9767         possible.
9768
9769         * gtk+.spec: Some updates, not tested.
9770
9771         * gdk-pixbuf/Makefile.am: Move loaders into
9772         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9773
9774         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9775         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9776         to THEMENAME/gtk-2.0/. Move engine directory  to
9777         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9778         
9779 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9780
9781         Win32 changes, still doesn't build though.
9782
9783         * gdk/makefile.cygwin
9784         * gdk/win32/makefile.cygwin
9785         * gtk/makefile.cygwin: Updates.
9786
9787         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9788         default values for fg and bg pixel as X11 does (0 and 1), not
9789         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9790         Use 0 for pen width by default (treated as 1 anyway later, but for
9791         apps that might check the value in the GdkGC).
9792         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9793         interface to gdk_gc_predraw and _postdraw.
9794
9795         * gdk/win32/gdkwin32.h
9796         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9797
9798         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9799         extraneous semicolon.
9800
9801         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9802
9803         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9804         not the Win32 bitspixel value.
9805
9806         * gdk/win32/gdkcc-win32.c:
9807         * gdk/win32/gdkcolor-win32.c 
9808         * gdk/win32/gdkprivate-win32.h
9809         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9810         GDK object structure.
9811
9812 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9813
9814         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9815         * docs/tutorial/gtk_tut_it.sgml (name): 
9816         * docs/tutorial/gtk_tut_fr.sgml (name): 
9817         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9818         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9819
9820 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9821
9822         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9823           small changes.
9824
9825 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9826
9827         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9828         a bug here, never been here and never fixed anything ;(
9829         (don't segfault if tree->root_tree is NULL, which happens prior
9830         to widget realization, but puke instead).
9831
9832 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9833
9834         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9835         add the necessary tokens.
9836
9837         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9838         (gtk_rc_style_to_style): copy thicknesses.
9839         (gtk_rc_init_style): apply thicknesses.
9840         (gtk_rc_parse_style): parse xthickness and ythickness.
9841
9842         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9843
9844         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9845         (gdk_window_new): 
9846         (_gdk_windowing_window_init): 
9847         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9848         (gdk_pixmap_create_from_data): 
9849         (gdk_bitmap_create_from_data): 
9850         (gdk_pixmap_new): 
9851         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9852         (gdk_image_new): 
9853         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9854         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9855         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9856         (gdk_colormap_get_system): 
9857         (gdk_colormap_new): 
9858         * gdk/gdkwindow.c (gdk_window_init): 
9859         * gtk/gtkstyle.c (gtk_style_new):
9860         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9861         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9862         * gtk/gtkrc.c (gtk_rc_style_new):
9863         use g_object_new() instead of g_type_create_instance() which
9864         is a private function for fundamental type implementations.
9865
9866 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9867
9868         * configure.in: Add check for db2html
9869
9870 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9871
9872         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9873         hack to set glib_debug_objects based on gtk_debug_flags.
9874
9875 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9876
9877         * INSTALL.in: Update the Prerequisites section.
9878
9879         * Makefile.am demos/Makefile.am docs/Makefile.am
9880         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9881         gdk/linux-fb/Makefile.am: Dist fixes
9882
9883 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9884
9885         * NEWS: 10,000 foot view of 1.3.1 changes.
9886
9887 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9888
9889         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9890         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9891         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9892         gdk/x11/gdkmain-x11.c: 
9893
9894         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9895         as a return value of gdk_*_grab(). Previously, we just
9896         returned the X11 values directly.
9897
9898 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9899
9900         * gdk/x11/Makefile.am: Patch from George Lebl to 
9901         install all the headers in the right place.
9902
9903 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9904
9905         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9906           initial conversion to DocBook.
9907
9908 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9909
9910         * README.win32: Improve a bit.
9911
9912         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9913         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9914         Alt+0nnn on the numpad (used to enter characters by numeric code
9915         from current DOS or ANSI codepage) working correctly, as in other
9916         Windows apps.
9917
9918         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9919         same argument validity tests as in X11 version.
9920         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9921
9922         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9923         definitions in case missing from headers.
9924
9925         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9926         destroy the window-specific cursor.
9927         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9928         calling GetModuleHandle(NULL).
9929         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9930         with CopyCursor before setting it as the window-specific
9931         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9932         also its Windows cursor) after calling this function. Destroy any
9933         previous window-specific cursor.
9934
9935 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9936
9937         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9938         font charset is iso8859-1, not iso-8859-1.
9939
9940 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9941
9942         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9943         Use g_get_charset() instead of g_get_codeset().
9944
9945         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9946         Comment out some strdup'ing functions to keep timj
9947         happy until we finish fighting this out.
9948
9949 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9950
9951         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9952         <= width or height.
9953
9954         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9955         from 1.2 for parent/child states.
9956
9957         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9958         of typos.
9959
9960         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9961         event structures, replace with a generic axes field. Replace 
9962         deviceid/sourec with GdkDevice *device.
9963
9964         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9965         to extract particular axis use value from event. (Also
9966         can be used for normal X/Y.)
9967
9968         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9969         allow for arbitrary number of axes, namespace everything
9970         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9971         everywhere.
9972
9973         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9974         Get rid of the gdk_input_vtable setup if favor of simply
9975         defining the functions in gdkinput-none/gxi/xfree.c in
9976         a similar fashion to the way that the port structure is 
9977         done.
9978
9979         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9980         for new event structures. 
9981
9982         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9983         new device interfaces.
9984
9985 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9986
9987         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9988         set the initial text.
9989
9990         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9991         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9992         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9993         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9994
9995         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9996         pango_layout_set_font_description to simplify.
9997
9998 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9999
10000         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
10001         pango_layout_set_font_description to simplify.
10002
10003 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
10004
10005         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
10006         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
10007         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
10008
10009         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
10010         PANGO_PIXELS() macro.
10011
10012 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
10013
10014         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
10015         that returns a PangoContext owned by the widget and updated to
10016         match future changes in the widget. Also, make 
10017         gtk_widget_create_pango_layout() use this context. If we ever
10018         add a ::changed signal to PangoContext, this will make things
10019         much more convenient. 
10020
10021         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
10022         in the appropriate places instead of destroying the layouts and
10023         creating new ones.
10024
10025         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
10026         in a few strategic places.
10027
10028 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
10029
10030         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
10031         gtk_widget_size_request() on reparented child, if one. Otherwise,
10032         queue_resize() on the child never results in it getting size-requested
10033         at all.
10034
10035         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
10036         in option menus, so that (with luck) people won't copy it into
10037         their apps in the future.
10038
10039         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
10040         to gtk_option_menu_calc_size. This isn't perfect, but should fix
10041         a lot of problems with changing the size of the menu's menu
10042         items after adding it to the option menu.
10043
10044         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
10045
10046         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
10047         the text direction for a widget changes.
10048
10049         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
10050         ::direction_changed to get rid of various hacks.
10051
10052 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
10053
10054         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
10055         name.
10056
10057 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
10058
10059         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
10060         flag to the structure. Do not call XFreePixmap on pixmaps created
10061         by gdk_pixmap_foreign_new().
10062
10063 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
10064
10065         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
10066         value using GdkRGB functionality given GdkColormap and GdkColor.
10067         (name not final, waiting for inspiration.)
10068         
10069         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
10070         set the foreground/background of a GC using the GC's colormap
10071         and GdkRGB. (name not final, waiting for inspiration.)
10072
10073         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
10074         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
10075
10076         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
10077         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
10078         purely a function of the corresponding colormap. Make
10079         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
10080
10081         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
10082         gdk_pixbuf_*create_from_xpm_* in terms of
10083         gdk_pixbuf_new_from_xpm_data(), move into platform independent
10084         code.
10085
10086         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
10087         advantage of the new draw_rgb_32_image_dithalign.
10088
10089         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
10090
10091         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
10092         on each created GC.
10093
10094         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
10095
10096         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
10097         which we initialize from the drawable when the GC is created,
10098         if the drawable has a colormap.
10099
10100         * gdk/x11/gdkgc-x11.c: include string.h for memset.
10101
10102         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
10103
10104         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10105
10106 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10107
10108         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10109         actually returning expose events, make sure to set
10110         the count field properly.
10111
10112         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10113         accidentally reintroced bug which always cleared
10114         the graphics_exposures value. 
10115
10116 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10117
10118         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10119
10120 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10121
10122         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10123
10124 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10125
10126         * docs/faq/gtk-faq.sgml: Start of Section 6.
10127
10128 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10129
10130         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10131         
10132         (Fixes problem with drawing childless frames. Pointed out
10133         by and a first patch from Anders)
10134         
10135         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10136         compute a child_allocation, even if we don't have a child.
10137
10138         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10139         Always chain to the parent's impl, even if we don't have a child.
10140
10141 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10142
10143         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10144         use multiple parts of it instead of creating a bunch of separate
10145         segments, since the maximum number of segments per system is not
10146         large. (This might be worth backporting to GTK+-1.2.x if we make a
10147         new release )
10148
10149         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10150         structure in preparation for per-colormap GdkRGB.
10151
10152         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10153         to False when we get EINVAL from shmget so that the caller of
10154         gdk_image_new can retry with a smaller segment size.
10155
10156 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10157
10158         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10159
10160 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10161
10162         * configure.in: make the current version number 1.3.1 (binary age 0,
10163         interface age 0).
10164         
10165         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10166         gtkcompat.h is all we want.
10167
10168         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10169         GLib primitive types. fixed g_type_register_fundamental() argument
10170         ordering.
10171
10172         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10173         compiles.
10174
10175         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10176         object code cleanup, comment trigraph fixes, etc...
10177
10178 2000-06-23  Havoc Pennington  <hp@redhat.com>
10179
10180         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10181         instead of making up a bogus name for first_para_mark
10182
10183         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10184         0 as a context ID
10185
10186 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10187
10188         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10189
10190 2000-06-21  Havoc Pennington  <hp@pobox.com>
10191
10192         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10193         we didn't check window->bg_pixmap != GDK_NO_BG.
10194
10195         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10196         gdk-pixbuf
10197
10198 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10199
10200         * docs/faq/gtk-faq.sgm: Move file to here.
10201           TODO: Update Makfile.am 
10202
10203 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10204
10205         * docs/gtk-faq.sgm: Add Section 2
10206
10207 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10208
10209         * docs/gtk-faq.sgm: New file. Start of DocBook
10210           version of the FAQ.
10211
10212 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10213
10214         * configure.in (GDK_PIXBUF_MAJOR): Define version
10215         numbers for GDK_PIXBUF_*, as they get substituted
10216         into a header file. Need to consider versioning
10217         for gdk-pixbuf more carefully later.
10218
10219 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10220
10221         Work with srcdir != builddir.   
10222         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10223         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10224         * demos/testpixbuf.c: Likewise.
10225         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10226         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10227         <gdk/x11/gdkx.h>.
10228         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10229         "gdk-pixbuf.h".
10230         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10231
10232 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10233
10234         * TODO.xml: Change 1.4 version numbers to 2.0.
10235
10236 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10237
10238         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10239         fixups to GTK+ standard.
10240
10241 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10242
10243         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10244         gdk-pixbuf.
10245
10246         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10247         fixups for GObject.
10248
10249         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10250         gdk-pixbuf with GDK dependencies moved into GDK.
10251         
10252         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10253         move gdk-pixbuf-loader here until GObject has signals.
10254
10255         * demos/: New directory of demos. Move demos from
10256         gdk-pixbuf here.
10257
10258         * demos/pixbuf-init.c: Small bit of code to check for
10259         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10260         set GDK_PIXBUF_MODULEDIR appropriately.
10261
10262         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10263         define which no longer makes sense.
10264
10265 2000-06-21  Havoc Pennington  <hp@redhat.com>
10266
10267         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10268         gtk_get_default_language
10269
10270         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10271         new function to get the default language
10272
10273         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10274         s/gtk_text_view_style_values/gtk_text_style_values/
10275
10276         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10277         Add a "language" field to tags.
10278
10279         (gtk_text_tag_set_arg): Fix bug in setting
10280         "bg_full_height_set" tag.
10281
10282 2000-06-21  Havoc Pennington  <hp@redhat.com>
10283
10284         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10285         in the interfaces
10286
10287         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10288         stuff instead when possible.
10289
10290         * gtk/gtktexttypes.h: Delete some unused constants
10291
10292         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10293         testtextbuffer.c: use glib instead of custom unicode routines
10294
10295 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10296
10297         * docs/es/: Removed mistakenly added generated sgml
10298
10299         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10300         Remove outdated info files.
10301
10302         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10303         Moved tutorial files into subdir
10304
10305         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10306         subdir.
10307
10308         * docs/man/gtk_button.pod: Remove. (contents will be
10309         integrated into gtk-reference button page.)
10310
10311         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10312         docs/faq/Makefile.am: Adjust for new organization
10313
10314 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10315
10316         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10317         not $(MKINSTALLDIRS)
10318
10319 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10320
10321         * gtk/testgtk.c (create_text): Finish the job Elliot started
10322         of removing font setting test for text widget. (Since text widget
10323         and GdkFont are not deprecated, and cause portability problems.)
10324
10325 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10326
10327         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10328         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10329         Remove use of libunicode in favor of new GLib functions.
10330
10331         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10332         nano-x, framebuffer. The X11 include is just a hack until we get
10333         the necessary functions in gdkcolor.h, so there is no reason to
10334         add other includes of platforms.
10335
10336         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10337         window bigger than the screen change.
10338
10339         * gtk/testgtk.c: Revert some random changes from Elliot
10340         that had no particular point and were causing testgtkrc
10341         not to function correctly.
10342         
10343         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10344         because GdkSegment and GdkRegionBox have the same fields,
10345         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10346         results in clearer code.
10347
10348         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10349         gdk_input_translate_coordinates): Fix missed GdkObjectification
10350
10351 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10352
10353         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10354         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10355
10356 2000-06-20  Havoc Pennington  <hp@redhat.com>
10357
10358         * modules/linux-fb/Makefile.am: Make this compile
10359         without framebuffer enabled
10360
10361         * gdk/linux-fb/Makefile.am: Add conditional to not build
10362         framebuffer unless specified in configure
10363
10364         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10365         the size of the target instead of source if -1 was passed for
10366         width/height
10367
10368         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10369         width/height confusion.
10370
10371 2000-06-19  Havoc Pennington  <hp@redhat.com>
10372
10373         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10374         GDK_DRAWABLE_XID. In the future, we probably want to make it
10375         faster with G_DISABLE_CHECKS turned on.
10376
10377 2000-06-14  Havoc Pennington  <hp@redhat.com>
10378
10379         * gdk/Makefile.am: add gdkpixmap.c
10380
10381         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10382         s/gdk_image_init/_gdk_windowing_image_init
10383
10384         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10385         ref/unref
10386
10387         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10388
10389         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10390         GdkWindowType is now non-deprecated; 
10391         change gdk_window_get_type() compat to be
10392         gdk_window_get_window_type().
10393
10394         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10395
10396         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10397         virtual GObject. Make all functions call into the vtable.
10398         Move gdk_image_put() guts in here. Remove GdkDrawableType
10399         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10400         draw_image, get_depth, get_size, set_colormap, get_colormap,
10401         get_visual added to the vtable.
10402         
10403         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10404         GObject. Virtualize everything. 
10405         (gdk_gc_new_with_values): remove check for destroyed window,
10406         because now GdkWindow::create_gc will check this.
10407         (gdk_gc_set_values): New function to set GC values, this 
10408         was already implemented but wasn't in the header
10409
10410         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10411
10412         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10413         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10414         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10415         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10416         _gdk_windowing_window_init, rename gdk_image_init to
10417         _gdk_windowing_image_init.
10418         
10419         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10420         (gdk_draw_layout): Remove check for destroyed window, 
10421         because all the drawable methods already check it.
10422         
10423         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10424         Add gdkpixmap.c which contains implementation of GdkDrawable
10425         virtual table (by chaining to a platform-specific implementation
10426         object).
10427         
10428         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10429         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10430         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10431         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10432         GdkColormapPrivate. 
10433
10434         * gdk/gdktypes.h: #include <glib-object.h>
10435
10436         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10437         Move most functionality to platform-specific implementation
10438         object. GdkWindow itself now handles the backing store, then
10439         chains to the platform-specific implementation.
10440         (gdk_window_get_window_type): return GdkWindowType of the window.
10441         (gdk_window_peek_children): New routine, returns the children of 
10442         a GdkWindow
10443         (gdk_window_get_children): Was in X11-specific code and did 
10444         XQueryTree. Changed to simply return a copy of window->children; 
10445         so it can go in cross-platform code.
10446         
10447         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10448
10449         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10450         GdkColormap; just changed to use the new private data instead
10451         of casting to GdkColormapPrivate.
10452
10453         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10454         gdk_cursor_new().
10455
10456         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10457         (private data member in the GObject). 
10458         (xdnd_manager_source_filter): Function had broken 
10459         error handling, fix it (use gdk_error_trap_push).
10460
10461         * gdk/x11/gdkdrawable-x11.c: This file now implements
10462         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10463         base class is purely for the convenience of the X port,
10464         and not part of the interface to cross-platform GDK.
10465
10466         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10467         
10468         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10469         specific to X, and returned by the create_gc virtual method
10470         of GdkDrawableImplX11. 
10471         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10472         rather than gchar, this was also changed in the GdkGC vtable.
10473         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10474         mask is 0, return immediately, instead of checking every flag.
10475         This is faster, and keeps us from segfaulting if values is NULL
10476         and the mask contains some nonzero flags.
10477
10478         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10479         GdkWindow.
10480
10481         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10482         GdkWindowPrivate is gone.
10483
10484         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10485
10486         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10487         remove the image_put stuff that got transferred to GdkDrawable.
10488         
10489         * gdk/x11/gdkinput.c: renamings
10490
10491         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10492
10493         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10494
10495         * gdk/x11/gdkprivate-x11.h: indentation fixes
10496
10497         * gdk/x11/gdkproperty-x11.c: renamings
10498
10499         * gdk/x11/gdkselection-x11.c: renamings
10500
10501         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10502         implements the platform-specific "impl" object.
10503         Moved gdk_window_get_children to gdk/gdkwindow.c
10504
10505         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10506         that no longer exist. Add declaration of GdkGCX11 object here.
10507         Fix all the macros to still work. 
10508
10509         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10510         GdkDragContext from the boxed types since they are now GObjects.
10511
10512         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10513         moved xthickness/ythickness into the instance. GtkStyleClass
10514         functions are now in the standard vtable for GtkStyle, so you have
10515         to create a GObject subclass to write a theme engine.
10516         (gtk_style_copy): fixed a leaked PangoFontDescription
10517         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10518         can be the standard GObject function.
10519         
10520         * Throughout GTK:
10521         s/style->klass->[xy]thickness/style->[xy]thickness
10522         s/pango_layout_unref/g_object_unref/
10523
10524         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10525         
10526         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10527         accessing GDK internals.
10528
10529         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10530         accessing GDK internals.
10531
10532 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10533
10534         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10535
10536         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10537         problem by calculating event position relative to the trough
10538         rather than the slider.
10539         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10540
10541         * gdk/gdkgc.h: Add GDK_NOR.
10542
10543         * configure.in, Makefile.am: Add modules top level dir
10544         * configure.in: Only use pangox library if building x11 target.
10545         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10546
10547 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10548
10549         * gtk/gtkcolorsel.c: Change private class member to be named
10550         private_data throughout the file.
10551
10552         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10553         private_data to avoid clashing with keyword.
10554
10555 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10556
10557         * gdk/gdkdnd.h: Add comment to remove warning.
10558
10559 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10560
10561         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10562         Byelorussian language; changed the Makefile and file names 
10563         to reflect that.
10564
10565 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10566
10567         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10568         rather than gdk_window_hide; this makes things work
10569         correctly if the window is programmatically hidden while
10570         iconified.
10571
10572 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10573
10574         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10575         cut and paste typo where wrong pixmap was being
10576         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10577
10578 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10579
10580         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10581         Add helper function to compute format / bytes 
10582         relationship. Use in a couple places to fix up
10583         errors which assume 8 * format.
10584
10585         * gtk/gtkselection.c (gtk_selection_request): Use 32
10586         rather than 8 * sizeof (GdkAtom), to work correctly
10587         on Alpha.
10588
10589 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10590
10591         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10592         libgtk.la
10593         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10594         versions
10595
10596         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10597         checking macros return NULL since the function has a return value.
10598
10599 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10600
10601         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10602         GTK+ from building at all.
10603
10604         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10605
10606 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10607
10608         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10609         gtk/Makefile.am: make it possible to configure gtk for different
10610         targets on the same platform. The library name is now 
10611         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10612         flag. Only the x11 target compiles right now.
10613         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10614         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10615         * gdk/nanox/gdk*generic*: delete generic region code.
10616         * gdk/linux-fb/gdk*generic*: delete generic region code.
10617         * README.nanox: update information.
10618         
10619 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10620
10621         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10622         prepend not append. (Pointed out by Brett Hall.)
10623
10624 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10625
10626         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10627
10628 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10629
10630         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10631         need this later, and this makes sure that the atexit for
10632         glib gets called after that for GDK, so atexits are
10633         properly ordered for object leak checking.
10634
10635         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10636
10637         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10638         pango_x_shutdown_display()
10639
10640         * gtk/simple.c (main): Close window on destroy.
10641
10642 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10643
10644         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10645         to treat initial creation different from setting with 
10646         regards to the graphics-exposures parameter, so add a parameter
10647         indicating whether this is initial or not.
10648
10649 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10650
10651         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10652         to sort of work by adding an extra return_exposes arg
10653         to gdk_event_translate() - it might be better to simply
10654         deprecate the function altogether and force people to rewrite
10655         without it. gdk_window_scroll() handles most of it, and where
10656         gdk_window_scroll() doesn't work, simply redrawing more does.
10657
10658         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10659         assertion.
10660
10661         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10662
10663         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10664         bunch of pretty much useless /* Print debugging info */ comments 
10665         which had drifted away from the code they were commenting.
10666
10667 2000-06-02  Havoc Pennington  <hp@pobox.com>
10668
10669         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10670         is in working order.
10671         
10672         * gtk/testtext.c: Change to reflect anonymous mark API
10673
10674         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10675
10676         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10677         field, which was unused.
10678
10679         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10680         saves some typing.
10681
10682         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10683
10684         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10685         flag on the insertion point and selection bound
10686
10687         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10688         make mark-manipulation functions take a GtkTextMark* instead of a
10689         mark name.
10690         
10691         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10692         GtkTextMarkBody; will be used to detect attempts to delete
10693         the permanent marks (insert and selection bound)
10694
10695         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10696
10697 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10698
10699         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10700         flag to on.
10701
10702         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10703         Honor DOUBLE_BUFFRED_FLAG
10704
10705         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10706         function to set the DOUBLE_BUFFERED flag.
10707
10708         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10709         or not exposes done on the widget should be double-buffered.
10710
10711         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10712         to be what would be expected. (Fixes problem with a
10713         g_return_if_fail() validating a TextDirection enumeration)
10714
10715 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10716
10717         * gtk/gtkwidget.c: Remove all references to 
10718         offscreen flag which was no longer used.
10719
10720         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10721
10722         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10723         for non-null label_widget->parent.
10724
10725         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10726         which no longer was used.
10727
10728         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10729
10730         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10731         for null arguments.
10732
10733         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10734         check for destroyed windows.
10735
10736 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10737
10738         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10739         the slave context there.
10740
10741         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10742         identical to GtkWindow.
10743
10744 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10745
10746         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10747         pangox to here, so we can write them independent of rendering
10748         system, using GDK primitives.
10749
10750         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10751         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10752         since we have a rendering-system independent implementation in
10753         terms of draw_glyphs().
10754         
10755         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10756         function to render a single line.
10757
10758         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10759         into ../gdkpango.c, which simplifies things, since we
10760         don't have to deal with raw X gc's.
10761
10762 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10763
10764         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10765         get the logical attributes for a given GtkTextLine.
10766
10767 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10768
10769         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10770         g_locale_get_codeset() to g_get_codeset() change.
10771
10772 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10773
10774         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10775         descriptions.
10776
10777         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10778         the entry.
10779
10780         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10781         redoing (vastly simplifying) for Pango. Still needs quite
10782         a bit of work. (Size selection is currently poor. List of 
10783         predefined sizes is not a good idea, since all of these
10784         sizes won't necessarily be distinct.)
10785
10786 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10787
10788         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10789         CODESET results for LANG=C.
10790
10791 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10792
10793         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10794         which takes a stringized pango font description;
10795         ignore the older 'font' and 'fontset' declarations.
10796
10797         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10798         field with a GdkFont derived via gdk_font_from_description(),
10799         for compatibility. (Should we just remove it entirely?
10800         Probably too much compatibility breakage, but people
10801         should be migrating to the new Pango stuff as quickly
10802         as possible.)
10803
10804 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10805
10806         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10807
10808 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10809
10810         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10811         redoing; there are some bugs in size allocation right
10812         now, the semi-existant distinction between header / day
10813         fonts was removed, but, with Pango, could actually
10814         be made functional in a nice way.
10815         
10816         * gtk/testcalender: Move calender from examples into this
10817         directory as a test program. (We really need to restrcture
10818         testgtk into a whole directory full of tests for every
10819         widget or functionality group, separated into multiple .c
10820         files.)
10821
10822 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10823
10824         * gtk/testgtk.c (file_exists): Fix stupid typo that
10825         was keeping RC file from being loaded.
10826
10827         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10828         RC file font code.
10829
10830 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10831
10832         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10833         Add function to load a GdkFont from a PangoFontDescription.
10834
10835 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10836
10837         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10838         variable should be of type GdkEventPrivate.
10839
10840 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10841
10842         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10843         to have any widget for the label, use a GtkLabel widget
10844         to display the text. (Based partially on a patch from
10845         Anders Carlson.)
10846
10847         (Quite a bit of code reorganization - strip 90% of the
10848         guts out of gtkaspectframe and add a single virtual
10849         func to GtkFrameClass - compute_child_allocation.)
10850
10851 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10852
10853         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10854         (Removed clist->row_center_offset field because caching
10855         it wasn't saving time or code, added private function
10856         _gtk_clist_create_cell_layout()).
10857
10858 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10859
10860         * gtk/gtkaccellabel.c: Pangoized.
10861
10862         * gtk/[hv]ruler.c: Pangoized
10863
10864 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10865
10866         * gtk/gtkfilesel.c (gtk_file_selection_init):
10867         Use gtk_clist_set_column_auto_resize() to remove need
10868         need for manual column width computations.
10869
10870 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10871
10872         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10873         ensuring Pango correctness, and considerably simplifying the
10874         code.
10875         
10876         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10877
10878         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10879         getting of numbers of lines.
10880
10881         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10882         to the actual requested width of the lable, not to the wrap
10883         width we set.
10884
10885         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10886
10887         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10888           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10889
10890         * gtk/gtktextview.c: Fix structure inheritance.
10891
10892         * gtk/gtkprogressbar.c: Pangoize.
10893
10894 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10895
10896         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10897         in a function.
10898
10899         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10900         bug with computing line tops.
10901
10902         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10903
10904 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10905
10906         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10907         and y_offset coordinates to do what we need now. (The offset between
10908         buffer and layout coordinates has been reintroduced, but is a 
10909         bit different than before.)
10910
10911         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10912         handle the adjustments ourselves, and scroll as necessary using
10913         the new gdk_window_scroll().
10914         
10915         The advantage of this is that when we are incrementally revalidating,
10916         we are essentially rearranging things around the visible portion
10917         of the screen. With the old setup, the visible portion of the
10918         screen was moved around in the layout, so scrolling and redrawing
10919         to track that caused jumping of the display. Since we now
10920         control the scrolling ourselves, we can suppress this and
10921         only redraw when things actually change.
10922
10923 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10924
10925         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10926         the region not just redisplay it after-all, since we store the
10927         cursors in the LineDisplay. (Ugly interactions here between
10928         GtkLayout and GtkTextBTree here.)
10929         
10930         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10931
10932 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10933
10934         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10935         Added function to scroll contents of a window while keeping the
10936         window constant. Works by XCopyArea or guffaw-scrolling depending
10937         on the details of how the window is set up. (guffaw-scrolling
10938         still needs to be filled in.)
10939
10940 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10941
10942         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10943         move the debugging that was tied to a global variable
10944         to that.
10945
10946         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10947
10948         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10949         validated flag, in line data instead of setting height/width to
10950         -1. This allows us to perform operations with partially invalid
10951         buffer (using the old size for invalid lines) and thus to do
10952         incremental vaidation. Keep height/width aggregates up to date
10953         when deleting text and rebalancing the tree.
10954
10955         * gtk/gtktextbtree.[ch]: Add functions validate a line
10956         (gtk_text_btree_validate_line), and to validate up
10957         to a number of pixels (gtk_text_btree_validate).
10958
10959         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10960         that indicates that something is changed and a revalidation
10961         pass is needed. Change ::need_repaint to ::changed, and
10962         make it take old and new yranges instead of a rectangle.
10963
10964         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10965         the line_data_destroy() function from 
10966         gtk_text_btree_add_view() to a virtual function in 
10967         GtkTextLayout
10968
10969         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10970         since we are handling partial repaints in a different fashion
10971         now.
10972
10973         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10974         of the selection instead of queueing a repaint on the
10975         entire widget.
10976
10977         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10978         get_selection_bounds() down to btree, make the function
10979         in buffer a wrapper around the btree function.
10980
10981         * gtk/gtktextlayout.[ch]: Add functions to check if the
10982         layout is valid and to recompute either a range of pixels
10983         aroudn a line or a certain total number of pixels.
10984
10985         * gtk/gtktextlayout.[ch]: Cache a single line display;
10986         now that we only redraw the needed portions, the hit rate
10987         for this cache is quite high.
10988         
10989         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10990         on the screen so that when re-laying-out the buffer, we can
10991         keep the same place. This requires connecting to ::value_changed
10992         on the adjustments
10993
10994         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10995         the buffer after we receive an ::invalidated signal.
10996         
10997 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10998
10999         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
11000         to max of allocation and layout size, not just to the
11001         layout size.
11002
11003         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
11004         Invalidate window so it gets redrawn properly.
11005
11006         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
11007         to mean the entire window.
11008
11009         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
11010         into public header.
11011
11012 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11013
11014         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
11015         to get the name of a mark.
11016
11017         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
11018         to find the paragraph from a y position.
11019
11020 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
11021
11022         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
11023         nodes have width/height >= 0, not > 0.
11024
11025 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
11026
11027         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
11028         Add a size_only flag, so when we only need the size, we don't create
11029         useless appearance attributes.
11030
11031         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
11032         duplicate setting of font description.
11033
11034         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
11035
11036 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11037
11038         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11039         EXTRA_DIST. It does not work well when the file that
11040         everything depends on is not in the tarball.
11041
11042 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11043
11044         * gtk/testgtk.c: Some hacks and fixes so that it basically
11045         works when not sitting in the GTK+ build tree.
11046
11047 2000-05-03  Havoc Pennington  <hp@redhat.com>
11048
11049         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11050         Properly determine the ordering of the tag root and the current
11051         line within the tree. Previous algorithm only worked if the tag
11052         root's immediate parent was the common root of both the current
11053         line and the tag root.
11054
11055 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
11056
11057         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
11058         alignment.
11059
11060         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
11061         the widget text directional dynamically.
11062
11063         * gtk/gtktextview.[ch]: Added functions to get and set default
11064         wrap mode.
11065
11066 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
11067
11068         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
11069         in cursor location computation.
11070
11071 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
11072
11073         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
11074         vadjusment values properly when layout gets smaller.
11075
11076         * gtk/gtktextview.c (need_repaint_handler): Areas being
11077         passed in are far completely inaccurate, and sometimes
11078         too small, so, for now, just queue a redraw on the
11079         whole visible region.
11080
11081 2000-04-25  Havoc Pennington  <hp@redhat.com>
11082
11083         * gtk/gtktextbtree.c (summary_destroy): new function to 
11084         destroy tag summary nodes
11085         (gtk_text_line_next_could_contain_tag): this function was 
11086         totally broken if the line passed in wasn't below the tag
11087         root. Fix it.
11088         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
11089         "wildcard" case, we have to do a linear scan. Blah.
11090         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
11091         we have to do the linear scan
11092         (tag_removed_cb): When a tag is removed from the tag table, 
11093         remove the GtkTextTagInfo node from the btree.
11094         (gtk_text_btree_spew): Implement the spew function, for 
11095         our debugging pleasure.
11096
11097 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
11098
11099         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
11100         a problem with referring to the wrong buffer.
11101
11102         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
11103
11104         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11105         font description to gtk_style_new() - otherwise things
11106         don't work without a .gtkrc file.
11107
11108         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11109         tags table if we create it ourself, too.
11110
11111         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11112         it was conflicting with XKB modifiers.
11113
11114         * gtk/gtktextview.[ch]: Add simple support for 
11115         GtkIMContext.
11116
11117 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11118
11119         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11120         with deletion from last commit.
11121
11122 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11123
11124         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11125         in the context from the current locale.
11126         
11127         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11128         context, not hardcoded value.
11129
11130         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11131         not logical.
11132
11133 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11134
11135         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11136         attributes - that doesn't handle partial-glyph selection
11137         properly. Instead use new pango_layout_line_get_x_ranges()
11138         functionality to draw the selection.
11139
11140         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11141         now properly handles out-of-range coordinates.
11142
11143         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11144
11145         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11146         public.
11147
11148         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11149         for paragraphs opposite to the base direction of the widget.
11150
11151         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11152
11153         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11154         causes Arabic words to reshape as you cursor through.
11155
11156         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11157         cursor position when moving vertically with the arrow keys and
11158         scrolling with page-up/page-down. (Arrow keys save only the X,
11159         scrolling saves both X and Y.)
11160
11161         This means you can line-up / line-down or page-up / page-down
11162         without losing your place, and also that moving vertically
11163         with the cursor keys keeps the same X position, not the same
11164         character count:
11165
11166         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11167         arrow keys move by display lines, not paragraphs.
11168
11169 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gtk/gtklayout.c: Make sure that the bin window is at least
11172         as big as the allocation. (Should we also make sure that the
11173         bin window is big enough to completely cover widget->window?)
11174
11175         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11176         function to get the onscreen rectangle.
11177
11178         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11179         for offsets in window coordinates.
11180
11181 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11182
11183         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11184         confusion.
11185
11186         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11187         from the widget direction.
11188
11189         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11190         Add a "direction" attribute.
11191
11192         * gtk/gtktextview.c: global s/tkxt/text_view/.
11193
11194         * gtk/testtext.c: Added long block of text in Arabic, to test out
11195         the direction attributes. (Some problems with the shaping system
11196         for arabic become obvious - like the fact the cursor splits words
11197         into unjoined pieces.)
11198
11199 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11200
11201         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11202
11203         * gtk/gtktextlayout.c: Fix up alignment.
11204
11205         * gtk/testtext.c: Add some tests for centering, wrapping.
11206
11207 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11208
11209         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11210         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11211         If we wrote GTK+-specific layout-render function this could just replace
11212         the draw_layout() operation in the vtable.
11213
11214         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11215         pango_layout_get_cursor_pos() and use that function.
11216
11217         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11218         is a non-static symbol.
11219
11220         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11221         with gtk_text_btree_find_line_by_y()
11222
11223         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11224         renderer that handles GtkTextAppearance attributes.
11225
11226         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11227
11228           - Move the values in the style that don't affect geometry into a
11229             GtkTextAppearance structure.
11230           - Change underline to take a PangoUnderline and "font" a string
11231             representation of a font description
11232           - Add a "font_desc" attribute which takes a FontDescription structure.
11233
11234         * gtk/gtktextlayout.[ch]:
11235
11236           - Get rid of the display-line list per each line. Instead, we
11237             generate, on demand, a GtkTextLineDisplay structure which]
11238             contains a PangoLayout * and other necesary information
11239             (offsets, cursor locations) for displaying a paragraph.
11240           - Get rid of the code to wrap lines, create display chunks,
11241             etc. Instead, we just go through a paragraph and convert
11242             it into the necessary inputs to a PangoLayout.
11243           - Implement a new attribute type, GtkTextAttrAppearance. This
11244             holds a GtkTextAppearance, and is used to pass colors, 
11245             stipple, etc, through from the layout to the display without
11246             having to use lots and lots of individual attributes.
11247           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11248             in terms of PangoLayout functions.
11249         
11250         * gtk/gtktextview.c: 
11251          
11252           - Handle passing the necessary PangoContext to the layout
11253           - Some fixups in painting to deal with the automatic backing store
11254             and offsetting of GTK+-1.4
11255           - Add a style_set handler so that the default style reacts
11256             properly to theme changes.
11257         
11258         * gtk/gtktext?*.[ch]: Random code-style fixes.
11259
11260         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11261
11262 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11263
11264         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11265         in original form preparatory to Pango-ization and gdkimcontext-ization.
11266
11267 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11268
11269         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11270         so that we can derive from gtkimcontext in language bindings properly.
11271
11272 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11273
11274         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11275         Add a compose table including (almost) all the compose combinations
11276         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11277         data in the XIM implementation.
11278
11279         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11280         Moved functions to convert keyvalues from and to unicode here from
11281         the win32 port and made them public.
11282
11283 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11284
11285         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11286
11287 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11288
11289         * gtk/gtkimcontext.[ch]: Base class for new input context system
11290
11291         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11292         the real input context implementation to be loaded from modules
11293         and switched on the fly.
11294
11295         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11296         context that just does direct keysymbol => unicode translation.
11297
11298         * gtk/gtkentry.[ch]: Start switching editing over to using
11299         GtkInputContext. (No handling of preedit yet.)
11300
11301 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11302
11303         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11304         many substitutions. (klass should not be subsituted.)
11305
11306 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11307
11308         * configure.in: Add checks for Pango
11309
11310         * configure.in docs/Makefile.am: Add test for sgml2html
11311         and allow 'make dist' without building html, but print out
11312         warnings in that case. (For making snapshots)
11313
11314         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11315         Add Pango libraries and C flags
11316
11317         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11318         Add function (gdk_draw_layout) to draw a pango layout.
11319
11320         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11321         for getting Pango contexts for GDK.
11322
11323         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11324
11325         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11326         editing.
11327
11328         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11329         keysym => unicode translations. More languages can be added
11330         here, but real input-method support is needed.
11331
11332         * docs/Changes-1.4.txt: Added note about entry behavior.
11333         
11334         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11335         to set the reading direction for a widget and the global direction.
11336         Add test which allows toggling the global direction. Two private
11337         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11338
11339         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11340           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11341
11342         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11343
11344         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11345         underlining now handled by Pango.
11346
11347         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11348         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11349         is temporary.)
11350
11351         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11352         convenience functions for creating contexts and layouts for widgets.
11353
11354         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11355
11356 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11357
11358         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11359         titles to be active, even if they aren't visible.
11360         (gtk_clist_column_titles_passive):  Ditto.
11361
11362 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11363
11364         * gtkmenu.c:
11365         * gtkmenu.h:
11366         * gtktypeutils.h: Spelling/grammar fixes in comments.
11367
11368 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11369
11370         * gdk/nanox/*.h: add missing header files.
11371
11372 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11373
11374         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11375         send_event to TRUE.
11376         (gtk_drawing_area_size): queue a resize.
11377
11378 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11379
11380         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11381         the handlers, also invalidate them. bug nailed down by Karl Nelson
11382         <kenelson@ece.ucdavis.edu>.
11383
11384 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11385
11386         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11387         "(nil)" foundries, patch from Grigorios Magklis.
11388
11389         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11390         on non-available fonts, based on a patch by Grigorios Magklis
11391         <maglis@cs.rochester.edu>.
11392
11393 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11394
11395         * gdk/x11/gdkregion-generic.c: If a region does not have any
11396         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11397         instead of GDK_OVERLAP_RECTANGLE_IN.
11398
11399 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11400
11401         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11402         OFFSCREEN, as it is no longer necessary.
11403
11404 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11405
11406         * gtk/gtkcolorsel.c: Patch from David Santiago
11407         <mrcooger@cyberverse.com> to change things so that the 
11408         indicator of the active palette entry is done independently,
11409         not via the focus, since it should always be visible.
11410
11411 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11412
11413         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11414         refcount leaks as in the X11 backend.
11415
11416         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11417         cosmetics.
11418
11419         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11420         backend. Add _gdk_windowing_window_destroy().
11421
11422         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11423         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11424         either, but these probably do exist on nanox?)
11425         
11426         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11427         which isn't necessarily defined by <math.h>.
11428
11429         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11430         ancestry past GtkObject.
11431
11432         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11433         from DLL on Win32.
11434
11435         * gtk/gtk.def: Update corresponding to recent changes.
11436
11437         * gtk/makefile.{cygwin,msc}: Updates.
11438
11439 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11440
11441         * docs/Changes-1.4.txt: A bit of editing.
11442
11443         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11444         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11445         to clear the update area for the window, and clear it
11446         when hiding a window.
11447
11448         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11449         if window destroyed.
11450
11451         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11452
11453         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11454         gdk_window_destroy() to the generic code, since there was a lot of 
11455         window-system-independent logic it in. Add a function:
11456         
11457          _gdk_window_destroy() 
11458
11459         to the internal API to destroy a window without unreferencing it.
11460         Add a function:
11461
11462          _gdk_windowing_window_destroy()
11463
11464         That does the windowing-system-dependent part of destroying 
11465         the window.
11466
11467 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11468
11469         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11470
11471 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11472
11473         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11474         Make gtk_widget_shape_combine_mask() keep a reference count on
11475         the pixmap since it keeps it around.
11476
11477 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11478
11479         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11480         leak.
11481
11482         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11483         leak with event filters.
11484
11485 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11486
11487         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11488         signal handlers with the right data arguments. (Fixes
11489         some warnings when a widget was repeatedly set as a drag
11490         destination.)
11491
11492         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11493         window so we can avoid avoid setting the DND properties on the
11494         toplevel window repeatedly.
11495
11496 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11497
11498         * gdk/win32/gdkwin32.h: Define more message types missing from
11499         mingw headers.
11500
11501         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11502         call gdk_window_destroy_notify(). It was never called. This
11503         probably meant that the GdkWindow was never freed. Thanks Owen for
11504         noticing (!).
11505
11506         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11507         window as destroyed before calling DestroyWindow(). DestroyWindow()
11508         causes a call to the window procedure (gdk_WindowProc), which
11509         calls gdk_event_translate(), which calls
11510         gdk_window_destroy_notify(), which gets confused unless the window
11511         is set as destroyed.
11512
11513         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11514         this function to indicate it's win32 only. Put inside #ifdef
11515         G_ENABLE_DEBUG.
11516
11517         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11518         debugging function. (gdk_event_translate:) Add a default branch
11519         that uses the above function to print debug messages with all
11520         Windows messages symbolically.
11521
11522         * gdk/win32/gdkprivate-win32.h: Declare it, and
11523         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11524
11525 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11526
11527         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11528         public header file.
11529
11530 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11531
11532         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11533
11534         * gtk/gtktext.c: made the adjustments no-construct args, simply
11535         provide default adjustments.
11536         (gtk_text_destroy): release adjustments.
11537
11538         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11539         adjustment argument non-construct.
11540
11541         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11542         instead of in finalize.
11543         (gtk_progress_get_text_from_value): 
11544         (gtk_progress_get_current_text): 
11545         (gtk_progress_set_value): 
11546         (gtk_progress_get_percentage_from_value): 
11547         (gtk_progress_get_current_percentage): 
11548         (gtk_progress_set_percentage): 
11549         (gtk_progress_configure): ensure an adjustment is present.
11550
11551 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11552
11553         * gtk/gtkcolorsel.[hc]:
11554         * gtk/gtkcolorseldialog.[hc]:
11555         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11556         their parent implementation, use bit fields for boolean values, don't
11557         create unused widgets, usage of glib types, braces go on their own
11558         lines, function argument alignment, #include directives etc. etc. etc..
11559
11560         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11561
11562 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11563
11564         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11565
11566         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11567         of NULL.
11568
11569         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11570         to freed data.
11571         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11572
11573         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11574         to NULL when the toplevel is getting destroyed.
11575         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11576         (gtk_menu_destroy): 
11577         (gtk_menu_init): store the information of whether we have to
11578         readd the initial child ref_count during destruction in a new
11579         GtkMenu field needs_destruction_ref_count.
11580
11581         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11582         here, those reading: learn from my mistake! ;)
11583         in order for set_?adjustment to support a default adjustemnt if
11584         invoked with an adjustment pointer of NULL, the code read (pseudo):
11585         if (v->adjustment) unref (v->adjustment);
11586         if (!adjustment) adjustment = adjustment_new ();
11587         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11588         now imagine the first unref to actually free the old adjustment and
11589         adjustment_new() creating a new adjustment from the very same memory
11590         portion. here, the latter comparision will unintendedly fail, and
11591         all hell breaks loose.
11592         (gtk_viewport_set_hadjustment):
11593         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11594         after unreferencing it.
11595
11596         * gtk/gtkcontainer.[hc]: removed toplevel registration
11597         functions: gtk_container_register_toplevel(),
11598         gtk_container_unregister_toplevel() and
11599         gtk_container_get_toplevels() which had wrong semantics
11600         anyways: it didn't reference and copy the list.
11601
11602         * gtk/gtkwindow.c: we take over the container toplevel registration
11603         bussiness now. windows are registered across multiple destructions,
11604         untill they are finalized. the initial implicit reference count
11605         users are holding on windows is removed with the first destruction
11606         though.
11607         (gtk_window_init): ref & sink and set has_user_ref_count, got
11608         rid of gtk_container_register_toplevel() call. add window to
11609         toplevel_list.
11610         (gtk_window_destroy): unref the window if has_user_ref_count
11611         is still set, got rid of call to
11612         gtk_container_unregister_toplevel().
11613         (gtk_window_finalize): remove window from toplevel list.
11614         (gtk_window_list_toplevels): new function to return a newly
11615         created list with referenced toplevels.
11616         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11617
11618         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11619         adjustment a non-construct arg.
11620         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11621         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11622         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11623
11624         * gtk/gtkrange.c: added some realized checks.
11625         (gtk_range_destroy): get rid of the h/v adjustments in the
11626         destroy handler instead of finalize. remove timer.
11627         (gtk_range_get_adjustment): demand create adjustment.
11628
11629         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11630         we simply create them on demand now and get rid of them in
11631         the destroy handler.
11632         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11633         destroy handler instead of finalize.
11634         (gtk_viewport_get_hadjustment): 
11635         (gtk_viewport_get_vadjustment): 
11636         (gtk_viewport_size_allocate): demand create h/v adjustment
11637         if required.
11638
11639         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11640         gtk_widget_real_destroy () functionality.
11641         (gtk_widget_real_destroy): reinitialize with a new style, instead
11642         of setting widget->style to NULL.
11643
11644 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11645
11646         * gtk/gtkcalendar.c:
11647         * gtk/gtkbutton.c: ported _get_type() implementation over to
11648         GType, either to preserve memchunks allocation facilities,
11649         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11650
11651         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11652         over. prepare for ::destroy to be emitted multiple times.
11653         removed reference tracer magic. chain into GObjectClass.shutdown()
11654         to emit ::destroy signal.
11655
11656         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11657         fundamental.
11658
11659         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11660         cludge.
11661
11662         * gtk/gtksocket.c:
11663         * gtk/gtkplug.c:
11664         * gtk/gtklayout.c:
11665         * gtk/gtklabel.c:
11666         * gtk/gtkargcollector.c:
11667         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11668         not being a fundamental anymore, and to work with the new
11669         type system (nuked fundamental type varargs clutter).
11670
11671         * gtk/*.c: install finalize handlers in the GObjectClass
11672         part of the class structure.
11673         changed direct GTK_OBJECT()->klass accesses to
11674         GTK_*_GET_CLASS().
11675         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11676
11677         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11678         GType. made most of the GTK_*() type macros and Gtk* typedefs
11679         simple wrappers around macros and types provided by GType.
11680         most notably, a significant portion of the old API vanished:
11681         GTK_TYPE_MAKE(),
11682         GTK_TYPE_SEQNO(),
11683         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11684         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11685         GTK_TYPE_ARGS,
11686         GTK_TYPE_CALLBACK,
11687         GTK_TYPE_C_CALLBACK,
11688         GTK_TYPE_FOREIGN,
11689         GtkTypeQuery,
11690         gtk_type_query(),
11691         gtk_type_set_varargs_type(),
11692         gtk_type_get_varargs_type(),
11693         gtk_type_check_object_cast(),
11694         gtk_type_check_class_cast(),
11695         gtk_type_describe_tree(),
11696         gtk_type_describe_heritage(),
11697         gtk_type_free(),
11698         gtk_type_children_types(),
11699         gtk_type_set_chunk_alloc(),
11700         gtk_type_register_enum(),
11701         gtk_type_register_flags(),
11702         gtk_type_parent_class().
11703         replacements, where available are described in ../docs/Changes-1.4.txt.
11704         implemented compatibility functions for the remaining API.
11705
11706         * configure.in: depend on glib 1.3.1, use gobject module.
11707
11708 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11709
11710         * TODO.xml: Various updates to current status.
11711
11712 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11713
11714         * gtk.m4: Print out version when test succeeds.
11715
11716 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11717
11718         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11719         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11720         
11721         (Original triangle color selector from Simon Budig
11722         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11723         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11724         Santiago <mrcooger@cyberverse.com>)
11725
11726         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11727         out into a separate widget.
11728
11729         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11730         and opacity controls.
11731
11732 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11733
11734         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11735         snuck in prematurely.
11736
11737 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11738
11739         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11740         had deleted a ! operator by mistake, which caused
11741         GDK_SELECTION_CLEAR events never to be generated, which caused
11742         only the first copy to the clipboard from an gtkeditable to
11743         actually cause a copy to the Windows clipboard.
11744
11745 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11746
11747         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11748         compilation, too. Current mingw gcc distributions include the
11749         necessary headers. Also the necessary IIDs are now in mingw
11750         headers/libraries, and own definitions unnecessary.
11751
11752         More hacking on OLE2 DND, still doesn't work though, and thus
11753         ifdeffed out.
11754
11755         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11756         here, too.
11757
11758 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11759
11760         * gdk/nanox/*: nano-X port work in progress.
11761         * gdk/simple.c: simple test for Gdk.
11762         * README.nanox: notes about the port: read this first!
11763         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11764         with nano-X.
11765
11766 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11767
11768         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11769         gdk_window_clear() into common code, implement in terms of
11770         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11771         not redirected to the backing rectangle.
11772
11773 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11774
11775         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11776         EXTRA_DIST. It does not work well when the file that
11777         everything depends on is not in the tarball.
11778
11779 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11780
11781         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11782         with recursion where process_updates() is called from
11783         an expose handler. (GtkTextView is highly broken in
11784         doing this, but it should work, so it is a nice test
11785         case.)
11786
11787 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11788
11789         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11790         handle the case where updates are queued during processing of
11791         updates.
11792
11793 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11794
11795         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11796         window is on gdk_display - use that instead of segfaulting.
11797
11798 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11799
11800         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11801         broken and require an empty arg, give it to them.
11802
11803 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11804
11805         * gtk/gtklabel.h: indentation fixes.
11806
11807 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11808
11809         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11810         draw too narrow or too low arcs, they seem to fail, at least with
11811         some display drivers.
11812
11813         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11814
11815         Large changes to the Win32 backend, partially made necessary by
11816         the changes to the backend-independent internal
11817         structures. Attempts to implement similar backing store stuff as
11818         on X11. The current (CVS) version of the Win32 backend is *not* as
11819         stable as it was before the no-flicker branch was merged. A
11820         zipfile with that version is available from
11821         http://www.gimp.org/win32/. That should be use by "production"
11822         code until this CVS version is usable. (But note, the Win32
11823         backend has never been claimed to be "production quality".)
11824
11825         * README.win32: Add the above comment about versions.
11826
11827         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11828
11829         * gdk/gdk.def: Update.
11830
11831         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11832         presumably be replaced by some more better mechanism as 1.4 gets
11833         closer to release shape.
11834
11835         * gdk/makefile.{cygwin,msc}: Update.
11836
11837         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11838         internal headers. Change code according to changes in these. Use
11839         gdk_drawable_*, not gdk_window_* where necessary.
11840
11841         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11842         our old DND.
11843
11844         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11845         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11846         Use correct function name in warning messages.
11847
11848         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11849         GSourceFuncs gdk_event_prepare and gdk_event_check.
11850         (gdk_event_get_graphics_expose): Do implement, use
11851         PeekMessage. Thanks to Hans Breuer.
11852         (event_mask_string): Debugging function to print an GdkEventMask.
11853         (gdk_pointer_grab): Use it.
11854
11855         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11856         (old) book I used claimed was Hangul actually is CJK Unified
11857         Ideographs Extension A. Also, Hangul Syllables were missing.
11858         Improve logging.
11859
11860         * gdk/win32/gdkgc-win32.c: Largish changes.
11861
11862         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11863         g_win32_getlocale() from GLib, and not setlocale() to get current
11864         locale name.
11865
11866         * gdk/win32/gdkprivate-win32.h
11867         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11868         gdkwin32.h, similarily as in the X11 backend.
11869
11870         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11871         assignment was used instead of equals in if test. Thanks to Hans
11872         Breuer.
11873
11874         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11875         the X11 version.
11876
11877         * gdk/win32/makefile.{cygwin,msc}
11878         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11879         path to the Win32 headers that works also with the mingw compiler.
11880
11881         * gtk/gtkstyle.c: Include <string.h>.
11882
11883 2000-04-26  Havoc Pennington  <hp@redhat.com>
11884
11885         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11886         replacing the broken gtk_label_get ()
11887
11888 2000-04-15  Havoc Pennington  <hp@pobox.com>
11889
11890         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11891         this keeps scanner scripts from getting confused.
11892
11893         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11894         data, rather than void
11895
11896 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11897
11898         * gtk/gtkclist.c (gtk_clist_motion)
11899         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11900         with is_hint FALSE, get x and y from the event. They used to be
11901         used uninitialised. The Win32 backend never sends motion events
11902         marked as hints. This for instance fixes the annoying file and
11903         font selector behaviour in the Win32 version.
11904
11905 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11906
11907         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11908         gtk_private_n_signals variables, they are used by some software,
11909         sigh.
11910
11911         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11912         installation directory from the Registry, where the installer
11913         should have put it.
11914
11915 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11916
11917         * gdk/x11/Makefile.am: Fix problem with installation directory for
11918         gdkx.h
11919
11920         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11921         <mrcooger@cyberverse.com> so that when selecting menus with the
11922         mouse, the first item will not be selected, but when selecting
11923         with an accelerator, or navigating left-right on a menubar with
11924         the menus popped up, the first item will be selected.
11925
11926 2000-04-05  Dan Damian  <dand@dnttm.ro>
11927
11928         * configure.in: Added "ro" to ALL_LINGUAS.
11929
11930 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11931
11932         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11933         indentation.
11934
11935         * Makefile.am (EXTRA_DIST): Fix typo.
11936
11937         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11938         to catch gdkconfig.h
11939
11940         * gtk/gtkitemfactory.c: Added FIXME.
11941
11942 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11943
11944         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11945         s/return_if_fail/return_val_if_fail/g and add a return value.
11946
11947 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11948
11949         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11950         merge slipup.
11951
11952         * gdk/gdkinput.h: Fix missing line from merge.
11953
11954 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11955
11956         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11957         instead of gdkprivate.h.
11958
11959 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11960
11961         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11962         parent class to correctly be GtkDialogClass.
11963
11964 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11965
11966         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11967         toplevel windows and their immediate children by their parents,
11968         since the size of toplevel windows is out of our immediate
11969         control and we don't get any real benefit from trying to track
11970         this size for clipping.
11971
11972         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11973         for input_only windows.
11974
11975         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11976         to fix some hacks and make sure that we don't try to set the
11977         background of input only windows.
11978
11979 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11980
11981         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11982         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11983         stuff that we've traditionally exposed.
11984
11985         * gdk/**.c: Use gdkinternals.h where appropriate.
11986
11987         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11988         not include gdkprivate-x11.h, move all stuff of conceivable public
11989         interest into gdkx.h; keep all really private stuff in
11990         uninstalled header gdkprivate-x11.h.
11991
11992         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11993         image->image_put on windows through a new function _gdk_window_draw_image()
11994         to allow us to do backing store for images. (Sort of ugly)
11995
11996         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11997         contexts locally so that we can offset them properly when drawing 
11998         onto backing pixmaps.
11999
12000         * gdk/gdkinput.h: Reindented
12001
12002         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
12003         pixmap or color for the window, so we can properly initialize
12004         our double-buffer pixmaps, and also so that we temporarily set
12005         a background of None while scrolling.
12006
12007         * gdk/gdkregion.h: Revise region boolean operators to have an
12008         interface that is actually convenient - switch from creating new
12009         regions on every op, to "methods" that modify existing regions
12010         (A = A OP B). 3 argument forms which allow dest == src, would also
12011         be possible, but the current interfaces seem to map nicely
12012         onto what needs to be done. (There is quite a lot of region
12013         code in GDK now.)
12014
12015         * gdk/gdkregion.h: Add constructor from rectangle and a copy
12016         operator.
12017
12018         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
12019         gdkpoly-generic.h: Copy region code from Xlib, switch it over
12020         to 32 bit coordinates, modify it to be mostly GTK+ style
12021         and to have interfaces that match gdkregion.h.
12022
12023         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
12024         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
12025         create a backing pixmap and redirect all drawing to
12026         that backing pixmap until a matching gdk_window_end_paint().
12027
12028         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
12029         Create a special drawable class for GtkWindow's that 
12030         redirects the drawing to the backing pixmap as necessary
12031         and then calls the real operations in _gdk_windowing_window_class.
12032
12033         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
12034         Store invalid region for each window. Generate expose events for invalid
12035         region in an idle. This replaces both the expose compression
12036         and the redrawing queuing in GTK+. It is both more efficient and
12037         simpler than either one individually and far more so then the
12038         combination.
12039
12040         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
12041         Emulate 32 bit coordinates for windows with 16 bit coordinates
12042         by offsetting drawing, guffaw scrolling techniques and
12043         mapping/unmapping child windows as necessary.
12044
12045         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
12046         where, when invalid regions are processed, the region is stored,
12047         and if expose events come in that are detectably duplicate
12048         the processed exposes (by comparison of event serial numbers),
12049         the stored region is subtracted out of those exposes.
12050
12051         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
12052         regions newly exposed when scrolling or resizing windows.
12053         This, combined with forcing processesing of queued invalidated
12054         regions, gives nice flicker-free scrolling.
12055
12056         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
12057         invalidated regions after every scroll.
12058
12059         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
12060         emulation in GDK. Its, for all practical purposes just a
12061         GtkViewport/GtkFixed hybrid now.
12062
12063         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
12064         (16-bit) structures as necessary instead of just casting.
12065
12066         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
12067         in terms of the structures from gdkregion-generic.c, using appropriate
12068         offsets from GDK to X11 coordinates. Cache clip mask and
12069         origin and ts origin locally and only flush to the server
12070         when drawing, to avoid constantly setting and resetting these
12071         values when offsetting GC's for scrolling and backing pixmaps.
12072
12073         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
12074
12075         * gtk/gtkcontainer.c: Call process_all_updates at end
12076         of resizing to reduce flicker. (Avoids having redraw
12077         lag arbitrarily behind resize under some circumstances)
12078
12079         * gtk/gtkentry.c: Remove old backing store code, and simply take
12080         advantage of the new backing store capabilities of GDK.
12081
12082         * gtk/gtkmain.c: Simple implementation of widget backing
12083         store - simply push a paint while handling each expose.
12084         (Should really be configurable widget for widget.)
12085         
12086         * gtk/gtkwidget.c: Remove all the old complicated redraw
12087         code, and simply invalidate the GDK windows from
12088         gdk_window_queue_clear(), etc. (Sigh, so much carefully
12089         debugged complexity ... gone to the winds.)
12090
12091         Remove all the code for suppressing expose events while
12092         resizes are pending; this isn't needed since the invalid
12093         areas won't be processed until after the resizes are
12094         processed, since they are in a lower priority idle.
12095
12096 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
12097
12098         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
12099         and height of dest rectangle for non-intersecting rectangles.
12100
12101 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
12102
12103         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
12104         for GdkRectangle.
12105
12106 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12107
12108         * gdk/gdk{events,image,private,types,window}.h
12109          gdk/x11/gdkinputprivate.h: Change all coordinates
12110          from int16 to int. Also, Change width and height from
12111          unsigned to signed to avoid all the stupid C 
12112          signedness bugs.
12113
12114 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12115
12116         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12117         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12118         Add some more detailed checking.
12119
12120         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12121         New function to retrieve the depth of a drawable.
12122
12123         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12124         field, reorder fields to save memory. 
12125
12126 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12127
12128         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12129         of the background image instead of scaling the background down to
12130         a line.
12131
12132         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12133         which temporarily set slider to wrong size.
12134
12135         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12136         queue_clear().
12137
12138 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12139
12140 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12141
12142         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12143
12144 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12145
12146         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12147         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12148
12149         * gdk/win32/gdkfont-win32.c
12150         * gdk/win32/gdkproperty-win32.c
12151         * gdk/win32/gdkselection-win32.c
12152         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12153         now declared such.
12154
12155 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12156
12157         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12158
12159 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12160
12161         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12162         is called without trapping X errors.
12163
12164 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12165
12166         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12167         way into the fontset lists.
12168
12169 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12170
12171         * gtk/gtkthemes.h: add extern "C" scope.
12172
12173 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12174
12175         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12176         to make appends to the list constant. (gtk-guy-990901-0.patch)
12177
12178 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12179
12180         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12181         for the typename hash table.
12182
12183 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12184
12185         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12186         to make sure we never divide by zero. 
12187         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12188
12189 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12190
12191         * gtk/gtkfontsel.c: Apply patch from
12192         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12193         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12194
12195         Also, some cleanups in atom handling.
12196
12197 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12198
12199         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12200         not GtkWidget.
12201
12202 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12203
12204         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12205         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12206         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12207         more guint wrap-around bugs before going to bed.
12208
12209 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12210
12211         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12212         guint wrap arounds in allocation.width.
12213
12214         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12215         process untill we fit the allocation given.
12216
12217 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12218
12219         * gtk/gtkwidget.c:
12220         (gtk_widget_unrealize): guard widget access with ref/unref
12221         around signal emission.
12222         (gtk_widget_hide): same here, but also check its destroyed
12223         state before queueing a resize.
12224
12225 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12226
12227         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12228         of gtk_default_insensitive_bg as insensitive base color.
12229
12230         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12231         to the widget's state.
12232         (gtk_text_realize): same here.
12233         (gtk_text_state_changed): same here.
12234         (draw_bg_rect): compare background color against base[] from
12235         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12236
12237 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12238
12239         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12240         grabs are active, unless a delete event is send to the toplevel
12241         of the currently grab holding widget.
12242
12243 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12244
12245         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12246         debugging g_print's.
12247
12248 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12249
12250         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12251         ever make the scrolled-window requisition ever depend on the 
12252         visibility state of the scrollbars for the AUTOMATIC policy. 
12253         This breaks the GTK+ requisition model, and causes loops.
12254
12255 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12256
12257         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12258         the default font to avoid problems with XFree86-4.0 where the
12259         default charset is iso10646-1, not iso8859-1.
12260
12261 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12262
12263         * acinclude.m4
12264         * config.guess
12265         * config.sub
12266         * ltconfig
12267         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12268
12269         * gtk/Makefile.am: minor cosmetic consistency tweak
12270
12271 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12272
12273         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12274         the activate_time to 0, so that we handle a quick
12275         press/release press/release properly and don't suppress
12276         the second release. (Red Hat bug #7545)
12277
12278 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12279
12280         * gtk/gtkctree.c (row_delete):
12281         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12282         bugs with destruction notifier, *always* update internal
12283         structures *before* calling user code.
12284
12285 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12286
12287         A few more fixes for bug #5487, #2051, #2677.
12288         * gtk/gtkclist.c : 
12289         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12290         not GDK_BUTTON_PRESS.
12291         (resync_selection): resync only if selection_mode is
12292         GTK_SELECTION_EXTENDED
12293         * gtk/gtkctree.c (resync_selection): same here
12294
12295 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12296
12297         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12298         gdk_drag_get_selection() and gtk_menu_detach().
12299
12300         [ From Jeroen Ruigrok/Asmodai ]
12301
12302 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12303
12304         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12305         page->tab_label can be NULL.
12306
12307 2000-01-25  Havoc Pennington  <hp@pobox.com>
12308         
12309         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12310         arg is boolean
12311
12312         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12313
12314         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12315
12316         * gdk/gdkproperty.c (gdk_property_get): return boolean
12317
12318         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12319
12320         * gdk/gdkim.c (gdk_im_ready): return boolean
12321
12322         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12323
12324         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12325         glib clash, should fix glib)
12326
12327         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12328         (gdk_get_show_events): return gboolean, and canonicalize 
12329         to TRUE/FALSE
12330
12331         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12332         colormap is private
12333         (gdk_colors_alloc): gboolean whether to be contiguous
12334         (gdk_color_equal): return gboolean since we are a predicate
12335         and not a qsort() (this looks semi-wrong due to glib breakage,
12336         IMO glib should be fixed)
12337         
12338         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12339         (gdk_get_use_xshm): return gboolean
12340         (gdk_pointer_is_grabbed): return gboolean
12341
12342         * gdk/gdk.h: Change prototypes to match all the above changes,
12343         and re-run egtk-format-protos as required.
12344
12345 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12346
12347         * gtk/gtkctree.c (resync_selection): 
12348         * gtk/gtkclist.c (resync_selection):
12349
12350         Return immediately if clist->drag_pos < 0. This is a workaround
12351         for the corrupt state that the clist gets into when a
12352         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12353
12354         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12355         
12356         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12357         variable from recent commit.
12358
12359 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12360
12361         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12362
12363 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12364
12365         * gtk/Makefile.am: prefix all autogenerated source that get build in
12366         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12367         in builddir. since we subsequently cd into srcdir for autogeneration,
12368         the paths have to be stripped from the target file names, thusly we
12369         use $(@F) as target names now.
12370         put a comment about configure.in's --disable-rebuilds option,
12371         which can be used for non-writable source directories, for development
12372         setups though, srcdir has to be *writable*.
12373
12374 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12375
12376         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12377           Finish the job of allowing event to be NULL.
12378           (Fixes bug #4283, reported by Chris Blizzard)
12379
12380         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12381           things so that the cursor appears on screen, properly
12382           take into account INNER_BORDER.
12383           (Fixes bug #4754, reported by Antonio Campos)
12384
12385 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12386
12387         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12388           show the tab_label unless it itself is visible.
12389
12390           gtk/gtknotebook.c (gtk_notebook_size_request):
12391           Do a better job of making sure that the visibility
12392           of the tab label corresponds to whether it should
12393           be mapped or not.
12394
12395 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12396
12397         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12398           Use the requisition, not the allocation, since the
12399           allocation has not necessarily been computed yet.
12400           (Pointed out by Eugene Osintsev)
12401
12402 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12403
12404         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12405           style/base[GTK_STATE_INSENSITIVE] both to
12406           gtk_default_insensitive_bg!
12407           (Bug #2187, reported by Jonathan Blandford)
12408
12409         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12410           Add Alt_L, Alt_R to list of invalid accelerators.
12411           (Bug #3736, reported by Vlad Harchev)
12412
12413 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12414
12415         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12416         bugs which occured after an attempt to open 
12417         invalid home directory left cmpl_state->reference_dir == NULL.
12418
12419          - completion on files in home directory didn't work
12420          - completion on an empty string caused  segfault
12421
12422          (Bug #3678, reported by Steve Ratcliffe)
12423
12424         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12425         cut and paste error that was causing scales to
12426         be incorrectly positioned.
12427         (Bug #2956,
12428          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12429
12430 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12431
12432         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12433         when checking for dcgettext, if we've found we needed
12434         it for dgettext.
12435 +
12436 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12437
12438         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12439         queue_clear on NO_WINDOW widgets during a reparent,
12440         since at that point the window and widget heirarchies
12441         are out of sync. This stops crashing in some cases
12442         (the scrolled window reparent test, for instance), and
12443         _probably_ won't cause drawing errors.
12444
12445         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12446         test do what it was supposed to do and be robust against
12447         window closings, etc. (Bug #2443)
12448
12449 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12450
12451         * gtk/gtkentry.c: Fix return values on mouse events.
12452         (Bug #2686, Sky <seb_sky@yahoo.com>)
12453
12454         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12455         (pointed out by George Lebl)
12456
12457         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12458         (From Ettore Perazzoli  <ettore@helixcode.com>)
12459  
12460 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12461
12462         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12463         clicks between rows or outside calender area correctly.
12464         (Patch from Damon Chaplin)
12465
12466         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12467         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12468           Call destroy function when overwriting existing data. 
12469           (Pointed out by Damon Chaplin)
12470
12471 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12474           which was causing problems on various systems with Xmu.
12475           This hasn't been needed for a very long time.
12476           (Fixes #1185 3167)
12477
12478 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12479
12480         * gdk/gdki18n.h: Include <ctype.h> when defining
12481           gdk_isw* in terms of is* as a fallback.
12482           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12483
12484 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12485
12486         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12487           realize the widget when it is size allocated!
12488           (old, old bug)
12489
12490         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12491           Removed unused call to gdk_window_get_size() that
12492           showed up when the above was fixed.
12493
12494 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12495
12496         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12497           fix up widget->window when the widget is a
12498           NO_WINDOW container widget.
12499
12500 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12501
12502         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12503           to account for the fact that feof() does _not_ 
12504           return TRUE on errors, and thus avoid infinite loops
12505           when trying to use gdk_pixmap_create_from_xpm()
12506           on unreadable values.
12507
12508 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12509
12510         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12511
12512 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12515           gdk_gc_set_dashes to take gint8 instead of gchar to
12516           make it clearer that it is _not_ a NULL terminated string.
12517
12518         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12519           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12520           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12521           arguments.
12522
12523 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12524
12525         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12526         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12527         background size relative to our allocation, guard against small
12528         allocations, we may have not yet been size allocated.
12529
12530 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12531
12532         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12533         not just version == 3. We implement all 3 + most of 4 - 
12534         (we don't support matching text/plain;charset=iso-8859-1
12535         to a dest that expects text/plain). We'll still advertise
12536         3 to be safe, but any client implementing version >= 3
12537         must interoperate with 3.
12538         
12539 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12540
12541         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12542         background and gc members, add a warning in gtk_tooltips_set_color()
12543         indicating that this function is deprecated.
12544
12545 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12546
12547         * docs/gtkfaq.sgml: FAQ Update:
12548           - Minor cleanups (Emmanuel, me)
12549           - New questions:
12550                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12551                 How can I retrieve the text from a GtkMenuItem? (timj)
12552                 How do I validate/limit/filter the input to a GtkEntry? (me)
12553                 Memory does not seem to be released when I free the list
12554                         nodes I've allocated (timj)
12555
12556 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12557
12558         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12559         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12560         for which it is no use to call GetLastError onWin9x.
12561         (gdk_other_api_failed) New function, for general error
12562         reporting without calling GetLastError.
12563         (gdk_win32_api_failed) OTOH, this function always calls
12564         GetLastError. (gdk_win32_last_error_string) Remove this function,
12565         GLib has the equivalent now.
12566
12567         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12568         call them with function name, file name and line number in the
12569         arguments.
12570
12571         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12572         functions.
12573         
12574         * gtk/gtk.def: Add some missing entry points.
12575
12576         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12577         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12578         
12579         Fixes by Hans Breuer:
12580
12581         * gdk/makefile.msc: Update for debugging.
12582
12583         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12584         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12585         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12586         in the dash_list.
12587
12588         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12589         the x11 backend.
12590
12591         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12592
12593         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12594
12595 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12596
12597         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12598         just pixel value of background colour.
12599
12600         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12601         containing code snippet previously duplicated in a couple of
12602         places.
12603         
12604         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12605         gdk_colormap_color.
12606
12607         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12608         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12609         events for autorepeated Shift, Control and Alt keys. Use
12610         gdk_colormap_color.
12611
12612         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12613         pointer is inside the window the cursor of which we are setting,
12614         call SetCursor immediately.
12615
12616         * gdk/win32/makefile.cygwin
12617         * gtk/makefile.cygwin: If we don't have the build number stamp
12618         file, use zero.
12619
12620         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12621         gtk_paned_set_gutter_size as empty.
12622
12623         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12624         
12625 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12626
12627         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12628           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12629           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12630           docs/gtk_tut.sgml docs/gtk.texi TODO:
12631
12632           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12633
12634 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12635
12636         * gtk/gtkcalendar.c: Implement num_marked_dates,
12637           and don't emit mutiple day_selected signals on
12638           month_prev.
12639
12640 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12641
12642         * docs/make-todo (lineno): let title and logo be configurable so
12643         that GNOME can use this script too.
12644
12645         * TODO.xml: added logourl and a title
12646
12647 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12648
12649         * TODO.xml: Added some UI items, and an explanatory
12650         comment at the top of the file.
12651
12652 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12653
12654         * TODO.xml: some updates, added abunch of new entries.
12655         a note for those fiddeling with this file, when done
12656         with it, invoke:
12657         $ ./docs/make-todo TODO.xml >/dev/null
12658         and correct output errors before comitting changes.
12659
12660 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12661
12662         * TODO.xml: Added XML-structured TODO file.
12663         * docs/make-todo: python script to turn TODO.xml into
12664           pretty XML output. 
12665
12666 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12667
12668         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12669         the function to let it draw the seven dots, instead of the old,
12670         much maligned, method.
12671         (draw_dot): New function to draw a dot.
12672
12673         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12674         to draw the handle inside the border width as opposed to outside.
12675         Use paint function instead of gdk_draw_point.
12676
12677         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12678         to draw the handle inside the border width as opposed to outside.
12679         Use paint function instead of gdk_draw_point.
12680
12681         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12682         Change indenting to be more GTK like.
12683
12684 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12685
12686         * docs/gtk_tut.sgml: New section on GtkCalendar
12687         * examples/calendar: Update example code
12688
12689 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12690
12691         * docs/gtkfaq.sgml: FAQ Update
12692
12693 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12694
12695         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12696         to prevent the scroll event to be propagated upwards.
12697
12698 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12699
12700         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12701         OwnerGrabButtonMask from button entries for
12702         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12703
12704         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12705         to the event mask (which will result in button/press release
12706         being added to the event mask on Unix) so scrolling works
12707         for layouts in scroll windows.
12708
12709         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12710
12711         Patch from Anders Carlsson  <andersca@gnu.org> to add
12712         a scroll event.
12713
12714         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12715         scrolling to the "Test Scrolling" part of testgtk.
12716  
12717         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12718  
12719         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12720         it against GDK_SCROLL.
12721  
12722         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12723         way of mouse wheel scrolling.
12724  
12725         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12726  
12727         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12728  
12729         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12730  
12731         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12732         gdk_event_mask_table.
12733  
12734         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12735         GdkEventScroll handler.
12736  
12737         * gdk/gdkevents.h: Added GdkEventScroll structure.
12738  
12739 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12740
12741         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12742         and Anders Carlsson to change the Paned widgets so that they
12743         can be dragged from anywhere along the length. Also change
12744         the way that this is drawn to make this apparent.
12745
12746         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12747         from George Lebl to check that option_menu->menu is present
12748         before getting history.
12749
12750 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12751
12752         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12753         before the assertion for non-NULL segment list.
12754
12755         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12756         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12757         machine, but it might be display driver dependent. Sigh, so make
12758         sure the stipple is that size. Does Windows suck or what?
12759
12760         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12761         places.
12762
12763 2000-02-13  Havoc Pennington  <hp@pobox.com>
12764
12765         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12766         refcount to 1
12767         (gdk_cursor_new): init refcount to 1
12768
12769         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12770
12771 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12772
12773         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12774         so that we don't have to do unnecessary settings to the HDC.
12775
12776         * gdk/win32/gdkdrawable-win32.c
12777         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12778         gdk_gc_predraw.
12779
12780         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12781         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12782         GDI paths, call WidenPath to get the outline of the stroken path,
12783         and then fill the outline (with the brush that was built from the
12784         stipple).
12785
12786         * gdk/win32/gdkgc-win32.c: Factor out common code from
12787         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12788         gdk_win32_gc_values_to_win32values. Use correct colour for
12789         SetBkColor() (Until now the code actually used a random colour in
12790         the call to SetBkColor()... but that didn't show up as not many
12791         GDI APIs use the background colour. Pattern (opaque stippled)
12792         brushes do.)
12793
12794         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12795         gdk_win32_api_failed): New functions for error logging.
12796
12797         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12798         WIN32_API_FAILED to call them, passing function or file name and
12799         line number.
12800
12801         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12802
12803         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12804         GdkColor for foreground and background in GdkGCWin32Data.
12805
12806         * gdk/makefile.cygwin: Link in the resource object separately.
12807
12808         * gdk/win32/rc/gdk.rc
12809         * gtk/gtk.rc (New file)
12810         * gdk/win32/makefile.cygwin
12811         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12812         as in GLib.
12813
12814 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12815
12816         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12817         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12818         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12819         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12820         parameters given and cursor->ref_count. coding style fixups.
12821
12822         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12823         not GtkWidget.
12824         
12825         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12826         fix up widget macros and add _GET_CLASS() variant.
12827         
12828         * gtk/*.c: some GtkType fixups.
12829
12830 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12831
12832         * gdk/win32/gdkproperty-win32.c
12833         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12834         were reversed.
12835
12836 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12837
12838         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12839         g_filename_to_utf8 to convert the font names Windows gives us from
12840         whatever is the default codepage to UTF-8.
12841         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12842         in the other direction.
12843
12844         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12845         error in debugging output.
12846
12847 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12848
12849         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12850         and height parameters to gdk_window_clear_area(). Not minus one.
12851
12852 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12853
12854         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12855         checks if the widget passed to gtk_drag_get_data() was not the
12856         dest widget.
12857
12858 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12859
12860         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12861         g_filename_from_utf8 functions (which were added a moment ago to
12862         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12863         size buffers.
12864
12865         gtk_file_selection_get_filename returns the filename in the C
12866         runtime encoding. It calls g_filename_from_utf8, but copies the
12867         returned string to a static buffer, which is returned. I think
12868         this is better than returning the result from g_filename_from_utf8
12869         directly, which would mean all apps that use it would have to free
12870         the return value. Or should this function care about this issue at
12871         all? Maybe a new function with clearly defined semantics.
12872
12873         * gtk/gtkfilesel.h: Add comment about
12874         gtk_file_selection_get_filename returning the filename in the C
12875         runtime's encoding.
12876
12877         * README.win32
12878         * gdk/gdk.def
12879         * gdk/makefile.{cygwin,msc}
12880         * gtk/gtk.def: Updates.
12881
12882         * gdk/gdkcursor-win32.c: Initialise refcount.
12883
12884 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12885
12886         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12887
12888 2000-01-30  Havoc Pennington  <hp@pobox.com>
12889
12890         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12891         destroy
12892
12893         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12894
12895         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12896         implemented in platform-specific code
12897
12898         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12899
12900         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12901         underscore in front
12902
12903         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12904         put an underscore in front
12905
12906         * gdk/gdkcursor.c: new file, implements
12907         gdk_cursor_ref/gdk_cursor_unref
12908
12909         * gdk/gdkcursor.h: Refcount GdkCursor
12910
12911         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12912
12913 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12914
12915         * gdk/gdkwindow.h
12916         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12917
12918 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12919
12920         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12921         structures to properly inherit from GtkWidget not GtkBin.
12922
12923 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12924
12925         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12926         (bug #5178 - Peter Wainright)
12927         
12928         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12929         so that it will be installed.
12930         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12931
12932 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12933
12934         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12935         for the GtkStyleClass vtable const.
12936
12937         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12938         take a const string argument like GtkTranslateFunc. This will
12939         require changes in use code.
12940
12941 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12942
12943         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12944         semantics (to mimic the X11 backend, which just calls XClearArea)
12945         is to check for zero width (and height), and in that case use the
12946         window's width minus x (height minus y). This fixes for instance
12947         some redraw problems with gtkclist, which were easily noticeable
12948         in the gtk file selection widget.
12949
12950         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12951         windows.
12952
12953 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12954
12955         * configure.in
12956         * gdk/Makefile.am
12957         * gdk/x11/Makefile.am
12958         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12959         (bug #5177).
12960         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12961         out later.
12962
12963 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12964
12965         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12966         WM_MOVE for iconified or invisible windows. This fixes various
12967         problems when minimising windows. Thanks to Bernd Herd.
12968
12969 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12970
12971         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12972         backend's draw_lines method, not draw_points.
12973
12974 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12975
12976         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12977         before Owen's reorganisation: Don't have queued_events and
12978         queued_tail statics in this file, but use gdk_queued_events and
12979         gdk_queued_tail. This makes exposure event compression work again.
12980
12981         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12982         seem to be needed?
12983
12984 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12985
12986         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12987         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12988         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12989         doesn't do anything.
12990
12991         * gdk/gdk.def: Add gdk_xid_table_insert.
12992
12993         * gdk/win32/gdkprivate-win32.h
12994         * gdk/win32/gdkevents-win32.c
12995         * gdk/win32/gdkinput-win32.c
12996         
12997         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12998         extension_events field in the GdkWindowWin32Data struct. Use only
12999         the extension_events field in GdkWindowPrivate. Previously one was
13000         set, and the other one tested, which broke tablet
13001         functionality. Thanks to Keishi Suenaga for pointing this out.
13002
13003 1999-12-18  Tor Lillqvist  <tml@iki.fi>
13004
13005         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
13006         When handling a single character (text length == 1), don't handle
13007         it as if it was UTF-8.
13008
13009 1999-12-11  Tor Lillqvist  <tml@iki.fi>
13010
13011         * Makefile.am: Distribute README.win32.
13012         
13013         * gdk/Makefile.am
13014         * gdk/win32/Makefile.am: Distribute Win32 files.
13015
13016         * gdk/makefile.msc: New file.
13017
13018         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
13019         after label).
13020
13021         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
13022         gdk_error_code as GDKVAR, as they are referred outside GDK.
13023
13024         * gdk/win32/makefile.msc: Update.
13025
13026         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
13027         tweaks. Check only if at least one of those Unicode subrange bits
13028         we care for is set. If no code page bits are set, guess (wildly)
13029         based on the charset.
13030
13031         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
13032
13033         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
13034         non-NULL.
13035
13036         * gtk/gtkdnd.c
13037         * gtk/gtklayout.c
13038         * gtk/gtkplug.c
13039         * gtk/gtkselection.c
13040         * gtk/gtksocket.c
13041         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
13042         appropriate. There must be a cleaner way to handle this?
13043
13044         * gtk/gtkrc.c: Must include windows.h on Win32.
13045
13046         * gtk/testgtk.c: No need to include gdkx.h.
13047
13048         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
13049
13050 1999-12-07  Tor Lillqvist  <tml@iki.fi>
13051
13052         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
13053         the rbearing is set to the same as the width, but this should be
13054         fixed.
13055
13056 1999-12-06  Tor Lillqvist  <tml@iki.fi>
13057
13058         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
13059         function. If Windows doesn't tell us what Unicode subranges a font
13060         covers, guesstimate based on the codepages it covers. This will
13061         hopefully help those Windows versions or fonts that don't give us
13062         any useful Unicode subrange information with GetTextCharsetInfo.
13063         Call this function in gdk_font_load_internal.
13064
13065         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
13066         minor changes.
13067
13068 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
13069
13070         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
13071         New function, long needed.
13072
13073 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
13074
13075         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
13076         only_if_exists argument of gdk_atom_intern to
13077         bool.
13078
13079 1999-11-25  Tor Lillqvist  <tml@iki.fi>
13080
13081         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
13082         Fix two copy&paste errors.
13083
13084         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
13085         win32 has changed.
13086
13087         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
13088         GdkWin32SingleFont struct.
13089
13090         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
13091         subranges of loaded fonts. Clear font signature first, in case
13092         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
13093         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
13094
13095         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
13096         Unoffset clip region.
13097
13098 1999-11-23  Tor Lillqvist  <tml@iki.fi>
13099
13100         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
13101         event->any.window before calling filter functions.
13102
13103 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
13104
13105         * gtk/gtkgamma.h: Adapt cast macros to standard.
13106
13107 [ Merges from 1.2 ]
13108
13109 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13110
13111         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13112         If translation does not include a '/', use entire
13113         translation instead of crashing.
13114
13115 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13116
13117         * docs/gtk_tut.sgml:
13118         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13119
13120 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13121
13122         * gtk/gtkselection.c (gtk_target_list_remove): Use
13123         g_list_remove_link, not g_list_remove.
13124
13125         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13126         
13127 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13128
13129         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13130         statement upon unselection (how the heck did that slip in?).
13131
13132 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13133
13134         * gtk/gtktext.c (gtk_text_freeze): 
13135         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13136         in frozen state (and aparently crashes). patch provided by Anders
13137         Melchiorsen <and@kampsax.dtu.dk>.
13138
13139 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13140
13141         * fix insensitive default/focus widget activation,
13142         reported by Matt Goodall <mgg@isotek.co.uk>.
13143
13144         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13145         (gtk_window_activate_default):
13146         (gtk_window_activate_focus):
13147         return handled=FALSE for actiavtion of insensitive default
13148         widgets. return handled=TRUE for activation of insensitive
13149         focus widgets. don't activate in either case.
13150
13151 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13152
13153         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13154         and $glib_cflags to match library order and in the
13155         theory that an old version of GLib is more likely to
13156         be in the include directory for X then vice-versa.
13157         (Bug #2776)
13158
13159 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13160
13161         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13162         to determine the locale for fontsets, not LC_MESSAGES;
13163         the user may want English messages with a handling
13164         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13165         will still be broken) (Bug #2891)
13166
13167 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13168
13169         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13170
13171 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13172
13173         * gtk/gtkrc.ko: Changed the Korean default fontset.
13174
13175 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13176
13177         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13178         where when scrolling to the left or top double exposes
13179         were done, causing major slowdowns.
13180
13181 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13182
13183         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13184         names to lowercase and alphanumeric, before looking
13185         them up.
13186
13187         * gtk/Makefile.am: Install codeset variant gtkrc files
13188         with normalized names.
13189
13190 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13191
13192         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13193         popup menus when the menu is already visible, but its parent
13194         is still hidden, (happens after tornoff window got hidden).
13195
13196 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13197
13198         * gtk/Makefile.am (install-data-local): Fix
13199         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13200         deleted, causing error messages on install.
13201
13202 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13203
13204         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13205         the handle as well, since we now sometimes ignore
13206         exposes on the handle while resizing.
13207
13208 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13209
13210         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13211         extra g_free introduced in one of the last one or two 
13212         commits.
13213
13214 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13215
13216         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13217         consistent, put each style that a gtkrc.* file creates
13218         in a unique namespace, remove old files before installing.
13219
13220 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13221
13222         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13223         gtk_rc_init is called multiple times. (Yes, people who
13224         do that have bugs in their code.)
13225
13226 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13227
13228         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13229         Remove it since it's generated by the Makefile anyway
13230
13231 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13232
13233         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13234         device->info.axes for core pointer.
13235
13236 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13237
13238         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13239         idle_id, to deal with obsolete, broken C libraries.
13240
13241 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13242
13243         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13244         allocation->x/y twice!
13245
13246         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13247         consistent with gtk_vscale_pos_trough().
13248
13249 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13250
13251         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13252         be queueing a resize on a toplevel container between
13253         the time we show it and when we map it. So, we need
13254         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13255         use GTK_WIDGET_DRAWABLE() for child windows.
13256
13257 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13258
13259         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13260         (fixes bug #2144)
13261
13262 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13263
13264         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13265         container DRAWABLE (instead of VISIBLE), so we don't queue
13266         resizes on non-toplevel containers.
13267
13268 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13269
13270         * gtk/gtkselection.[ch]: Make the data argument
13271         const guchar *.
13272
13273 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13274
13275         * gtk/gtkwindow.c: Try to behave sensibly if 
13276         the focus widget is the window itself. (Should
13277         we allow this at all?)
13278
13279 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13280
13281         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13282         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13283         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13284         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13285         in prototypes and implementations consistent (Tomas Ogren).
13286
13287         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13288         before the widget is unparented (reported by damon).
13289
13290         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13291         since we provide unsigned data anyways.
13292
13293 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13294
13295         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13296         the call to gtk_tooltips_layout_text() until later.
13297
13298         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13299         Call gtk_widget_ensure_style() before using the style.
13300
13301 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13302
13303         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13304         for old widgets that don't propagate draws to all
13305         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13306
13307 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13308
13309         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13310         for a redraw but just the widget that requested the resize.
13311
13312 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13313
13314         * gtk/gtkcontainer.c: added new widget level method
13315         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13316         reallocate_redraws : 1 to reflect the setting, exported this through
13317         the argument system as a boolean ::reallocate_redraws.
13318
13319         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13320         on the widget because the allocation changes, do so as well for
13321         widget->parent if the parent has reallocate_redraws set to TRUE.
13322         with that containers requesting reallocation redraws get automatically
13323         redrawn if their children changed allocation (this unfortunately
13324         affects also other children that didn't change allocation, but we
13325         cannot work around that before 1.3).
13326
13327 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13328
13329         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13330         _and_ height are >0 (not _or_).
13331
13332         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13333         instead of gtk_container_queue_resize(), which is a core gtk internal
13334         function (must have been on crack when i queued that).
13335
13336         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13337         we can check more reliably if we want to discard expose events.
13338         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13339         flag.
13340         
13341         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13342         we simply trust these events. for deciding whether to discard exposes,
13343         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13344         
13345 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13346
13347         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13348         queues of areas that are completely off screen.
13349
13350         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13351         logic for handleboxes.
13352
13353         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13354         check on width/height.
13355
13356 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13357
13358         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13359         we are fine with using $@ the way we do (if we actually encounter
13360         brokeness with $@ in VPATH builds because of additional path prefixes,
13361         we need to use $(@F) actually).
13362
13363 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13364
13365         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13366         short lived bugs, that would allow language bindings to do surgeries
13367         to our guts.
13368
13369 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13370
13371         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13372         where comparison was being done against an uninitialized
13373         value causing intermittant results depending on
13374         compiler flags. Also make it clearer that we aren't
13375         ever initializing the child as 0x0 (though this will
13376         be caught in gtk_widget_size_allocate())
13377
13378 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13379
13380         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13381         gtk_window_unset_transient_for() call after we do checks
13382         involving the old transient parent.
13383         [ From Lance Capser <lmc@cyberhighway.net> ]
13384
13385 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13386
13387         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13388         an empty file.
13389
13390 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13391
13392         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13393         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13394
13395 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13396
13397         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13398         `$@' is valid only in the build dir, not after we've done 
13399         `cd $srcdir'.  Also use `test -f' instead of less portable
13400         `test -e'.
13401
13402 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13403
13404         * gtk/gtktext.c (correct_cache_insert): Rewrite
13405          for simplicity, and hopefully correctness.
13406          (Fixes bug #1322, which was a segfault when
13407           on some insertions with the properties around
13408           the insertion set up just wrong.)
13409
13410         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13411          a "changed" signal, clamp the new value to the adjustment
13412          bounds to avoid segfaulting if someone tries to change
13413          the adjustment to a bogus value. (Bug #1795)
13414
13415 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13416
13417         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13418         for children, for toplevel windows handle them
13419         like delete_event.
13420
13421         * gtk/gtkplug.c: Add an unrealize handler so that
13422         we unref plug->socket_window when we are done
13423         with it.
13424
13425 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13426
13427         * gtk/gtktext.c (clear_area): Fix stupid signedness
13428          problem that was causing background to sometimes
13429          be misaligned.
13430
13431 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13432
13433         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13434         
13435         * gtk/gtkmenu.c (gtk_menu_position): Make
13436          sure we never position menus with negative x, y,
13437          since gtk_widget_set_uposition() can't handle that.
13438
13439         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13440          Modify the positioning code a bit so that we always
13441          put the top-left corner onscreen. (This is for
13442          UI reasons, gtk_menu_position() now takes care of
13443          gtk_widet_set_uposition() brokeness.)
13444
13445 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13446
13447         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13448
13449 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13450
13451         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13452           RC style that is passed in. The lack of the ref
13453           before was a bug. If people worked around this
13454           bug, this will introduce a slight memory leak
13455           in their code. The code should typically look like:
13456
13457             rc_style = gtk_rc_style_new ();
13458             [...]
13459             gtk_widget_modify_style (widget, rc_style);
13460             gtk_rc_style_unref (rc_style);
13461
13462         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13463           the style if it was already set.
13464
13465         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13466           style if it was set before.
13467
13468 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13469
13470         * gtk/testgtk.c (main): Add a check to see if we
13471           are being run from the correct directory and
13472           to quit nicely if we are not.
13473
13474         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13475           static.
13476
13477 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13478
13479         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13480
13481         * gtk/gtkwindow.c:
13482         queue resizes unconditionally (gtk_widget_queue_resize will figure
13483         what to do if the window is not realized).
13484         (gtk_window_move_resize): only recenter the window
13485         for GTK_WIN_POS_CENTER_ALWAYS.
13486         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13487         the same way as GTK_WIN_POS_CENTER.
13488
13489 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13490
13491         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13492         with (!(info->last_flags & GDK_HINT_POS)) instead of
13493         (!info->last_flags & GDK_HINT_POS).
13494
13495         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13496         new_height unconditionally, because we use these values even if
13497         !default_size_changed && !hints_changed.
13498         comented the (default_size_changed || hints_changed) case with
13499         respect to resize rejects from the window manager.
13500
13501         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13502         in the zvt condition hack, since this includes the window hints, set
13503         the hints after the handling_resize case.
13504
13505         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13506         window is initially shown with to the geometry.
13507
13508 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13509
13510         * gtk/gtkwindow.c (gtk_window_move_resize):
13511         s/size_changed/default_size_changed/g so i know what's
13512         really going on (frying brain on smaller flame now).
13513
13514 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13515
13516         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13517         we have size_changed upon handling_resize. this is a gross
13518         workaround for the broken zvt widget and should be removed in
13519         1.3 again (search for FIXME).
13520         Owen provided an accurate comment for this:
13521
13522         /* We could be here for two reasons
13523          *  1) We coincidentally got a resize while handling
13524          *     another resize.
13525          *  2) Our computation of size_changed was completely
13526          *     screwed up, probably because one of our children
13527          *     is broken. It's probably a zvt widget.
13528          *
13529          * For 1), we could just go ahead and ask for the
13530          * new size right now, but doing that for 2)
13531          * might well be fighting the user (and can even
13532          * trigger a loop). Since we really don't want to
13533          * do that, we requeue a resize in hopes that
13534          * by the time it gets handled, the child has seen
13535          * the light and is willing to go along with the
13536          * new size. (this happens for the zvt widget, since
13537          * the size_allocate() above will have stored the
13538          * requisition corresponding to the new size in the
13539          * zvt widget)
13540          *
13541          * This doesn't buy us anything for 1), but it shouldn't
13542          * hurt us too badly, since it is what would have
13543          * happened if we had gotten the configure event before
13544          * the new size had been set.
13545          */
13546
13547 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13548
13549         * gtk/gtkrc.c: deal properly with the fact that RC
13550           style lists may include rc styles more than once.
13551
13552         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13553           unused static function.
13554
13555         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13556           stack of directories of RC files currently being
13557           parsed and implicitely add them to pixmap path.
13558           
13559           This fixes a bug where the directory would get
13560           appended then overwritten by pixmap_path declarations.
13561
13562           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13563
13564         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13565           theme's exit function. (Patch from Peter Wainwright,
13566           bug #1454)
13567
13568         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13569           Add a destroy() handler to take care of removing
13570           group for menu item. (Fixes bug #1197)
13571
13572         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13573           in warning message.
13574
13575 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13576
13577         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13578         roundtrip to figure window's width and height, since we know that
13579         anyways from widget->allocation.
13580
13581 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13582
13583         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13584           the hints after we request the new size.
13585
13586 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13587
13588         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13589           GTK_WIDGET_REALIZED() assertion - we can compute the
13590           hints before we are realized.
13591
13592         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13593           hint changing so that we have a value of hints_changed
13594           when we decide whether to constrain the window size.
13595
13596         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13597
13598         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13599         change back to G_MAXINT.
13600
13601 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13602
13603         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13604         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13605         contain uncluttered values.
13606         (gtk_window_compute_hints): simply assert that window is realized
13607         and that geometry_info is valid, since we rely on this anyways.
13608         (gtk_window_constrain_size): major cleanups to the code.
13609         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13610         for the base size, instead of the minimums. use 32767 as max width
13611         and height (like in gtkwindow.c) instead of G_MAXINT.
13612
13613 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13614
13615         * cleaned up the GtkContainer.need_resize flag handling mess, we
13616         only need to force resize requests when we were prematurely
13617         realized, or our widget tree was modified when we were temporarily
13618         hidden. handling these cases directly upon showing the window (i.e.
13619         while the GdkWindow is still unmapped) avoids the need to wait for
13620         a configure event response and therefore makes the GUI more snappier
13621         and avoids blank windows during the roundtrip.
13622
13623         * gtk/gtkwidget.c:
13624         (gtk_widget_hide): 
13625         (gtk_widget_show): don't queue resizes on toplevels, they know how
13626         to deal with matters.
13627
13628         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13629         flag directly for not visible resize containers and spare us unecessary
13630         signal emissions.
13631
13632         * gtk/gtkwindow.c:
13633         (gtk_window_realize): if we need to enforce premature size allocation,
13634         queue a container resize so we are correctly resized later on.
13635         (gtk_window_init):
13636         (gtk_window_size_request):
13637         don't freak around with the ->need_resize flag,
13638         gtk_container_queue_resize() will care about that.
13639         (gtk_window_show):
13640         handle initial resizing issues here, we can handle matters better in
13641         this place, especially since we know that our GdkWindow is still
13642         unmapped.
13643         (gtk_window_move_resize):
13644         don't care about ->need_resize at all.
13645         handle size changes properly that occoured while we waited for a
13646         configure event.
13647
13648 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13649
13650         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13651         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13652         Move the hint setting code from gtk_widget_set_uposition
13653         to here; set the hints so that we respect any previously
13654         set geometry hints.
13655
13656         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13657         change the window hints here or move the window here,
13658         let that happen in gtk_window_move_resize().
13659
13660 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13661
13662         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13663         to already queued resizes (and therefore redraws) on a widget, check
13664         its anchestry as well.
13665
13666         * gtk/gtkcontainer.c:
13667         (gtk_container_queue_resize): clear resize widgets for resize
13668         containers before aborting prematurely. this is especially important
13669         for toplevels which may need imemdiate processing or their resize
13670         handler to be queued.
13671         (gtk_container_dequeue_resize_handler): added new internal function for
13672         gtkwindow.c.
13673
13674         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13675         configure event, take possible changes in window position into account
13676         as well.
13677         if we request a new window size, queue up a resize handler that will
13678         last until the configure event response arrives.
13679         combined the ->need_resize case (initial show) with the general size
13680         (hints) changed case and added even more comments.
13681         if !auto_shrink, only revert to the old allocation if the new size
13682         is smaller than the current allocation.
13683
13684 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13685
13686         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13687                            gtk_window_set_geometry_hints
13688                            gtk_window_set_default_size):
13689         When hints are set, queue a resize so that the hints will
13690         be eventually reset on the toplevel.
13691
13692         * gtk/gtkwindow.c (gtk_window_show): Use
13693         gtk_window_compute_default_size(). Clear the need_resize flag
13694         on the initail map so that we don't unnecessarily trigger the
13695         resize code.
13696
13697         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13698         into separate functions. Compare the hints we are setting
13699         with what we set last time so that we can accurately
13700         tell when we need to reset the hints.
13701
13702         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13703         function to figure out the size from requisition
13704         and default_size.
13705
13706         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13707         from fvwm to constrain a size to the geometry hints.
13708
13709         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13710         to compare two sets of geometry hints.
13711
13712         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13713         from gtk_window_set_hints(), just compute the hints,
13714         don't set them.
13715
13716         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13717         code from gtk_window_move_resize() to separate function,
13718         rationalize a bit.
13719
13720 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13721
13722         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13723         structure into a new private structure.
13724
13725         * gtkrc.c: Split GtkRcStyle into public/private.
13726         In the private part, add a list of pointers to the
13727         RcStyle lists this RcStyle participates in.
13728
13729         * gtkrc.c: When a RcStyle is free, remove all
13730         lists referencing it from the 
13731         realized_style_ht hash, and free those lists.
13732         
13733         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13734         gtk_rc_init(), since that adds the default styles
13735         to the list of parsed RC files again.
13736
13737         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13738         
13739 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13740
13741         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13742         checks that ensure that a widget's allocation is at least 1 in width
13743         and height. (GNOME note: this doesn't affect old panel code anymore,
13744         because GtkSocket will request width and height of at least 1 since
13745         Fri Jul 23).
13746
13747         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13748         allocated yet (happens if the user realizes the window prematurely),
13749         size request and allocate it.
13750         (gtk_window_size_allocate): guard against guint underflows.
13751
13752 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13753
13754         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13755         in gtk_built_sources, so gtk.defs gets built prior to all other
13756         sources.
13757
13758 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13759
13760         * gtk/Makefile.am:
13761         invoke indent on gtkmarshal.*. 
13762         rewrote source generation rules, use COPYING as oldest source tag for
13763         a piggyback rule to generate all sources from (don't touch it ;).
13764         major cleanups, strip spaces on build rules for GNU Make.
13765
13766         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13767         source and target files from commandline arguments. don't invoke indent.
13768
13769 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13770
13771         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13772         notebook after switch to avoid drawing problems.
13773         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13774         
13775         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13776         show them instead. 
13777         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13778
13779 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13780
13781         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13782         notebook after switch to avoid drawing problems.
13783         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13784         
13785         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13786         show them instead. 
13787         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13788
13789 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13790
13791         * gtk/gtkwindow.c:
13792         we use window->need_resize from configure_event now, to indicate that
13793         the gtkwindow should keep its allocation (e.g. because the user resized
13794         the window through window manager handles). resize_count is now reliably
13795         used to figure whether we got the allocation we requested from the
13796         window manager.
13797         configure events get queued as resizes now, the real stuff (size
13798         computation and allocation) now only goes on in gtk_window_move_resize().
13799         GtkWindow's requisition now contains its *real* requisition (like all
13800         other widgets), *not* taking usize into account.
13801         geometry_info->last_{width|height} is now updated from set_hints() only
13802         so it always contains the last hints we set for the window manager.
13803         made some event handlers return TRUE instead of FALSE.
13804         the overall code should be much more straight forward now, and the
13805         significant code portions are accompanied by comments now.
13806         (gtk_window_set_hints):
13807         removed requisition argument and made it
13808         fetch the requisition through gtk_widget_get_child_requisition.
13809         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13810         does that now.
13811         (gtk_window_show):
13812         ensure that the widget is realized before calling 
13813         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13814         ensure that we got properly size requested and allocated before
13815         realization.
13816         (gtk_window_configure_event):
13817         ignore plain window moves, or reallocate the widget tree through the
13818         resize queue otherwise.
13819         (gtk_window_move_resize):
13820         mostly rewrote this function to figure window manager hints more
13821         reliably, coalesce window moves and resizes to reduce configure events
13822         and do actuall size allocations.
13823
13824 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13825
13826         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13827         that have a resize pending, because a redraw is already queued for them.
13828
13829         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13830         hack to clear resize_widgets.
13831
13832         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13833         for resize containers prior to size allocation. (this is also a bit
13834         ugly, but avoids side effects for stopped emissions and is thus more
13835         reliable).
13836         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13837
13838         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13839         function from gtk_tooltips_expose, as we connect to ::expose_event
13840         *and* ::draw now.
13841
13842 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13843
13844         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13845         checks.
13846         (gtk_target_list_unref): Likewise.
13847
13848         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13849
13850 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13851
13852         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13853         guard against division by zero. (Fixes bug #1339)
13854
13855 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13856
13857         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13858         Prevent the trivial leak of information of allowing
13859         word motion when the entry is not visible.
13860
13861 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13862
13863         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13864         modality to error dialog as well as confirmation dialogs.
13865         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13866
13867 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13868
13869         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13870         tree->view_lines.
13871         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13872
13873         * gtk/Makefile.am (install-data-local): Solaris apparently
13874         has various troubles with ln -f; use rm first instead.
13875         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13876
13877 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13878
13879         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13880         use `cp' followed by `rm' (the `rm' was already there).
13881
13882 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13883         
13884         * configure.in: Fix autoconf warnings about cross compilation by
13885         trying to provide sane defaults for AC_TRY_RUN.
13886         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13887         put them into $(srcdir) when generated. Also add a dependency of
13888         gtksignal.h on gtkmarshal.h for -j builds. 
13889         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13890
13891 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13892
13893         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13894         GDK_THREADS_{LEAVE,ENTER} pair.
13895         (From Paul Fisher <pnfisher@redhat.com>)
13896
13897 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13898
13899         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13900         width and height are always >0 (owen).
13901
13902 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13903
13904         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13905         change that assured that a widget's allocated with and height are
13906         always >1, since this breaks *buggy* panel code. unfortunately this
13907         back-breaks the gimp's color selector.
13908
13909         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13910         allocation is always >0 in width and height, before sending the
13911         configure event; this is a *gross* hack to get the gimp back to work.
13912         
13913         * marked both cases with TODO-1.3
13914
13915 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13916
13917         * gtk/gtktext.c: Don't display wrap indicators when
13918         text is not editable and word wrap is on.
13919
13920 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13921
13922         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13923         option menus here as they are not derived from menu shell, assure that
13924         the option menu has a menu we can add items to.
13925
13926 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13927
13928         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13929         width/height to (gint) before calculations and check against < 0 to
13930         avoid guint wraparounds.
13931
13932 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13933
13934         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13935         width and height is never zero. sanity check both dimensions against
13936         32767 and issue a warning if the allocation is greater than that.
13937
13938 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13939
13940         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13941         to g_main_pending() as well.
13942
13943 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13944
13945         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13946         call to g_main_iteration() - since that will regrab
13947         GTK+ lock to process events.
13948
13949 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13950
13951         * gtk/gtkwindow.c
13952         - Regularize with the rest of GTK+ by making widget->requisition
13953           not reflect the set_usize()
13954         - Always recompute geometry hints, then check if they
13955           changed before sending them to the X server. The
13956           previous checks for changes would fail in a number
13957           of circumstances. 
13958
13959 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13960
13961         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13962
13963 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13964
13965         * gtk/gtkdnd.c:
13966         - Code cleanups
13967         - Instantaneously update on modifier key presses
13968         - Allow cancellation of the drag with Escape.
13969
13970 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13971
13972         * gtk/testgtk.c (create_handle_box): Set the policy
13973         to auto_shrink - otherwise the appearance is rather
13974         strange when flipping between horizontal and vertical.
13975
13976 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13977
13978         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13979         (gtk_window_set_default_size): don't change a value if it's < 0.
13980         queue a resize.
13981
13982 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13983
13984         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13985
13986 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13987
13988         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13989         add an extra "/" when concating "/" + filename.
13990         (From Matt Grossman <mattg@oz.net>)
13991
13992 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13993
13994         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13995         for fg_gc if we set it for drawing pixmap.
13996
13997 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13998
13999         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
14000         
14001         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
14002         already set, call old engine's destroy function and
14003         unref the old engine.
14004
14005 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
14006
14007         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
14008
14009 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
14010
14011         * gtk/gtkaccelgroup.h: mark certain functions as internal.
14012
14013 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
14014
14015         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
14016         expand behaviour changed.
14017
14018         * gtk/gtklabel.c (gtk_label_set_pattern):
14019         (gtk_label_set_justify):
14020         (gtk_label_set_line_wrap):
14021         don't bother invoking queue_clear, the reallocation does
14022         that for us, always free_words so the upcoming resize will
14023         relayout the label's contents.
14024
14025 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
14026
14027         * applied argument implementation patches from Elena Devdariani
14028         <elena@cogent.ca>.
14029
14030         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
14031         ::space_style, ::relief
14032         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
14033         * gtk/gtkpreview.c: ::expand
14034         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
14035         * gtk/gtknotebook.c: ::homogeneous
14036         * gtk/gtklabel.c: ::wrap
14037         * gtk/gtklist.c: ::selection_mode
14038         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
14039         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
14040         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
14041         * gtk/gtkclist.c: ::sort_type
14042         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
14043         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
14044
14045 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
14046
14047         * gtk/gtkstyle.c: Removed ill-thought-out part of last
14048         comment.
14049
14050 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
14051
14052         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
14053         counting right when we have to attach a new style
14054         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
14055
14056         * gtk/gtkstyle.c: Documented the refcounting
14057         peculularities of gtk_style_attach.
14058
14059 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14060
14061         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
14062         window types.
14063
14064         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
14065         of GTK_TOPLEVEL for creating the window.
14066
14067 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
14068
14069         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
14070         the last argument (reported by Per Winkvist).
14071         
14072 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
14073
14074         Fixes for invisible XOR lines (Frank Loemker
14075         <floemker@TechFak.Uni-Bielefeld.DE>)
14076         
14077         * gtk/gtkclist.c (gtk_clist_realize): Always use
14078         a non-zero pixel for GDK_XOR.
14079
14080         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
14081         Use GDK_INVERT instead of GDK_XOR.
14082
14083 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
14084
14085         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
14086         signals if h/voffsets differ from adjustment values.
14087         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
14088
14089 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
14090
14091         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
14092         ::selection-done emissions up to the topmost menu shell.
14093
14094 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
14095
14096         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
14097         the user data on the window before destroying it.
14098
14099         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
14100         unrealize handler to take care of destroying 
14101         notebook->panel properly. 
14102         (Bug #1198 - Morten Welinder <terra@diku.dk>)
14103
14104         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14105         of g_new and g_realloc to stop memory leak. (Actually,
14106         we could just use g_realloc(), but I'm not 100% sure
14107         that is portable).
14108         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14109
14110 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14111
14112         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14113
14114         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14115         for fontsets.
14116
14117         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14118         with bin/button confusion.
14119
14120 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14121
14122         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14123         and show how preselection of radio items is done.
14124
14125 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14126
14127         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14128         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14129         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14130         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14131         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14132         * gtk/gtktable.c (gtk_table_attach): 
14133         * gtk/gtklist.c (gtk_list_insert_items): 
14134         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14135         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14136         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14137         * gtk/gtkbin.c (gtk_bin_add): 
14138         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14139         * gtk/gtkfixed.c (gtk_fixed_put): 
14140         * gtk/gtklayout.c (gtk_layout_put):
14141         general fixups to container_add logic. always realize child if
14142         child->parent is realized, only map the child and queue a resize
14143         if child and child->parent are both visible.
14144
14145 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14146
14147         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14148         instead of gtk_container_foreach to walk and unrealize children, so
14149         composite children get also unrealized.
14150         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14151         (gtk_widget_map): assert that the widget is visible (basic constrain).
14152         (gtk_widget_real_map): assert that the widget is realized (basic
14153         constrain).
14154
14155 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14156
14157         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14158
14159 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14160
14161         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14162         file for iso-8859-2 locales.
14163
14164         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14165
14166 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14167
14168         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14169          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14170          Remove some suspicious and useless lines. 
14171
14172 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14173
14174         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14175         width,height = 0, 0 to mean - here to edge of window,
14176         instead of -1, -1, since the former is all we support.
14177
14178 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14179
14180         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14181         when removing from quit_functions list.
14182
14183 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14184
14185         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14186
14187 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14188
14189         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14190          When redrawing characters on non-visible entry, use appropriate
14191          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14192
14193 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14194
14195         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14196         from drag coordinates.
14197         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14198         use drag_dest_cell.
14199
14200         * gtk/gtktree (drag_dest_cell)
14201         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14202         (Bug #1129)
14203
14204 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14205
14206         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14207         translate_* fields.
14208         (gtk_item_factory_finalize): invoke translate_notify independant from
14209         translate_data.
14210         (gtk_item_factory_set_translate_func): likewise.
14211         (gtk_item_factory_destroy): only remove ifactory pointer from those
14212         widgets that belong to us (stupid me).
14213
14214 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14215
14216         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14217         rc_style list when lookup succeeeds.
14218
14219 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14220
14221         * gtk/gtkctree.c (resync_selection): 
14222         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14223         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14224         bug.
14225
14226 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14227
14228         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14229         Add some missing GDK_THREADS_ENTER()/LEAVE around
14230         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14231
14232 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14233
14234         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14235         rather than emit_by_name.
14236
14237         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14238         on the widget across multiple signal emissions.
14239         (gtk_editable_delete_text): same here.
14240         (gtk_editable_class_init): set widget_class->activate_signal after
14241         editable_signals[ACTIVATE] has been created.
14242
14243 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14244
14245         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14246         position here prematurely -- we might not have the
14247         right ->min_position and ->max_position yet.
14248
14249 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14250
14251         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14252         Add error traps so if the other end of the connection
14253         dies, we survive.
14254
14255         * gtk/gtkselection.c (gtk_selection_notify): Clean
14256         up properly when selection property retrieval fails.
14257         
14258         * gtk/gtkselection.c (gtk_selection_request): Correctly
14259         reject SelectionRequest notifies where the handler
14260         returns no data.
14261
14262 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14263
14264         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14265         when we've previously highlighted.
14266
14267         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14268         emit two "drag_leave" signals for Motif drops.
14269
14270         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14271         back the correct status messages when dropping from
14272         Motif onto a proxy window that is rejecting the
14273         drop.
14274
14275 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14276
14277         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14278         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14279         to compare two argument values. added gtk_arg_to_valueloc() to set a
14280         variable from an arg through its location (pointer).
14281
14282         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14283         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14284         as gfloat*, uchars are collected as guchar*, ints are collected as
14285         gint*, etc...
14286
14287 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14288
14289         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14290         Include <string.h> instead of <strings.h>.
14291
14292         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14293         (actually, a lot more duplicate includes occur if
14294          you trace through the sequence of #include's)
14295         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14296         
14297 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14298
14299         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14300         gtk-a-higuti-990322-[0-3]
14301
14302         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14303         that was causing -DX_LOCALE not to work.
14304
14305         * gtk/gtkrc.c (gtk_rc_init):
14306         X_LOCALE will never have LC_MESSAGES defined
14307
14308 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14309
14310         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14311         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14312
14313         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14314         left/right as well (gtk-michael-980726-0.patch.gz).
14315
14316         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14317         for pointer values, use gchar instead of char. fixed uline allocation
14318         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14319         chunks instead of G_ALLOC_ONLY.
14320         (gtk_label_size_request): always alter requisition as passed and leave
14321         widget->requisition alone.
14322         (gtk_label_set_text): allow NULL strings.
14323         (gtk_label_new): likewise.
14324
14325 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14326
14327         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14328
14329 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14330
14331         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14332         *and* mapped (i.e. drawable).
14333         (gtk_bin_expose): only send exposes to drawable children.
14334
14335         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14336         (gtk_box_expose): only send exposes to drawable children.
14337
14338         * gtk/gtkhscale.c (gtk_hscale_draw): 
14339         * gtk/gtkvscale.c (gtk_vscale_draw):
14340         hm, this is an ugly one. we first compute the size of our trough area
14341         here (window relative) and then check intersection with the draw_area
14342         which is parent relative because we're a NO_WINDOW widget, so we need
14343         to offset the trough area by allocation.x and allocation.y before the
14344         check. (this must not be done for the background area though, since
14345         that's already computed parent relative).
14346
14347 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14348
14349         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14350         unrealize title buttons.
14351
14352 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14353
14354         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14355         (gtk_clist_column_title_active): 
14356         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14357
14358         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14359         zero initialize event, removed superfluous gdk_window_get_pointer call
14360
14361         * gtk/gtklist.c (gtk_list_vertical_timeout)
14362         (gtk_list_horizontal_timeout): removed superfluous
14363         gdk_window_get_pointer call
14364
14365 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14366
14367         * plugging problems reported by "Bruce Mitchener, Jr."
14368         <bruce@puremagic.com> due to a purify session.
14369
14370         * gtk/gtkstyle.c:
14371         (gtk_style_ref): 
14372         (gtk_style_unref): assert ref_count to be > 0.
14373
14374         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14375         the requisition.
14376         (gtk_clist_set_shift): likewise.
14377
14378         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14379         adjustments.
14380
14381         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14382         event before sending it and set send_event to TRUE (which needs to
14383         be done for *all* synthesized events).
14384         (gtk_list_vertical_timeout): likewise.
14385
14386         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14387         leaks.
14388
14389         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14390         to TRUE when synthesizing events.
14391
14392 [ *** end of merges from 1.2 *** ]      
14393         
14394 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14395
14396         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14397         (or copied from gdkconfig.h.win32 on Win32, sigh).
14398
14399         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14400
14401         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14402
14403         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14404
14405         * gdk/gdkconfig.h.win32: New file.
14406
14407         * gdk/win32/makefile.cygwin: Build just a static archive here.
14408
14409         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14410         for the DLL from the static archive built above.
14411
14412         * gdk/gdk.def: Moved here from the win32 subdirectory.
14413
14414         * gdk/win32/*: Adapt for the changed private struct organisation.
14415
14416         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14417
14418 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14419
14420         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14421         for wheel mice (buttons 4 and 5).
14422
14423 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14424
14425         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14426         drawables use just the pixel field in the foreground and
14427         background GdkColor of the GdkGC.
14428
14429         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14430         GdkColors containing uninitialized (red,green,blue) fields, and
14431         just the pixel field filled in, and furthermore in the
14432         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14433         It thus turns out that we really don't need to have the full
14434         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14435         it later to have just the pixel values.
14436
14437 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14438
14439         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14440
14441 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14442
14443         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14444         New question on GtkLabel background colors.
14445
14446         * docs/gtk_tut.sgml:
14447           - Correct the example code callback
14448             function definitions.
14449           - Update the gtkdial example code, from Frans van Schaik.
14450           - Update setselection.c to current API.
14451
14452         * examples/Makefile examples/*/*.c: Update to code
14453         listed in tutorial.
14454
14455 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14456
14457         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14458         subrange table (from the "Developing International Software for
14459         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14460         block... Get the loaded font's charset correctly.
14461
14462         (Note that this, and the other *-win32.c files, still really are
14463         the old ones, the win32 subdirectory is not ready for compilation
14464         yet after the reorg.)
14465
14466 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14467
14468         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14469         check.
14470
14471 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14472
14473         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14474         on results of XQueryDeviceState().
14475
14476 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14477
14478         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14479         we need to accesss only ->children. We need an accessor
14480         for the children.
14481
14482         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14483         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14484         to get rid of gdkx.h include.
14485         
14486         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14487         and random references to 'None'.
14488
14489         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14490         Get rid of unused #include <gdk/gdkx.h>
14491
14492         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14493         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14494         gdkconfig.h.
14495
14496 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14497
14498         * gdk/win32/gdkdraw.c
14499         * gdk/win32/gdkfont.c
14500         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14501         following yesterday's changes. (Unrelated to Owen's reorg.)
14502
14503 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14504
14505         * gdk/x11/gdkinput-gxi.c: Add missing include,
14506           fix GdkWindowPrivate => GdkDrawablePrivate.
14507
14508         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14509
14510         * gdk/x11/Makefile.am (xinput_sources): Add missing
14511         backslash to fix building with --with-xinput=none
14512
14513 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14514
14515         Move all X specific code into the x11/ directory.
14516         Aside from shuffling things around, did the following:
14517
14518        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14519          gdk_arg_context_* - a simple argument parsing system
14520          in the style of popt.
14521
14522        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14523          gdk/x11/gdkprivate-x11.h:
14524          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14525          add ->klass and ->klass_data fields. The klass_data
14526          field points to an auxilliary structure that is
14527          windowing system dependent.
14528
14529        * gdk/gdkfont.c: Make most of the measurement functions
14530          simply wrappers around gdk_text_extents().
14531
14532        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14533          _gdk_font_strlen() function that hides the weird
14534          behavior in gtk+-1.[02] where a string is interpreted
14535          differently for 8-bit and 16-bit fonts.
14536
14537        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14538          to store common code for synthesizing double/triple
14539          press events.
14540         
14541        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14542          Make all the function that modify an existing GC
14543          simply wrappers around gdk_gc_set_values().
14544          
14545        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14546          for throwing out later.
14547
14548        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14549          GdkImagePrivate and GdkColormapPrivate to have a
14550          windowing system dependent part (GdkFontPrivateX etc.)
14551          that "derives" from the system-independent part.
14552
14553        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14554          Got rid of the included-source-files for XInput in
14555          favor of automake conditionals. (Which didn't exist
14556          when XInput support was originally added.)
14557
14558        * gdk/gdkrgb.c: Remove the visual id from the debugging
14559          statements since that is X11 specific; print out
14560          type/depth info instead.
14561          
14562
14563 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14564
14565         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14566         loading duplicates of hashed fonts.
14567
14568         * gdk/gdk.c (gdk_keysym_convert_case): rename
14569         gdk_XConvertCase to gdk_keysym_convert_case, allow
14570         results to be NULL in the GTK+ style.
14571
14572         * gdk/gdkcompat.h: Started compatibility header
14573         for renames.
14574
14575 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14576
14577         * gdk/win32/gdkprivate.h: New font private structures, related to
14578         fontsets.
14579
14580         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14581         gdk_font_list_free(). On X11, will just be wrappers to
14582         XListFonts() and XFreeFontNames(). On Win32, the code previously
14583         in gtkfontsel.c is now here.
14584
14585         New function gdk_font_xlfd_create(). On X11 will get the FONT
14586         property of the font (for GDK_FONT_FONTs), or call
14587         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14588         builds a XLFD style name from the font information in the LOGFONT
14589         struct(s).
14590
14591         New function gdk_font_xlfd_free(), which correspondingly frees the
14592         string returned by gdk_font_xlfd_create().
14593
14594         Implement fontsets on Win32. Add a function that iterates over a
14595         wide char string and calls a callback function for each substring
14596         of wide chars from the same Unicode subrange (and thus probably
14597         available in the same real font).
14598
14599         Improve the XLFD emulation a bit.
14600
14601         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14602
14603         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14604         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14605         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14606         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14607         ImmGetCompositionStringW() to get the composed Unicode chars.
14608
14609         * gdk/win32/gdkgc.c
14610         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14611         struct changes.
14612
14613         * gdk/win32/gdk.def: Add the new functions.
14614
14615 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14616
14617         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14618         get the Platform SDK to get <dimm.h>.
14619
14620         * gdk/win32/gdkevents.c: More event handling fixes and
14621         simplification. Never generate motion events with is_hint true. We
14622         used to do that on bogus grounds earlier. Windows sends
14623         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14624         moved, ignore these.
14625
14626         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14627
14628         * gdk/win32/gdkglobals.c
14629         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14630         the TrackMouseEvent function, and use it.
14631
14632         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14633         char before calling WideCharToMultiByte in order to get a string
14634         for the window title.
14635
14636         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14637
14638         * gdk/win32/gdk.def: Remove obsolete functions.
14639
14640         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14641         /nodefaultlib and /defaultlib switches.
14642
14643         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14644
14645 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14646
14647         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14648         EuroSign).
14649
14650         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14651         same type as GdkWChar, especially on Win32.
14652
14653         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14654
14655         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14656         before passing to Windows GDI for drawing etc. Convert to the
14657         system default codepage before passing to Windows as window
14658         titles.
14659
14660         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14661         support changing input locale on the fly.
14662
14663         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14664         on-the-fly changes. Convert incoming characters from the current
14665         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14666         on the current input language. Use keysym<->Unicode mapping tables
14667         and functions borrowed from xterm sources.
14668
14669         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14670         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14671         Manager) if available. IMEs and the Active IMM are available under
14672         the disguise of Chinese, Korean and Japanese support for IE and
14673         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14674         support is present in all editions (as long as you install it).
14675
14676         Call DispatchMessage from gdk_events_queue() (and thus
14677         gdk_WindowProc()), instead of duplicating the code in
14678         gdk_WindowProc().
14679
14680         Reworked the grab handling and propagation code, factored out
14681         duplicated code snippets into separate functions. Other cleanups,
14682         too.
14683
14684         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14685         the <dimm.h> header describing the Active IMM.
14686
14687         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14688         just do the same as for "single" fonts.
14689
14690         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14691         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14692         the new keysyms from gdkkeysyms.h.
14693
14694         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14695         fontset, so that gtkentry uses wide characters.
14696
14697         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14698         GTk+'s system directory "gtk+", not "gtk".
14699
14700 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14701
14702         * docs/gtkfaq.sgml: FAQ update
14703
14704 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14705
14706         * gdk/win32/gdkprivate.h: Add more font private data.
14707
14708         * gdk/win32/gdkfont.c
14709         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14710         fonts and strings. Now works much better. You still have to
14711         have a correct font selected, though. No fontset emulation yet.
14712
14713 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14714
14715         * gtk/maketypes.awk: Use G_OS_WIN32.
14716
14717         * gtk/gtk.def: Add some missing entry points. Also some non-public
14718         ones, but PyGTK porter claims to need them.
14719
14720         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14721         built-in type generation.
14722
14723 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14724
14725         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14726         GDK_FONT_FONT fonts (which is all we have for now, we don't
14727         emulate fontsets). The X11 version uses plain XDrawString in that
14728         case, too. The string passed to gdk_draw_text_wc seems to be in
14729         fact (at least, when used by gtkentry and gtktext) either in a
14730         single-byte charset, or a DBCS. Not Unicode.
14731
14732         This fixes the problem in gtkfontsel, where even if you had
14733         selected a font with a non-Latin1 charset (windows-greek, for
14734         instance), the preview still used Latin-1 glyphs.
14735
14736         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14737         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14738         (gdk_font_load): Recognize the demibold etc weights, even if we
14739         don't have the corresponding constants in the headers.
14740         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14741         version. Should save font resources a bit, when we don't have
14742         multiple HFONTs for the same font.
14743
14744         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14745         version.
14746
14747 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14748
14749         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14750         X values
14751
14752 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14753
14754         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14755         layout support (as mentioned on
14756         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14757
14758 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14759
14760         * gtk/fnmatch.c
14761         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14762
14763 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14764
14765         * configure.in (ALL_LINGUAS): Added Galician (gl)
14766
14767 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14768
14769         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14770
14771         * gdk/win32/gdkcompat.c: New file, actually provide an
14772         implementation for the deprecated functions. (Just temporarily.)
14773
14774         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14775
14776         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14777
14778         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14779
14780 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14781
14782         * configure.in: Added "uk" to ALL_LINGUAS.
14783         
14784 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14785
14786         * configure.in: correct checking for BeOS check
14787
14788         * gdk/gdktypes.h
14789         * gtk/fnmatch.c
14790         * gtk/gtkfilesel.c
14791         * gtk/gtkitemfactory.c
14792         * gtk/gtkmain.[ch]
14793         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14794
14795 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14796
14797         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14798         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14799         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14800         by Bulgarian). 
14801
14802 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14803
14804         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14805         Fix a reference to window_private->destroyed.   
14806
14807         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14808         (ugly) setting of an internal GdkWindow member to use
14809         a _slightly_ cleaner macro.
14810
14811         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14812         GdkDrawablePrivate and GdkWindowPrivate.
14813         Add extra macros for accessing GDK_DRAWABLE_ components.
14814
14815         * *.[ch]: Massive adjustments for the above, use the
14816         new macros in a lot of places.
14817
14818 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14819
14820         * gdk/gdktypes.h: Make GdkDrawable the base type,
14821         not GdkWindow.
14822
14823 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14824
14825         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14826
14827 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14828
14829         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14830
14831 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14832
14833         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14834         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14835
14836         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14837
14838         * docs/gtk-config.1: Now autogenerated.
14839         * docs/Changes-1.4.txt: started
14840         
14841 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14842
14843         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14844         to #ifdef also here.
14845
14846         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14847         Owen did to the X11 backend.
14848
14849         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14850         ScrollWindowEx when blitting inside a window, it can't be correct
14851         in the general case.
14852
14853         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14854         WM_GETMINMAXINFO is easier.
14855
14856         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14857         depth equal to the bitspixel value, not the visual's depth.
14858
14859         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14860         to 24 even if the bitspixel value is 32.
14861
14862         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14863         need to check for depth==32 when bpp==32, depth will always be 24.
14864
14865 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14866
14867         * docs/Changes-1.4.txt: Started
14868         
14869         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14870
14871         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14872         
14873         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14874         into C file.
14875         
14876         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14877         header to gdkinputprivate.h.
14878
14879         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14880         unused since before 1.2.
14881
14882 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14883
14884         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14885         expand possible hex escapes in the font family (put there by
14886         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14887         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14888         On Win32, add hex escapes here, too.
14889
14890 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14891
14892         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14893         to #ifdef GDK_WINDOWING_X11.
14894
14895 [ Merges from gtk-1-2 ]
14896
14897 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14898
14899         * configure.in: fixed "GNU Make" check to pass with new make version
14900         3.77.95.
14901
14902 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14903
14904         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14905         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14906         AM_PATH_GTK() macros don't get confused by the -pre1.
14907
14908 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14909
14910         * configure.in (REBUILD): Change check for perl5
14911           to check explicitely for v >= 5.002. (5.001
14912           does not work with our scripts.)
14913
14914 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14915
14916         * configure.in: evaluate $PERL for the perl version check. added
14917         --disable-rebuilds to give the user an option to completely disable
14918         any source autogeneration rules.
14919
14920 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14921
14922         * configure.in: evaluate $ac_make when checking for GNU Make.
14923
14924 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14925
14926         * docs/Makefile.am: added generation.txt.
14927
14928         * Makefile.am: require automake 1.4, build README from README.in and
14929         INSTALL from INSTALL.in in dist-hook.
14930         
14931         * README.in:
14932         * INSTALL.in: new files to autogenerate README and INSTALL from.
14933
14934         * configure.in: figure whether we have GNU Make
14935
14936         * docs/generation.txt: minor additions/corrections.
14937
14938 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14939
14940         * docs/gtkfaq.sgml: FAQ Update
14941
14942 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14943         
14944         * configure.in: Fix autoconf warnings about cross compilation by
14945         trying to provide sane defaults for AC_TRY_RUN.
14946
14947 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14948
14949         * ltconfig
14950         * ltmain.sh: upgrade to libtool 1.3.3
14951
14952 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14953
14954         * INSTALL: Indicate that the --with-glib= configure
14955         time flag is unsupported.
14956
14957 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14958
14959         * docs/generation.txt: Added a file that gives
14960         documenation about the autogeneration process for
14961         various autogenerated files.
14962         
14963 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14964
14965         * configure.in (LIBS): Look for libgmodule in the
14966         right location.
14967
14968 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14969
14970         * docs/gtk_tut.sgml: Removed references to
14971         code examples in my directory on gtk.org as
14972         they should all be in the tutorial now.
14973
14974         * docs/gtk_tut.sgml: Added sources for dial-test
14975         and scribble-xinput programs that were previously
14976         missing.
14977
14978 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14979
14980         * TODO: Added entry about menu keyboard navigation, removed
14981         some finished items.
14982
14983 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14984
14985         * acinclude.m4: Standardize on func_dgettext
14986         not func_gettext, so that the checks for dgettext
14987         actually are paid attention to.
14988
14989 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14990
14991         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14992         directly, rather than repeating the checks for
14993         gettext.
14994
14995         * INSTALL: Added information about gettext and
14996         NLS support.
14997
14998         * acinclude.m4 (LIBM): Check for dgettext, not
14999         just gettext. This should hopefully fix things wrt
15000         systems with old versions of GNU gettext installed.
15001
15002 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
15003
15004         * configure.in (LIBS): Look for libgmodule in the
15005         right location.
15006
15007 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15008
15009         * autogen.sh: add --enable-maintainer-mode
15010
15011         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
15012
15013 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
15014
15015         * docs/gtk-config.1.in:
15016           docs/Makefile.am:
15017           configure.in: gtk-config is now generated.
15018
15019         * docs/gtk-config.1: Removed, now generated.
15020
15021 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
15022
15023         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
15024         handle CreateNotify itself, still put out a debuging message for
15025         --gdk-debug=events. made the ReparentNotify debugging message more
15026         verbose.
15027         wrap xcoords translation for ConfigureEvents into an error trap,
15028         a destroy event may already be pending, and in that case, the
15029         actuall coordinate values are not at all critical.
15030
15031 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
15032
15033         * gdk/gdkcc.c: Stop leaking the color_hash all over
15034         the place. Simplify and improve the logic.
15035
15036 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15037
15038         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
15039         for prototypes and function implementations consistent (reported
15040         by Tomas Ogren).
15041
15042 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15043
15044         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
15045         send_event set in debugging output.
15046         (gdk_compress_exposures): default initialize the event so we don't
15047         operate on bogus values (namely send_event).
15048
15049 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15050
15051         * gdk/gdkwindow.c: When we receive an unexpected
15052         destroy notify on one of our windows, don't just
15053         warn about it, also mark our windows as destroyed.
15054
15055 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
15056
15057         * gdk/gdkfont.c (gdk_font_hash_insert): Add
15058           name => font and name => fontset hashes. The 
15059           name => fontset hash is a _big_ win since we
15060           weren't previously caching fontsets at all and loading
15061           fontsets is expensive. The name => font hash
15062           is less of a win, but it does save us from doing
15063           repeated XQueryFont calls on the same font.
15064
15065         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
15066           list so we can remove font/fontset from hash.
15067
15068 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15069
15070         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
15071           and slightly confusing test. [ XInternAtom (,,TRUE)
15072           will never return None ].
15073
15074 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
15075
15076         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
15077           gdk/gdkwindow.c (gdk_window_set_hints):
15078
15079         Don't omit setting the properties if flags == 0 -
15080         there may be an existing set of properties there
15081         already. (Very old bug. Would it be better to
15082         delete the property instead?)
15083
15084         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
15085           spelling error in comment.
15086
15087 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
15088
15089         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
15090           to avoid stomping over gdk_error_warnings.
15091
15092         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
15093           as (bits_per_pixel + 7) / 8. This gives the same
15094           result as before for multiples of 8, but actually
15095           a "reasonable" value for 1bit or 4bit displays.
15096
15097 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15098
15099         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
15100         GNU Make.
15101
15102 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15103
15104         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15105         discarding configure events.
15106
15107 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15108
15109         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15110         refcount is greater than zero.
15111
15112         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15113
15114         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15115
15116         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15117
15118         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15119
15120 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15121
15122         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15123         that format 32 => sizeof(item) == 4. It really is
15124         sizeof(long).
15125
15126 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15127
15128         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15129         core dump at all on X IO errors, only core dump
15130         if --enable-debug for X errors.
15131
15132 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15133
15134         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15135         unknown window:" message. disabled ConfigureNotify discarding code,
15136         because it led to events being processed out of order.
15137
15138 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15139
15140         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15141
15142         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15143         we export this function, supress error warnings and don't reset the
15144         error code in the first half of this function.
15145
15146         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15147         code (instead of just -1) so gdk_error_trap_pop() reveals something
15148         actually informative about the error that happened.
15149
15150         * gdk/*.c:
15151         don't rely on gdk_error_code being -1 if an error occoured, but just
15152         gdk_error_code != 0.
15153
15154 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15155
15156         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15157         pointer *before* invoking the filter function, so we at least don't
15158         crash if a filter is removed that is currently executed. window filters
15159         *really* need to be made truely reentrant at some point.
15160
15161 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15162
15163         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15164         PropertyNotify debug messages.
15165
15166 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15167         
15168         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15169         
15170         * gdk/gdkim.c: Fix cut-and-paste errors for 
15171         x/y and PreeditAttributes/StatusAttributes.
15172
15173 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15174
15175         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15176         G_MAXINT to 2^16 to alleviate overflow problems in
15177         various window managers.
15178
15179 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15180
15181         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15182         for fontsets.
15183
15184 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15185
15186         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15187         Initialize size_hints.x and size_hints.y because kwm
15188         brokenly pays attention to them.
15189         (Bug #1181 -  Lars Heete <hel@admin.de>)
15190
15191 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15192
15193         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15194         return value of gdk_list_visuals(). 
15195         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15196
15197 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15198
15199         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15200         XSetIMValues to (void *) when comparing to NULL, to workaround
15201         the problem of some compilers barfing since older X headers don't
15202         have the prototype for it.
15203
15204 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15205
15206         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15207         for pseudocolor where colormap->colors was double
15208         allocated.
15209
15210         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15211         color value in the hash table with the pixel filled
15212         in so when we do later hash table lookups, the color
15213         value is correct.
15214         
15215 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15216
15217         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15218         making the call
15219
15220 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15223         pointed out by Morten Welinder <terra@diku.dk>.
15224
15225 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15226
15227         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15228           default filter from the list
15229
15230 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15231
15232         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15233           default filter from the list
15234
15235 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15236
15237         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15238
15239         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15240         g_strdup_printf instead of calcing the length separately
15241
15242 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15243
15244         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15245         that we don't do in many other places. (Fixing duplicate 
15246         #include of config.h)
15247
15248         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15249         Otherwise, #ifndef XINPUT_NONE check in the latter
15250         doesn't work. (Bug #546)
15251
15252 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15253
15254         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15255         "None" case insensitive.
15256
15257 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15258
15259         * gdk/gdkselection.c: 
15260         Add error traps so if the other end of the connection
15261         dies, we survive.
15262
15263 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15264
15265         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15266         dest_xid field into two fields - one for the window
15267         to send in messages, one to indicate the last looked
15268         up window for caching purposes. This is needed, so
15269         that Leave messages get the correct window.
15270
15271 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15272
15273         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15274         Fix warning created by people mucking around
15275         with the gsource API.
15276
15277         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15278         Change mapping between GIOCondition and GdkInputCondition
15279         to match the way the Linux kernel does it. This should
15280         fix problems where closed pipes were no longer signalling
15281         GDK_INPUT_READ on systems with a native poll().
15282
15283 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15284
15285         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15286         explicitly for the string "None" - it is in the XPM
15287         spec and some servers treat unknown colors in odd ways
15288         (like asking the user!)
15289
15290 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15291
15292         * gdk/gdkevents.c: made "->" into a "." of previous change so
15293         it compiles
15294
15295 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15296
15297         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15298         window field of the event structure before calling
15299         user filters.
15300
15301 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15302
15303         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15304         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15305
15306 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15307
15308         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15309         intermediate text property - prevents major memory
15310         leak when gdk_use_mb.
15311         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15312
15313 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15314
15315         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15316         gtk-a-higuti-990322-[0-3]
15317
15318         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15319         sizeof(wchar_t) != sizeof (GdkWChar)
15320
15321         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15322         that was causing -DX_LOCALE not to work.
15323
15324         * gtk/gtkrc.c (gtk_rc_init):
15325         X_LOCALE will never have LC_MESSAGES defined
15326
15327         * gdk/gdk.c (gdk_init_check):
15328         Remove --xim-preedit and --xim-status from argv properly.
15329
15330         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15331         that the client window is present on the X server
15332         before we pass it to the input method.
15333
15334 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15335
15336         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15337         if --display is specified on the command line, than
15338         the drag window will not be created on that display.
15339         
15340 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15341
15342         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15343         lookups with only_if_exists == TRUE were inserting
15344         bogus values into the atom cache.
15345
15346 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15347
15348         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15349         then reset it to NULL.
15350
15351         * gdk/gdkcolor.c:
15352         (gdk_colors_free): 
15353         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15354         key for g_hash_table_remove() in both functions, this prevents us
15355         from accessing possibly uninitialized portions of a GdkColor structure
15356         where we are only interested in its pixel value.
15357
15358 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15359
15360         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15361         font hash table, if we have a GdkFontPrivate entry for this font
15362         already, simply increment its reference count, provided by Olaf Dietsche
15363         <olaf.dietsche+list.gtk@netcologne.de>.
15364
15365 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15366
15367         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15368         just to be sure.
15369
15370         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15371         unused variables, leftovers from the X11 version.
15372
15373         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15374
15375         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15376         downcase fields on X11.
15377
15378 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15379         
15380         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15381         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15382
15383 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15384
15385         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15386
15387         * gtk/makefile.msc: Correct path to libintl.
15388
15389         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15390         use of gint vs. int, and gint vs. gboolean in headers and
15391         definitions. Use GtkType for the *_get_type functions. Note that
15392         these changes preserve binary compatibility.
15393
15394         * gdk/gdk.c
15395         * gdk/win32/gdk.c
15396         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15397
15398         * gtk/gtkmain.c
15399         * gtk/gtkclist.c
15400         * gtk/gtkmenufactory.c
15401         * gtk/gtknotebook.c
15402         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15403         vs. gboolean.
15404
15405         * gtk/gtkcolorsel.[ch]
15406         * gtk/gtkcombo.[ch]
15407         * gtk/gtkdrawingarea.[ch]
15408         * gtk/gtkgamma.[ch]
15409         * gtk/gtkhandlebox.[ch]
15410         * gtk/gtkhpaned.[ch]
15411         * gtk/gtkhruler.[ch]
15412         * gtk/gtkplug.[ch]
15413         * gtk/gtkpreview.[ch]
15414         * gtk/gtkruler.[ch]
15415         * gtk/gtksocket.[ch]
15416         * gtk/gtkstatusbar.[ch]
15417         * gtk/gtktoolbar.[ch]
15418         * gtk/gtkvbbox.[ch]
15419         * gtk/gtkvpaned.[ch]
15420         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15421         functions.
15422
15423         * gtk/gtkgamma.h: Fix bug, missing () in call of
15424         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15425
15426 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15427
15428         * gdk/gdkcolor.c (gdk_colormap_new)
15429         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15430         colormap->colors was allocated twice.
15431
15432         * gdk/win32/gdk.c: Remove some unused stuff.
15433
15434         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15435         colormap.
15436
15437         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15438         * gtk/gtklabel.h (gtk_label_get_type)
15439         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15440         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15441         in a couple of places, not guint.
15442
15443 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15444
15445         * configure.in,po/et.po: added Estonian language file
15446
15447 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15448
15449         * configure.in,po/da.po: added Danish file
15450
15451 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15452
15453         * docs/gtkfaq.sgml: Minor FAQ Update
15454
15455 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15456
15457         * docs/gtkfaq.sgml: FAQ update
15458
15459 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15460
15461         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15462         way to get window contents continually refreshed while resizing. I
15463         didn't like the effects myself, so it's not on by default.
15464
15465         * gdk/win32/gdkprivate.h: New flag variable
15466         gdk_event_func_from_window_proc, FALSE by default.
15467
15468         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15469         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15470         are passed --gdk-event-func-from-window-proc.
15471
15472         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15473         and we have am event_func, call it instead of enqueing the event.
15474
15475 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15476
15477         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15478         Kelley: Set expose_count in GdkEventExposes correctly.
15479
15480         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15481         MULTIPLE_WINDOW_CLASSES).
15482
15483         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15484         for bug in NT, apparently NT *does* draw the end pixel, too, in
15485         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15486
15487 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15488
15489         Improvements by Hans Breuer: 
15490
15491         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15492
15493         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15494         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15495         window contents while dragging" is turned on. Allocate at least
15496         one unique class for every GdkWindowType. If support for single
15497         window-specific icons is ever needed (eg. Dialog specific), every
15498         such window should get its own class.
15499
15500 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15501
15502         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15503         error that caused crashes.
15504
15505 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15506
15507         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15508         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15509         bugs when for instance part of the window was outside the
15510         display. Thanks to Philippe Colantoni for finding and fixing this.
15511
15512 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15513
15514         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15515         endpoint calculations which were totally wrong. (A little RTFMing
15516         helps a lot ;-)
15517
15518         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15519         from a separate directory, not from gettext, because of licensing
15520         issues (we want to use the LGPL version).
15521
15522         * README.win32: Mention the intl from glibc vs from gettext issue.
15523
15524 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15525
15526         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15527         in the key event handling: Now AltGr chars work again. Also,
15528         now Alt-digits are passed up as well as Control-digits.
15529         Pass keypad plus and minus as normal plus and minus.
15530
15531 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15532
15533         * docs/gtkfaq.sgml: FAQ Update
15534
15535 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15536
15537         * README.win32
15538         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15539         the Wintab SDK.
15540
15541         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15542         OK, but getting closer. Guard against bogus tilt data from Wacom
15543         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15544         enable easier building without Wintab.
15545
15546         * gdk/win32/gdkinput.h
15547         * gdk/win32/gdkevents.c 
15548         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15549         
15550         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15551         code. As we have just one visual on Win32, no sense to have it in a
15552         table, and no need for the hash table.
15553
15554         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15555         better on white background.
15556
15557 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15558
15559         * README.win32: Update gcc build instructions. Mention gettext is
15560         GPL.
15561
15562         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15563         supported cursor size with GetSystemMetrics.
15564
15565         * gdk/win32/gdkfont.c
15566         * gtk/gtkfontsel.c: Guard against some font weight and charset
15567         symbols being undefined (in mingw32 headers).
15568
15569         * gdk/win32/makefile.cygwin
15570         * gtk/makefile.cygwin
15571         * gtk/gtkthemes.c: No longer need to have differently named
15572         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15573
15574 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15575
15576         * docs/gtkfaq.sgml: Long awaited FAQ update.
15577
15578 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15579
15580         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15581         it. Obscure bit manipulation needed.
15582
15583         * gdk/win32/gdkevents.c: Logging.
15584         
15585         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15586         style (file name include compiler name) for theme engines.
15587
15588 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15589
15590         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15591
15592         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15593         events. The key.string wasn't zero-terminated, still we strdup'ed
15594         it in gdk_event_copy(). Synthesize crossing events for button
15595         events before possible propagation.
15596
15597         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15598
15599         * gdk/win32/makefile.cygwin
15600         * gtk/makefile.cygwin: Use new DLL naming style for the
15601         GCC-compiled ones.
15602
15603         * gdk/win32/makefile.msc
15604         * gtk/makefile.msc: Cosmetics mostly.
15605
15606         * gtk/gtk.def: Add missing entry points.
15607
15608         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15609
15610 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15611
15612         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15613         or height is zero. Don't print a warning if Pie or Arc fails, they
15614         always fail (?) for very narrow ellipses.
15615
15616         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15617         the part or the destination window corresponding to source area
15618         outside of the source drawable's boundary.
15619
15620         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15621         anything if less than two points.
15622
15623         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15624         return NULL. Gtk cut-and-paste inside a single program works
15625         better this way. (It always gets the clipboard contents from
15626         Windows, not from its own copy, which is cleared anyway. I can't
15627         say I fully understand what happens... Emulating the X selection
15628         and property stuff is a bit of a mess.)
15629
15630         * gdk/win32/gdkevents.c
15631         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15632
15633         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15634         that never got deleted). Revamp gdk_region_shrink.
15635
15636         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15637         after use.
15638
15639         * gtk/gtk.def: Add some missing entry points.
15640
15641         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15642         component.
15643
15644 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15645
15646         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15647         Control-digits specially.
15648
15649 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15650
15651         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15652
15653 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15654
15655         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15656         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15657         finding this.)
15658
15659 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15660
15661         * gtk+.spec.in: Corrected some typos in files section.
15662         
15663 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15664
15665         * README.win32: Mention using GNU gettext.
15666         * config.h.win32: Enable NLS stuff.
15667         * gtk/makefile.msc: Use GNU gettext.
15668         * gdk/win32/gdkdnd.c: Minor header reorg.
15669         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15670         cosmetics.
15671         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15672         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15673
15674 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15675
15676         * acinclude.m4
15677         * config.guess
15678         * config.status
15679         * ltconfig
15680         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15681
15682 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15683
15684         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15685         SafeAdjustWindowRectEx. Don't override all calls to
15686         AdjustWindowRectEx by it, but use it only in two places: When
15687         creating a new top-level window and when moving a top-level
15688         window.
15689
15690         Use screen coordinate rectangle, not client rectangle, in
15691         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15692         when we try to place a window so that the decoration (mainly,
15693         title bar) isn't visible.
15694
15695         These changes fix the bug that showed up for instance as the
15696         GIMP's saved top-level windows moving right and down (by an amount
15697         equal to the window decoration) for each session. This bug showed
15698         up also in testgtk's "Saved Position".
15699
15700         gdk_window_resize also redone a bit.
15701
15702 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15703
15704         * gtk/testgtkrc: Add (commented out) Windows-style theme
15705         include line.
15706
15707         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15708
15709 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15710
15711         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15712         gdkx.h to a gdk subdirectory, so that applications can include
15713         these with <gdk/*.h> without trouble.
15714
15715         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15716         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15717         have their bitmap destroyed.
15718
15719         * gdk/win32/gdk.def: Add gdk_root_parent.
15720
15721 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15722
15723         * configure.in
15724           gtk-config.in
15725           ltconfig
15726           ltmain.sh     
15727           gtk/Makefile.am: changes to compile nicely (with xlib) 
15728           on BeOS
15729
15730 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15731
15732         * acinclude.m4
15733         * config.guess
15734         * config.sub
15735         * ltconfig
15736         * ltmain.sh: upgrade to libtool 1.3
15737
15738 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15739
15740         * gtk/gtkclist.c:
15741         * gtk/gtkctree.c: merges from gtk-1-2
15742
15743 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15744
15745         Support added for building using a GNU toolchain on Win32,
15746         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15747
15748         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15749         * config.h.win32: Changes for gcc.
15750         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15751         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15752         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15753         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15754         Protect shl stuff unavaiilable with mingw32 headers.
15755         * gdk/win32/gdkevents.c: Fix typo.
15756         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15757         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15758         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15759         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15760         the mingw32 headers.
15761         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15762         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15763         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15764         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15765         Test for NATIVE_WIN32, not _MSC_VER.
15766         * gtk/gtkmain.c: No use warning about developer version on Win32,
15767         there aren't any non-developer versions anyhow.
15768         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15769         * gtk/makefile.msc: Use pthread from another directory. Minor other
15770         changes. 
15771
15772 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15773
15774         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15775           default filter from the list
15776
15777 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15778
15779         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15780          when gtk_widget_grab_default() is called for a widget that
15781          is not within a GtkWindow.
15782
15783 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15784
15785         * docs/gtk_tut.sgml, examples/clist.c: use a
15786           scrolled window in the clist example. Minor
15787           tutorial fixes.
15788
15789 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15790
15791         * docs/gtk_tut.sgml: Style check from David King
15792           <dking@youvegotmail.net>
15793
15794 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15795
15796         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15797         compile with unknown value of GDK_WINDOWING
15798
15799 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15800
15801         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15802         after the rule is fired.
15803         (install-exec-local): Install gdkconfig.h only if the contents are
15804         different from the currently installed gdkconfig.h.
15805
15806 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15807
15808         * gdk/Makefile.am (configexecincludedir): Rename from 
15809         configincludedir so that gdkconfig.h will be installed 
15810         as part of `make install-exec'. 
15811
15812 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15813
15814         * acinclude.m4
15815         * config.guess
15816         * config.sub
15817         * ltconfig
15818         * ltmain.sh: upgrade to libtool 1.2f
15819
15820         * autogen.sh: libtool is not required to autogen gtk+
15821
15822         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15823         needed)
15824
15825 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15826
15827         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15828         declaring gdk variables exported/imported from the DLL. New image
15829         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15830         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15831         GDK_DRAG_PROTO_OLE2.
15832
15833         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15834         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15835         declared only for the Win32 version, but could be in the X11
15836         version as well. (Needed for a Xlib-less gdk_imlib.)
15837         gdk_color_hash should have only one parameter. Declare
15838         gdk_threads_mutex with GDKVAR.
15839         
15840         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15841         just one parameter.
15842
15843         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15844         per pixel, not bits.
15845
15846         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15847         Fetch bpp (which means bits-per-pixel here) from another place on
15848         Win32. Accept also depth==32 (which we might get on Win32) with
15849         bpp==32.
15850
15851         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15852         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15853         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15854         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15855         in the backend-dependent directory, not in the common gdk
15856         directory.
15857
15858         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15859         headers.
15860
15861 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15862
15863         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15864         want to use the Gtk+ devel version (which is true, and yes - even i am
15865         currently working with the 1.2.x branch). so everyone reading this, you
15866         probably want to issue
15867         cvs checkout -r glib-1-2 glib
15868         and
15869         cvs checkout -r gtk-1-2 gtk+
15870         as your next two comands.
15871
15872 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15873
15874         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15875         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15876
15877         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15878         file. strongly deprecated the GTK_HAVE_* macros, we provide
15879         GTK_CHECK_VERSION() for people that need to check for certain
15880         Gtk+ versions.
15881
15882         * gtk/gtkcompat.h: removed this from CVS.
15883         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15884         idea right from the start, it just didn't seem like that back then.
15885
15886 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15887
15888         * merges from gtk-1-2:
15889
15890 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15891
15892         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15893         item factory class has been created.
15894         (gtk_item_factory_parse_rc): likewise.
15895
15896         * gtk/gtkmenu.c:
15897         keep proper references for old_active_menu_item.
15898         (gtk_menu_reparent): unset the usize of the new parent,
15899         so the menu can sanely be size requested and we don't get nasty screen
15900         artefacts upon next reparentation.
15901         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15902         enter notify. only synthesize enter notifies if the pointer really is
15903         inside the event window.
15904         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15905         (gtk_menu_popup): move the background setting stuff into
15906         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15907
15908         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15909         gtk_menu_shell_select_item() to select the new item.
15910         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15911         do the right thing for deselection as well.
15912
15913 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15914
15915         * gtk/gtkwidget.[hc]:
15916         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15917         are locked.
15918
15919         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15920         existing accelerators if the widget's accelerators are locked.
15921
15922 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15923
15924         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15925
15926         * gtk/gtkmenu.c: truely forward key press and key release events to
15927         the menu widget from the toplevel or tearoff window. we can't simply
15928         connect to that, we need to stop further processing of the events as
15929         well.
15930
15931 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15932
15933         * gtk/gtkmenu.c:
15934         (gtk_menu_key_press): pass event->keyval, event->state to
15935         gtk_accelerator_valid, instead of event->keyval twice.
15936         refuse to install single letter accelerators for menus that use
15937         single letter shortcuts.
15938
15939         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15940         gtk_menu_ensure_uline_accel_group().
15941
15942         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15943         which will always return an uline accel group, made
15944         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15945         yet created.
15946
15947 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15948
15949         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15950
15951         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15952         Leave button sensitive, trap  button_press, button_release,
15953         motion_notify, enter_notify and leave_notify events instead.
15954         (gtk_clist_column_title_active): disconnect event handler.
15955         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15956         Guillaume Laurent <glaurent@worldnet.fr>
15957
15958 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15959
15960         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15961         width/height mixups.
15962
15963         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15964         if needed.
15965
15966 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15967
15968         * gtk/testgtk.c (create_item_factory): unref the item factory after
15969         window's destruction.
15970
15971         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15972         count on the menu shell around the menu item's activation, since the
15973         signal emission may cause menu shell destruction.
15974
15975         * gtk/gtkitemfactory.c:
15976         the previous code leaked one accel group per menu. we use
15977         gtk_menu_get_uline_accel_group() now to fix that, and with that
15978         also create the underline accelerator group of the menus only if
15979         required (i.e. an underline accelerator has been specified).
15980         (gtk_item_factory_construct):
15981         (gtk_item_factory_create_item): removed code that would create an
15982         extra accel group for the menu (and leak references).
15983         (gtk_item_factory_create_item): adapted the underline accelerator
15984         installation code to properly feature gtk_menu_get_uline_accel_group().
15985
15986         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15987         menu->accel_group, this may return NULL if the accelerator group
15988         hasn't been set yet.
15989         added gtk_menu_get_uline_accel_group() to retrive the underline
15990         accelerator group of the menu, this will be created on demand
15991         and proper care is taken about its reference count.
15992
15993         * gtk/gtkitemfactory.h:
15994         * gtk/gtkitemfactory.c:
15995         dumped the approach of keeping a widgets by action list on the
15996         factory since the factory<->widget destroy negotiation didn't work
15997         and would be hard to get going at all. instead we keep a list of
15998         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15999         persistant throughout a program's life time).
16000         also, i removed the static const gchar *key_* variables, and made
16001         them inline strings (they weren't actually used anyways).
16002         (gtk_item_factory_add_item): update ifactory->items.
16003         (gtk_item_factory_destroy): destroy ifactory->items (and remove
16004         the item factory pointer from the remaining ifactory widgets).
16005         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
16006         list to find the widget.
16007         (gtk_item_factory_get_item): new function that works around
16008         gtk_item_factory_get_widget() limitations, this function will only
16009         return menu items, even for <Branch> entries.
16010
16011 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16012
16013         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16014         font hash table, if we have a GdkFontPrivate entry for this font
16015         already, simply increment its reference count, provided by Olaf Dietsche
16016         <olaf.dietsche+list.gtk@netcologne.de>.
16017
16018         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16019         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16020
16021 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
16022
16023         * gtk/gtkcontainer.c:
16024         (gtk_container_add_with_args):
16025         (gtk_container_addv):
16026         (gtk_container_add): before adding a child to a conatiner, make sure
16027         it is (default) constructed, this is neccessary because under certain
16028         circumstances the child will get relized and mapped immediatedly, in
16029         which case it has to be constructed already.
16030
16031 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
16032
16033         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
16034         values > 1 as TRUE also.
16035
16036 1999-03-16  Tor Lillqvist  <tml@iki.fi>
16037
16038         * README.win32: New file.
16039                 
16040         * configure.in: Check for lstat.
16041
16042         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
16043         completeness.
16044
16045         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
16046
16047         * gtk/gtk.def: Removed CRs.
16048
16049         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
16050         ..\gdk\win32).
16051
16052         * gdk/win32/makefile.msc: Correct upwards relative paths.
16053         
16054 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
16055
16056         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
16057           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
16058           it was connecting a void function to expose_event and the int
16059           returning function to the draw signal
16060
16061 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
16062
16063         * configure.in:
16064         Use correct path to libgmodule.la when ref'ing uninstalled copy
16065         of glib.  (Already in stable branch, Bug #417)
16066
16067 1999-03-15  Tor Lillqvist  <tml@iki.fi>
16068
16069         Win32 merge and general portability stuff:
16070                 
16071         * acconfig.h,configure.in: Check for <sys/time.h>.
16072
16073         * gdk/win32: New directory (actually, been there for a while).
16074         
16075         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
16076         NATIVE_WIN32, and use these. Always case fold on Win32. No
16077         backslashed escapes on native Win32.
16078
16079         * gtk/{gtk.def,makefile.msc}: New files.
16080
16081         * gtk/Makefile.am: Add above new files.
16082         
16083         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
16084         instead of <strings.h>.
16085
16086         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
16087         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
16088         <unistd.h> appropriately.
16089
16090         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
16091         Use ABS() (from <glib.h>) instead of abs().
16092         
16093         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
16094         of gtk (and thus glib) headers, so that WIN32 will be
16095         defined. With MS C, include <direct.h> for mkdir prototype.
16096
16097         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
16098         some casts, needed by MS C.
16099
16100         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
16101         implemented).
16102
16103         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
16104         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16105         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16106
16107         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16108                 
16109         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16110         the event is not a hint, or its window is not the slider. Needed
16111         on Win32, at least.
16112
16113         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16114         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16115         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16116         a subdirectory of the Windows directory as gtk system
16117         configuration directory.
16118
16119         * gtk/gtkselection.c: No chunks on Win32.
16120
16121         * gtk/gtksocket.c: Not implemented on Win32.
16122
16123         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16124
16125         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16126
16127         * gtk/maketypes.awk: Declare variables with a macro that expands to
16128         necessary export/import magic in the case of Win32.
16129                 
16130         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16131
16132 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16133
16134         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16135         since those were meant only for gdki18n.h.  
16136         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16137         for widechar tests.
16138         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16139
16140 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16141
16142         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16143         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16144
16145         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16146         installed) to CFLAGS.
16147
16148         * gdk/Makefile.am: Add rules for gdkconfig.h.
16149
16150         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16151         APIs.
16152
16153         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16154         gdkx.h anyway when compiling for X11.
16155         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16156         general): Merge in Win32 version.
16157         
16158         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16159         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16160         expansion (if we don't have HAVE_PWD_H), allow for drive
16161         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16162         included code from Craig Setera's port to Win32 (the one that uses
16163         X11, and the cygwin dll), even if it probably will be abandoned.
16164
16165         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16166         the user entered one herself.  This way one can complete *.h and
16167         don't get matches on any .help files, for instance.
16168         
16169 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16170
16171         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16172         font hash table, if we have a GdkFontPrivate entry for this font
16173         already, simply increment its reference count, provided by Olaf Dietsche
16174         <olaf.dietsche+list.gtk@netcologne.de>.
16175
16176         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16177         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16178
16179 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16180
16181         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16182         the number of calls to gdk_draw_point() (and thus to X) by
16183         clipping the points by hand.
16184
16185         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16186         the clip parameter.
16187         (gtk_handle_box_paint): Only paint the handle if the expose area
16188         intersects it.
16189
16190 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16191
16192         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16193
16194 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16195
16196         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16197         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16198
16199 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16200
16201         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16202          textmode (O_TEXT) for OS/2 version.
16203
16204 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16205
16206         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16207         GtkSpinButton, "input" and "output", to make the output more flexible.
16208         The user has to provide a mapping between adjustment->value and the
16209         output string (and vice versa, if the spin button is editable). 
16210         See testgtk for examples.
16211
16212 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16213
16214         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16215         new one.
16216         
16217         * configure.in: set gtk+ version to 1.3.0.