]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
Make sure you can compile out the implementation/wrapper assert macros.
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2
3         * gdk/linux-fb/gdkprivate-fb.h:
4         Make sure you can compile out the implementation/wrapper assert
5         macros.
6
7         * gdk/linux-fb/gdkdrawable-fb2.c:
8         Check implementation/wrappers, initialize type for pixmap dummys.
9
10         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
11         Hide the cursor if reading from the screen.
12
13         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
14         Fix sign bug in tiling code.
15
16         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
17         Handle background pixmaps.
18
19 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
20
21         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
22         function to let user control where columns are dragged.
23
24         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
25         Escape is pressed.
26
27 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@webwynk.net>
28
29         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
30         "columns_changed" signal.
31         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
32         motion code to draw arrows to the side if indicator is outside the
33         widget.
34         (gtk_tree_view_map_expanded_rows): Implement.
35
36 2001-05-07  Alexander Larsson  <alexl@redhat.com>
37
38         * demos/testpixbuf-save.c: 
39         * demos/testpixbuf-drawable.c:
40         Include gdkfb.h on linux-fb.
41
42 2001-05-07  Alexander Larsson  <alexl@redhat.com>
43
44         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
45         New function for getting toplevel window at position.
46         (gdk_drag_find_window): Use get_toplevel_window () instead
47         of gdk_window_get_pointer(). (gdk_drag_status): Use
48         correct context for getting window.
49
50         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
51         g_strdup the atom name.
52
53         * gdk/linux-fb/gdkwindow-fb.c:
54         Costmetic fix.
55
56         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
57         Add code for changing cursor on linux-fb backend (same as
58         win32).
59
60 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
61
62         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
63         present before doing anything with it.  Patch from Håvard Kvålen
64         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
65         report was not for the development branch of GTK+, but it applies
66         anyways).
67
68 2001-05-04  Havoc Pennington  <hp@redhat.com>
69
70         * configure.in: fix some shell typos
71
72         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
73
74         * gtk/gtkimage.c: handle animations
75
76         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
77         border_width * 2, not just border_width
78
79         * gtk/gtkscale.c: add "format_value" signal to allow people
80         to override the way values are drawn.
81         (gtk_scale_get_value_size): fix width/height mistake,
82         and compute size from actual displayed text, not 
83         from made-up text.
84
85         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
86         signal registration
87
88         * tests/testtext.c: Add "Remove all tags" menu item for testing
89
90         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
91
92         * demos/gtk-demo/main.c (main): add hack so we can find modules
93         without installing gtk
94
95         * demos/gtk-demo/textview.c (insert_text): demo font scaling
96
97         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
98         factor)
99         (gtk_cell_renderer_text_set_property): remove some bogus
100         g_object_notify
101
102         * gtk/gtktexttag.c: add "scale" property which is a font scaling
103         factor
104
105         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
106         to layout
107
108         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
109         gtk_text_iter_is_first
110
111 2001-01-06  Hans Breuer  <hans@breuer.org>
112
113         * gdk/gdk.def : updated exports
114
115         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
116         gdk won't compile anymore
117  
118         * gdk/win32/gdkevents-win32.c : initialize ret_val when
119         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
120         Improved gdk_flush () to not only do pending drawing operations
121         but also process all currently pending events. This should make
122         the behaviour more similar to the X11 version.  
123
124         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
125         option needs to be set even if there is no GDK_GC_BACKGROUND.
126         (gdk_win32_hdc_get) : use predraw_set_background () independent
127         of value_mask. This allows to draw dashed lines leaving the original
128         background intact.
129
130         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
131         after processing, because we can't reuse it as the X11 version does.
132
133         * gtk/gtk.def : updated exports
134
135         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
136         would like to get rid of this file again, and use straight
137         makefile.msc again, as the other Gtk+ subdirs do)
138
139         * test/makefile.msc (new file) : build the test apps here
140
141 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
142
143         * Release 1.3.5
144
145         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
146
147         * NEWS: Updated
148
149         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
150         Makefile breakage.
151
152 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
153
154         * demos/gtk-demo/images.c (progressive_timeout): Fix
155         typo in filename.
156
157         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
158         out FIXME warning; just too annoying.
159
160 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
161
162         * gdk/linux-fb/gdkcolor-fb.c:
163         Better error messages.
164
165         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
166         Initialize abs_x and abs_y.
167         
168         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
169         Correct handling of stipple offset.
170
171         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
172         Treat directcolor framebuffers as truecolor.
173         
174 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
175
176         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
177         dependency on Atk for accessibility support.
178
179         * configure.in **/Makefile.am: Major reworking of substituted
180         variables for CFLAGS/LIBS to make a lot more sane and 
181         keep the the compile/link lines a bit shorter.
182
183         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
184
185 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
186
187         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
188         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
189         use _gtk_boolean_handled_accumulator.
190
191 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
192
193         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
194         to fix things so clicking inside selection leaves cursor
195         at point where clicked. (#50324)
196
197         * gtk/gtksettings.c (gtk_settings_class_init): Restore
198         sane value for default double click time.
199
200         * tests/testtext.c (test_init): Really path to input modules.
201
202 2001-05-03  Sven Neumann  <sven@convergence.de>
203
204         * demos/testpixbuf-save.c: include target-specific headers as
205         done in testpixbuf-drawable.c
206
207 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
208
209         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
210         new_text_length appropriately when we run into the 
211         size limit for the entry. (#53445, reported by Jeff Franks)
212
213         * tests/testgtk.c (create_entry): Remove most of the
214         property toggle buttons. Replace with a "Props" button
215         that brings up a property editor.
216
217         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
218         Split the property editor code out for reuse, improve.
219
220 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
221
222         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
223         trap errors around calls to XSetInputFocus since we have
224         no way of knowing reliably whether we are viewable or
225         not. (#53947)
226
227 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
228
229         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
230         fix bug in dropping columns.  Moving columns now basically works
231         modula some fine tuning.
232
233 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
234
235         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
236         autoscroll support.  It mostly works, but could use some fine
237         tuning.
238         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
239         Actually move the column.
240
241 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
242
243         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
244           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
245           New default theme! A slighly improved version of the 2.0 Raleigh
246           theme, with Windows-esque focus/drawing default. 
247           (GtkWidget::interior_focus defaults to TRUE.)
248
249         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
250
251 2001-04-30  Havoc Pennington  <hp@pobox.com>
252
253         * tests/testtext.c (line_numbers_expose): fix to work with
254         gtk_paint_layout change
255
256 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
257
258         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
259           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
260           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
261           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
262
263         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
264           with GtkWidget::interior_focus = TRUE better.
265
266         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
267         ::default_outside_border for more flexibility.
268
269         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
270         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
271         change that had to be made with g_object_get.
272
273 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
274
275         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
276         (gtk_tree_view_move_column_after): Clean up interface. 
277
278 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
279
280         * gtk/gtkpacker.h:
281         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
282          to gtkenum.h.
283
284         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
285         handled in switch).
286
287         * gtk/Makefile.am:
288         (gtk.defs): generate enum portions with  glib-mkenums.
289         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
290         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
291         
292         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
293         addition.
294
295         * docs/Changes-2.0.txt: keep a note on signal handlers now
296         not getting emitted during the emission they were connected within.
297
298 2001-04-28  Havoc Pennington  <hp@pobox.com>
299
300         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
301
302 2001-04-24  Havoc Pennington  <hp@redhat.com>
303
304         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
305         (gtk_text_layout_move_iter_to_next_line): fix these two for
306         invisible text, lots of other stuff still hosed.
307
308         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
309         new function, replaces the get/set palette stuff. This function 
310         is intended for use by libgnomeui which should set the hook to a
311         thing which sets the palette in GConf, and we need the
312         GConf-to-xsettings proxy which will result in the change being
313         propagated back to the GTK app.
314
315         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
316         about unusable signals that it may be because the signal has 
317         parameters.
318
319         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
320         style, otherwise gtkrc.c won't know to create a new GtkStyle for
321         it.
322         (gtk_widget_modify_color_component): call
323         gtk_widget_modify_style() so the rc style will get copied.
324         (gtk_widget_modify_font): ditto
325
326         * gtk/gtkrc.c: make a couple variables static
327
328         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
329         help button by default, since it does nothing
330
331         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
332         around with UI
333
334         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
335         so we can have tooltips
336
337         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
338         can have tooltips
339
340         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
341         GDK_ENABLE_BROKEN, because its memory behavior is completely
342         hosed.
343
344         * gtk/gtknotebook.c: remove key press handler, replace with
345         binding set, add numeric keypad support
346
347         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
348
349         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
350
351         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
352         addition to plain Delete
353
354         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
355         GDK_KP_Enter in addition to GDK_Return
356
357         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
358         activate on entry instead of key press
359         (gtk_font_selection_on_clist_key_press): get
360         rid of this signal handler, not needed with new font sel.
361
362         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
363         no-longer-needed emit_stop_by_name(), just return TRUE
364
365         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
366         cruft, this widget is no longer focusable.
367
368         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
369         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
370         move_slider action signal, add binding set for vscale/hscale, in
371         the process support numeric keypad
372
373         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
374         make GDK_Return and GDK_KP_Enter activate the entry via 
375         binding set, instead of hardcoded.
376
377 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
378
379         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
380         code.  Some documentation added.
381
382 2001-04-27  Havoc Pennington  <hp@redhat.com>
383
384         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
385
386         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
387
388         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
389         line/para separators
390         (gtk_entry_create_layout): set single paragraph mode on the layout
391
392         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
393         spacing between the image and label; instead, inside a button box 
394         the button will get extra space that will go there, but if people 
395         configure button box for 0 chubbiness, then there's no spacing.
396
397         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
398         and min/max size style properties, so people can tune their
399         chubbiness.
400
401         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
402         functions
403
404         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
405         space_style, and button_relief into style properties, remove
406         functions for setting them
407         
408         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
409         it back down
410
411         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
412         types from gtk_widget_style_get
413
414         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
415         with a style property.
416
417         * gdk/x11/gdkevents-x11.c: namespace the settings
418
419         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
420
421         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
422         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
423         be used. Also, translate doc strings for settings. Also, namespace
424         the double-click-time property. Also, remove bell properties crap.
425
426 2001-04-27  Sven Neumann  <sven@gimp.org>
427
428         * Makefile.am: before creating links, check if pkg-config files
429         exist for the default target. Otherwise link to the pkg-config files
430         that got installed with this build.
431
432 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
433
434         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
435         dragging code.  Revealed some (potential) GdkWindow bugs.
436
437         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
438         _gdk_window_init_position to the end of reparent to fix the case
439         of reparenting when new_x != old_x and new_y != old_y.
440
441 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
442
443         * gtk/gtkentry.c (strstr_len): Fix optimization that
444         was correct for the use here, but completely incorrect
445         in general.
446
447 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
448
449         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
450         until patch adding gtk_window_set_size() is recommitted. 
451
452         * **Makefile.am configure.in gdk/x11/gdkim-11.c
453           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
454           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
455           (#10784)
456
457 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
458
459         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
460         window == NULL in a number of cases.
461
462         * tests/testdnd.c: Set module path for gdk-pixbuf.
463
464 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
465
466         * gtk/Makefile.am xembed.h: File containing #defines
467         for XEMBED protocol.
468
469         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
470
471         - Change protocol from old plug/socket specific protocol
472           to XEMBED draft
473         - Various fixes to work with GTK+-2.0
474
475         Still quite a bit of work to do here to handle initiation
476         from the socket side (as specified by XEMBED), to handle
477         the more advanced features of XEMBED, and to figure out
478         a good way to handle same-app embedding with less overhead
479         than using full XEMBED.
480
481 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
482
483         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
484         track of whether the toplevel has the focus; only send
485         focus-in events to the focus widget when the window
486         actually has the focus.
487
488 2001-04-25  Havoc Pennington  <hp@pobox.com>
489
490         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
491         were still in the header
492
493 2001-04-24  Alexander Larsson  <alexl@redhat.com>
494
495         * gtk/gtkclist.[ch]:
496         * gtk/gtkctree.c:
497         When there is a row highlighted for D'n'D it must alse
498         be painted hightlighted on exposes. Otherwise exposes from
499         the icon being dragged will mess up the hightlight.
500
501         * gtk/gtkfontsel.c:
502         Don't recenter selected font when exposing the font family
503         clist. This means you can now actually scroll the font family
504         list.
505
506         * gtk/gtknotebook.c:
507         Fix focus movement on scrolling tabs that are placed on the left
508         and right.
509
510 2001-04-21  Havoc Pennington  <hp@pobox.com>
511
512         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
513         empty/invisible lines.
514
515         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
516         (gtk_text_iter_set_visible_line_index): new functions to set
517         indexes excluding invisible text
518
519         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
520         index
521
522         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
523         (gtk_text_iter_get_visible_line_offset): new functions to 
524         get indexes excluding invisible text
525
526         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
527         bunch of extra padding that served no purpose
528
529         * gtk/gtkdialog.c: Make all the spacings configurable via style
530         properties, for chubbiness configuration in themes
531
532         * tests/testtext.c: fix path to the immodules.
533         
534 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
535
536         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
537         got munched by #endif.
538
539         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
540
541         * gtk/gtktreeview.c: Refactored code to clean up a number of
542         events.
543
544         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
545         values to make consistent with other functions.  Spotted by Jeff
546         Franks <jcf@tpg.com.au>.
547
548         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
549         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
550
551 2001-04-23  Sven Neumann  <sven@gimp.org>
552
553         * gtk/Makefile.am
554         * gtk/gtkplug.c
555         * gtk/gtksocket.c: on request of Owen, reverted my last change 
556         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
557
558 2001-04-23  Sven Neumann  <sven@gimp.org>
559
560         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
561         compile for non-X11 targets again
562
563 2001-04-20  Alexander Larsson  <alexl@redhat.com>
564
565         * gtk/gtkcolorsel.[ch]:
566         API Change. Take GdkColor arguments instead of gdouble *.
567         Leave the old gtk_color_selection_set_color for compatibility,
568         but marked deprecated.
569         Do correct rounding when converting RGB <-> HSV.
570         
571         * gtk/gtkcolorseldialog.c:
572         * tests/testgtk.c:
573         Use new GtkColorSelection API.
574
575         * gtk/gtkhsv.c:
576         Fix problem selecting colors in triangle when Hue is 330.
577         Fix some black dots around the HSB triangle.
578         
579         * gtk/gtkfilesel.c:
580         return FALSE from the focus_in_event handler to fix focus problems.
581
582 2001-04-18  Havoc Pennington  <hp@redhat.com>
583
584         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
585         set, so keybindings are configurable    
586         (gtk_window_activate_default): Change to activate the focus widget
587         instead if there's a focus widget, to be consistent with the
588         behavior that previously existed in key_press_event
589
590 2001-04-18  Havoc Pennington  <hp@redhat.com>
591
592         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
593
594 2001-04-18  Havoc Pennington  <hp@redhat.com>
595
596         Close bug #50615:
597         
598         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
599         the layout
600
601         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
602
603         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
604
605         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
606         
607         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
608         to blue for base, in addition to bg
609         
610 2001-04-18  Havoc Pennington  <hp@redhat.com>
611
612         * tests/testgtk.c (create_image): allow shrinking the image window
613         to test that we clip to allocation.
614
615         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
616         #9845
617
618         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
619
620 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
621
622         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
623         mode on shm segments to 0600. We'll see who complains.
624
625         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
626         _gdk_windowing_window_destroy() AFTER recursing through
627         children.
628
629         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
630         testsocket_child on X.
631
632         * tests/testsocket[_child].c: Fix uses of
633         gtk_window_get_default_accel_group().
634
635         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
636
637         * gdk/gdkimage.c: (gdk_image_get):
638         Deal with the possibility that XGetImage() might return NULL.
639         Allocate the GdkImagePrivate structure only after XGetImage()
640         succeeds in order not to dereference a NULL ximage pointer.  This
641         prevents a core dump when XGetImage() fails - which is unlikely,
642         but can happen due to race conditions accessing the geometries of
643         drawables.  An x error will still be triggered, but the gdk image
644         wrapper at least wont seg fault.
645         
646 2001-04-18  Havoc Pennington  <hp@redhat.com>
647
648         * gtk/gtkimage.c: fix to properly queue resizes when the image is
649         set
650
651         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
652         if the insertion point isn't editable
653
654         * demos/gtk-demo/images.c: Added a GtkImage demo
655
656         * demos/gtk-demo/drawingarea.c: drawing area demo
657         
658         * demos/gtk-demo/menus.c (create_menu): cleanups
659
660 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
661
662         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
663           gdk/x11/gdkevents-x11.c: Introduce an extra child
664         of toplevel windows that serves to hold the focus to
665         avoid events being delivered to embedded windows.
666
667         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
668         some extra variables to clean up code and reduce the
669         number of casts.
670
671         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
672         guint for 1 bit bit fields, not gboolean.
673
674 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
675
676         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
677         not TRUE. (Fixes #52925)
678
679 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
680
681         * Released 1.3.4
682
683         * NEWS: Updated
684
685         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
686         use GTK_TYPE_ENUM.
687
688 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
689
690         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
691
692         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
693         names to compatibility #defines so docs work.
694
695         * gtk/gtkenums.h: Remove GtkMenuFactoryType
696
697         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
698
699         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
700
701         * tests/testgtkrc: No magenta cursors, please.
702
703         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
704
705         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
706         
707 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
708
709         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
710         grabs, since they are no longer necessary.
711
712         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
713         by signal_connect() and call gtk_button_pressed() rather
714         than signal_connect_after().
715
716         * tests/testgtk.c: Restore radio menu items to combos 
717         since they'll look OK with Raleigh, and it is easier
718         than finishing the process of removing them that was
719         started earlier.
720
721 2001-04-16  Hans Breuer  <hans@breuer.org>
722
723         * gdk/gdk.def :
724         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
725
726         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
727         we are interested in the functions return value not the function address
728         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
729
730         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
731
732 2001-04-14  Hans Breuer  <hans@breuer.org>
733
734         * gdk/gdk.def :
735         * gdk/makefile.msc : updated
736
737         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
738         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
739         (the testgtk::text backgound pixmap is drawn again)
740         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
741         Win32 Pango change
742         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
743
744         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
745         Not sure if the returned settings have the right unit, because I couldn't
746         find any docs for the X version ...
747
748         * gtk/gtk.def :
749         * gtk/makefile.msc.in : updated
750
751 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
752
753         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
754         wording problems. (Compared to version from Johannes Stezenbach to
755         check correctness.)
756
757 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
758
759         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
760         this to compile.
761
762 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
763
764         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
765         not pixbufpos.
766
767         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
768
769         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
770         are unsigned insts, therefore use g_value_set_uint.
771         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
772
773 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
774
775         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
776
777         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
778         GTK_TYPE_STRING.
779
780         * gtk/gtktreeview.c: New functions to allow initial column
781         dragging work.
782
783         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
784
785         * tests/testtreefocus.c: give dave some love.
786
787         * tests/testtreesort.c: Modify test to check really long samples.
788
789 2001-04-11  Alexander Larsson  <alexl@redhat.com>
790
791         * gtk-2.0.m4: Pass pkg-config options
792         before the other args so it works even if
793         POSIXLY_CORRECT is set.
794
795 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
796
797         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
798         0, interface 0).
799
800 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
801
802         * gtk/gtkcalendar.c (gtk_calendar_button_press):
803         check for action_func != NULL
804
805 2001-04-04  Sven Neumann  <sven@gimp.org>
806
807         * tests/testgtk.c (test_init): corrected path to gtk.immodules
808
809 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
810
811         * Released Gtk+-1.3.3.
812
813 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
814
815         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
816
817 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
818
819         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
820         files to/from source dir. (if we don't stay in builddir, we
821         can't reach make-inline-pixbuf.
822
823         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
824         deps.
825
826         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
827         ages 0).
828
829 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
830
831         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
832         moved to the GtkTreeSortable interface.
833
834         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
835         Make more efficient (fixes #50262).
836
837 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
838
839         * NEWS: Updated.
840
841         * configure.in: Remove support for uninstalled glib.
842
843         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
844         so as not to stop emission.
845
846         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
847         is no longer supported.
848
849         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
850         into tests, change build order to build modules before
851         gtk/.
852
853         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
854         to here.
855
856 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
857
858         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
859         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
860         GPatternSpec. this is actually unlikely to cause breakage in
861         third-party apps since except for gle, pretty much ever caller
862         passes NULL here.
863
864         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
865
866         * *.c: use g_pattern_*() API.
867
868         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
869
870         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
871         directions aren't passed in.
872
873         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
874         functionality to be usable from gtkstyle.c as well, give precedence
875         for conversion to user-supplied parsers.
876         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
877
878         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
879         _gtk_settings_parse_convert() for rcporperty value conversion.
880
881 2001-04-03  Alexander Larsson  <alexl@redhat.com>
882
883         * gdk/linux-fb/gdkevents-fb.c:
884         Add empty gdk_setting_get().
885
886 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
887
888         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
889         variable names.
890         
891         * gtk/makeenums.pl: touch this so enum files get remade.
892
893 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
894
895         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
896         work again when not sorted.
897
898         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
899         and "expand_row" signal, closing bug 52578.
900
901         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
902         support.
903
904         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
905         support.
906
907 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
908
909         * gdk/gdkevents.h: Add GdkEventSetting event for notification
910         of changes to system settings, gdk_setting_get() to retrieve
911         a single system setting.
912
913         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
914         to the draft XSETTINGS mechanism.
915
916         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
917         XSETTINGS.
918
919         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
920         of GDK settings changes to the GtkSettings object.
921
922         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
923         double-click-timeout property to GDK.
924
925         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
926         Define GDK boxed types here.
927
928         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
929         gdk/gdkenumtypes.[ch] for enum definitions.
930
931         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
932         * gtk/gtk-boxed.defs: Comment out GDK types
933         * gtk/gtktypeutils.h: Remove GDK types
934         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
935
936 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
937
938         * Applied patch from Ron Steinke to add signal accumulators
939         so that signals with the convention 'TRUE return means
940         handled' stop emission on a TRUE return.
941
942         * gtk/gtkmain.[ch]: Add private accumulator 
943         _gtk_boolean_handled_accumulator, used throughout GTK+.
944         
945         * gtk/gtkspinbutton.c: Add accumulator for ::output.
946
947         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
948         
949         * gtk/gtkwidget.c: Add accumulators for event signals,
950         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
951         for ::mnemonic-activate.
952
953         * gtk/gtkwindow.c: Add accumulator for ::frame_event
954
955 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
956
957         * gtk/gtkwidget.c: Add missing include.
958
959 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
960
961         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
962         marshaller.
963
964         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
965         "changed" signal to "range_changed".
966
967         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
968         removing a tree from one model would remove all trees from that
969         model.
970         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
971         changed signal instead.
972
973 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
974
975         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
976         chaining up to parent impl, since we have a INPUT_ONLY
977         window.
978
979         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
980         foreground color for the cursor.
981
982 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
983
984         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
985         param spec when caching property values, since we unref it
986         later when we free the style.
987
988         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
989         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
990
991 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
992
993         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
994         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
995         stupidity.
996
997 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
998
999         [ First pass at adding style properties. Still needs some definite
1000         fine-tuning. ]
1001
1002         * gtk/gtkbutton.c: Add ::default_spacing style property.
1003          
1004         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
1005         ::indicator_spacing style properties.
1006
1007         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
1008         style properties.
1009
1010         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
1011         rather than a normal property.
1012
1013         * gtk/gtkwidget.c: Add an ::interior_focus style property to
1014         draw focus inside buttons, in the Windows/Java Metal/etc. style.
1015
1016         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
1017         Honor ::interior_focus.
1018         
1019         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
1020         TRUE.
1021
1022         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
1023         Add ::slider_width, ::trough_border, ::stepper_size,
1024         ::stepper_spacing style properties.
1025
1026         * gtk/gtkscale.[ch] Add ::slider-length style property.
1027
1028 2001-04-02 Alexander Larsson   <alexl@redhat.com>
1029
1030         * gdk/linux-fb/gdkwindow-fb.c:
1031         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
1032         warnings that were spewed on startup.
1033
1034         * gtk/gtkwindow-decorate.c:
1035         gtk_window_reposition -> _gtk_window_reposition
1036
1037 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
1038
1039         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1040         Add boxed type for GtkRequistion. Use it for ::size-request.
1041
1042         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
1043         Add a new GtkBorder structure useful for geometry properties
1044         for widgets. Add corresponding GTK_TYPE_BORDER.
1045         
1046         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
1047         Support automatic parser selection like
1048         gtk_settings_install_property_parser().
1049
1050         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
1051         functionality for use by gtk_widget_class_install_style_property.
1052         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
1053
1054 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
1055
1056         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
1057         g_param_spec_unichar(). 
1058
1059 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
1060
1061         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
1062         _NET window managers.
1063
1064         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
1065
1066 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1067
1068         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1069         bad needs to be nuked, not just deprecated.
1070
1071         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1072         gtk_widget_popup().
1073
1074         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1075         
1076         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1077         widget.
1078         
1079         * docs/Changes-2.0.txt: updates.
1080         
1081 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1082
1083         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1084         for (i = 0; i < 100; i ++)
1085           g_print ("I will confirm it compile before committing\n");
1086
1087 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreestore.c: Initial work on implementing the
1090         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1091
1092 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1093
1094         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1095         reference counts around emissions where the widget is used afterwards.
1096         added freeze/thaws around multiple properties being notified.
1097         (_gtk_widget_get_aux_info): cleanups.
1098         
1099         * gtk/gtksettings.c (gtk_settings_install_property): provide
1100         default parsing functions for gdkcolor, enums and flags.
1101
1102         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1103         applied by owen.
1104         backed out gtk_window_get_location(), gtk_window_set_location(),
1105         gtk_window_get_size() and gtk_window_set_size(), these
1106         have to be sorted out wrg x/y/width/height/default_with/default_height
1107         properties.
1108         kept a flag in GtkWindowGeometryInfo to handle user
1109         resetting default sizes.
1110         cleaned up ZVT comments.
1111         bunch of assorted bug fixes, notification fixes.
1112         (_gtk_window_reposition): make this a really internal function.
1113         
1114         * gtk/testgtk.c: fixups.
1115         
1116 2001-03-31  Hans Breuer  <hans@breuer.org>
1117
1118         * config.h.win32.in : disable USE_MMX for msvc build cause
1119         the assembler doesn't fit and is out of my scope. Disable
1120         USE_GMODULE for msvc build as wel. The right way to share
1121         binaries on win32 would be to use libtiff.dll etc. To reduce
1122         installation hassles IMO it's better to include all fileformats
1123         builtin to gdk-pixbuf
1124
1125         * gdk-pixbuf/makefile.msc : new file
1126
1127         * gdk/gdk.def : updated
1128
1129         * gdk/win32/gdkevents-win32.c : don't erase the background if
1130         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1131         buttons
1132         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1133
1134         * gdk/win32/gdkwindow-win32.c : added three new functions like
1135         the X version. Only one is implemented, because the other two
1136         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1137         be default behaviour on win32 anyway ...
1138
1139         * gtk/gtk.def : updated
1140
1141         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1142         from where it was built and add an additional rule to automagically
1143         build gtkmarshal.[hc]
1144
1145         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1146         before array access for the current entry isn't finished
1147
1148         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1149         use g_return_val_if_fail
1150
1151         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1152         for the static array, but let the compiler calculate it. It
1153         makes me wonder if gcc isn't capable to catch bugs like this ...
1154
1155 2001-03-31  James Henstridge  <james@daa.com.au>
1156
1157         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1158         constant "-1" in the aux info structure.
1159
1160 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1161
1162         * gtk/gtkbutton.c (gtk_button_get_property):
1163         * gtk/gtklabel.c:
1164         Remove leaks.
1165         
1166         * gtk/gtkcontainer.c:
1167         * gtk/gtkhscale.c:
1168         * gtk/gtkhscrollbar.c:
1169         * gtk/gtklayout.c:
1170         * gtk/gtkmisc.c:
1171         * gtk/gtkprogress.c:
1172         * gtk/gtkprogressbar.c:
1173         * gtk/gtkrange.c:
1174         * gtk/gtktable.c:
1175         * gtk/gtkviewport.c:
1176         * gtk/gtkvscale.c:
1177         * gtk/gtkvscrollbar.c:
1178         * gtk/gtkwidget.c:
1179         Property patches, based on patches from John Margaglione and Lee Mallabone.
1180
1181 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1182
1183         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1184         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1185         inline API function docs.
1186         (gtk_spin_button_new_with_range): New convenience constructor.
1187         (gtk_spin_button_set_increments): New adjustment helper.
1188         (gtk_spin_button_set_range): New adjustment helper.
1189
1190         * gtk/testgtk.c : added test of the new convenince constructor and
1191         value_changed signals.
1192
1193 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1194
1195         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1196         listen to the reorder signal.
1197
1198 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1199
1200         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1201         to get the aux info structure fo the widget.
1202
1203         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1204         above function.
1205
1206         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1207
1208         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1209         to get the size of the window manager frame, basically the same
1210         code that gdk_window_get_root_origin() had
1211         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1212
1213         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1214         gdk_window_resize() if the window is realized and resizeable
1215
1216         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1217         typo so that setting gravity works
1218
1219         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1220         allocation if auto_shrink is on, even if the default size
1221         has not changed.
1222
1223         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1224         g_return_if_fail
1225
1226 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1227
1228         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1229         reordering/sorting work.  Now pretty much works.
1230
1231         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1232         reorder mostly work.  Still need to get the parity correct.
1233
1234         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1235         signal, so I can listen for the sort_column_changed signal so I
1236         can change my "sort_indicator" property.  Cool.
1237
1238 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1239
1240         [ Patch from Havoc Pennington, hp@redhat.com ]
1241
1242         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1243         Add functions gdk_window_begin_resize_drag/begin_move_drag
1244         to start resizing or moving a toplevel window. This
1245         is done either using the _NET_WM_MOVERESIZE protocol,
1246         or, if that isn't present, by emulation.
1247
1248         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1249         to export the above to GTK+-land.
1250
1251         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1252         
1253         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1254         Move this function into gdkwindow, since we need it
1255         when implementing fallback resizing.
1256
1257         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1258         Fix typo when setting gravity.
1259
1260         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1261         Add an optional (but on by default) resize grip for resizing 
1262         the parent window.
1263
1264 01-03-29  Alexander Larsson  <alexl@redhat.com>
1265
1266         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1267         Don't return TRUE from the event handler, that blocks all
1268         event signals on the tooltip widget. Now you can press buttons
1269         in toolbars again.
1270
1271 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1272
1273         * gtk/testtext.c (create_buffer): Add missing NULL on
1274         valist.
1275
1276         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1277         c-n-p problem with INCONSISTENT property.
1278
1279         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1280
1281         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1282         hook.
1283
1284         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1285         signal as a hook for extending the default popup menu
1286
1287         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1288         use radio menu items for the input method menuitems
1289
1290         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1291         inserted unicode from Ctrl-Shift-hex input method
1292
1293         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1294         validatation here, already done at GtkTextBuffer level.
1295
1296         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1297         popup_menu run action signal and Shift+F10 and Menu keybindings.
1298
1299         * gtk/gtkentry.c: implement a default handler for popup_menu
1300
1301         * gtk/gtktextview.c: implement a default handler for popup_menu
1302
1303         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1304         from a key event
1305         
1306         * gtk/gtklabel.c: remove "trailer" cruft
1307
1308 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1309
1310         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1311         handle reordering of trees.  Seems to mostly work w/ the exception
1312         of the parity flag.
1313
1314         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1315         signal.
1316
1317 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1318
1319         * gtk/gtkwidget.h: c++ fixes.
1320
1321 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1322
1323         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1324         memory.
1325
1326 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1327
1328         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1329         Nils Barth fixing event return values. (#51041)
1330
1331         * gtk/gtkwidget.c: Fix some return values for default
1332         functions.
1333
1334         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1335         return values for trough_keys functions.
1336
1337         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1338         value for add_accelerator (shoudl have been a void
1339         return.)
1340
1341         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1342         Fix return type of EVENT.
1343
1344         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1345         signal return a boolean.
1346
1347 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1348
1349         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1350         reordered signal.
1351
1352         * tests/testtreesort.c (main): fix spelling.
1353
1354 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1355
1356         * gtk/gtkliststore.c: More work on implementing sortable
1357         interface.
1358
1359 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1360
1361         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1362         reference the widgets in the resulting list. (#11821)
1363         This makes this consistent with gtk_container_children.
1364
1365         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1366         uses of gtk_window_list_toplevels.
1367
1368 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1369
1370         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1371         a virtual function to set whether the IM context should use 
1372         the preedit string. (#51922)
1373         
1374 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1375
1376         * gdk/gdkpango.h: Remove stale FIXME comment.
1377
1378 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1379
1380         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1381         Fixed bug that returned NULL if a filename was selected.
1382
1383 2001-03-24  Havoc Pennington  <hp@pobox.com>
1384
1385         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1386         to contain the word "theme"
1387
1388 2001-03-24  Havoc Pennington  <hp@pobox.com>
1389
1390         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1391         slower but finer-grained
1392         (gtk_hsv_focus): get initial focus on the ring or triangle 
1393         according to tab direction
1394
1395         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1396
1397 2001-03-23  Havoc Pennington  <hp@pobox.com>
1398
1399         * gtk/gtkhsv.c: make this somewhat key-navigable
1400
1401         * gtk/gtkfontsel.c: mnemonics
1402
1403         * gtk/gtkgamma.c: mnemonics
1404
1405         * gtk/gtkcolorsel.c: add mnemonics to labels
1406
1407 2001-03-22  Havoc Pennington  <hp@pobox.com>
1408
1409         Applied big patch from Seth Lytle to fix event handler return
1410         values, slightly modified.
1411
1412         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1413         handled.
1414         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1415         select_day
1416
1417         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1418         (gtk_clist_button_release): return TRUE if handled
1419
1420         * gtk/gtkcolorsel.c (mouse_release):
1421         (palette_activate): 
1422         (palette_press): 
1423         (palette_new): 
1424         (mouse_press): 
1425         (get_screen_color): 
1426         fixed return type (void to gboolean), return TRUE,
1427         added GTK_SIGNAL_FUNC cast
1428
1429         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1430         (void to gboolean), and return TRUE
1431         (gtk_combo_button_release): changed return value to TRUE after
1432         gtk_grab_add on combo->popwin
1433
1434         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1435         collapse or expand
1436
1437         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1438         button/motion
1439
1440         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1441         press/release and motion that trigger act
1442
1443         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1444
1445         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1446         for GDK_Return
1447         
1448         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1449         (gtk_list_button_release): return TRUE if selection
1450
1451         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1452         press
1453
1454         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1455         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1456
1457         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1458         nothing triggered
1459         (gtk_notebook_button_release): return TRUE if we do anything
1460
1461         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1462         (gtk_spin_button_button_release): return TRUE or chained retval
1463
1464         * gtk/gtktext.c (gtk_text_button_press): 
1465         (gtk_text_button_release): return TRUE
1466         (gtk_text_key_press): remove redundant retval code
1467         
1468         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1469         and sensitive
1470         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1471         TRUE if sensitive
1472
1473         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1474         return TRUE
1475
1476 2001-03-23  Havoc Pennington  <hp@redhat.com>
1477
1478         * gtk/testgtk.c: fix warnings
1479
1480         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1481
1482         * gtk/gtktextview.c: fix warnings
1483
1484         * gtk/gtktext.c (find_cursor_at_line): fix warning
1485
1486         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1487
1488         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1489         of this function
1490
1491         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1492         fix warning
1493
1494         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1495
1496         * gtk/gtkfontsel.c: fix warning
1497
1498         * gtk/gtkcolorsel.c: fix warnings
1499
1500 2001-03-23  Havoc Pennington  <hp@redhat.com>
1501
1502         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1503
1504         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1505
1506         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1507         and deprecated gtk_check_menu_item_set_show_toggle().
1508         
1509         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1510
1511         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1512
1513         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1514
1515 2001-03-23  Havoc Pennington  <hp@redhat.com>
1516
1517         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1518         some docs
1519
1520 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1521
1522         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1523         this.
1524
1525         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1526         set_cell to set_value
1527
1528         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1529         set_cell to set_value
1530
1531 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1532
1533         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1534         fix braino.
1535         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1536         support.
1537
1538         * gtk/gtktreeview.c: Addition of initial sortable support.
1539
1540         * gtk/gtktreestore.c: Addition of initial sortable support.
1541
1542         * gtk/gtkliststore.c: Addition of initial sortable support.
1543
1544         * gtk/gtkmarshal.list: yet another marshaller.
1545
1546         * gtk/gtktreedatallist.[ch]: shared code between the store models
1547         for handling sorting headers.
1548
1549 2001-03-22  Havoc Pennington  <hp@redhat.com>
1550
1551         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1552         (gtk_container_unset_focus_chain): Add ability to override the 
1553         focus chain for a container explicitly
1554
1555 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1556
1557         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1558         added PROP_MNEMONIC_WIDGET.
1559
1560         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1561         (gtk_window_remove_mnemonic): 
1562         (gtk_window_add_mnemonic): fixed assertions.
1563         (gtk_window_activate_mnemonic): constrain modifier checks to those
1564         permitted by gtk_accelerator_get_default_mod_mask().
1565         got rid of gtk_window_get_default_accel_group().
1566
1567         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1568         activatable widgets either by focussing or a warning.
1569         added a signal accumulator to ::activate_mnemonic which stops the
1570         emission once a handler returned TRUE.
1571
1572 2001-03-22  Havoc Pennington  <hp@pobox.com>
1573
1574         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1575         the stock item label
1576
1577         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1578
1579         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1580
1581         * demos/gtk-demo/*.c: Add mnemonics all over the place
1582
1583         * gtk/gtklabel.h: mark parse_uline deprecated
1584
1585 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1586
1587         * gtk/gtkitemfactory.[ch]:
1588         Add support for stock and normal imagemenuitems.
1589         
1590         * gtk/testgtk.c:
1591         Add some tests for mnemonics, stock toolbars, stock
1592         and image menuitems in itemfactory and gdk_window_scroll.
1593
1594 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1595
1596         * gtk/gtkbutton.[ch]:
1597         * gtk/gtkdialog.c:
1598         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1599         removed accel_group argument. Renamed gtk_button_new_accel() to
1600         gtk_button_new_with_mnemonic() and removed accel_group argument.
1601
1602         * gtk/gtkcheckbutton.[ch]:
1603         New function gtk_check_button_new_with_mnemonic().
1604
1605         * gtk/gtkentry.c:
1606         Override activate_mnemonic and just grab focus.
1607
1608         * gtk/gtkitemfactory.c:
1609         Don't add menu uline accel group, instead use mnemonics support.
1610
1611         * gtk/gtklabel.[ch]:
1612         New support for mnemonics.
1613
1614         * gtk/gtkmarshal.list:
1615         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1616
1617         * gtk/gtkmenu.[c]:
1618         * gtkmenushell.c:
1619         Use mnemonics instead of accel groups for uline
1620         support in menu items.
1621         Removed gtk_menu_get_uline_accel_group() and
1622         gtk_menu_ensure_uline_accel_group().
1623
1624         * gtk/gtkmenuitem.c:
1625         Override activate_mnemonic to handle switching between
1626         menu items if there are collisions.
1627         
1628         * gtk/gtknotebook.c:
1629         Connect to activate_mnemonic on the tab_label, so that
1630         activating it switches to that notebook page.
1631
1632         * gtk/gtkwidget.[ch]:
1633         Add activate_mnemonic signal. New function
1634         gtk_widget_activate_mnemonic() to emit it.
1635         Default implementation does activate/grab_focus.
1636
1637         * gtk/gtkwindow.[ch]:
1638         Add support for mnemonics in windows.
1639         New functions:
1640         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1641         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1642
1643         * gtk/testgtk.c:
1644         Update to function name changes.
1645         
1646 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1647
1648         * gtk/gtkimagemenuitem.[c]:
1649         Add gtk_image_menu_item_new_from_stock()
1650
1651 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1652
1653         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1654         Fix buglet in meeting.
1655
1656 2001-03-19  Havoc Pennington  <hp@redhat.com>
1657
1658         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1659         add a bunch of accessor functions. This is because we have
1660         reasonable expectations of extending what fields it contains in
1661         the future.
1662
1663         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1664         changes
1665
1666         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1667         GtkIconSource   
1668
1669 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1670
1671         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1672         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1673
1674         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1675           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1676           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1677           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1678         Change float to double everywhere with the exception of 0<->1.0 alignment
1679         and GtkCurve.
1680
1681 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1682
1683         * gdk/win32/gdkdrawable-win32.c
1684         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1685         output.
1686
1687         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1688         gdkwin32.h.
1689
1690 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1691
1692         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1693         print_event_state, print_event): Use preprocessor macro to make
1694         code more compact. Print also GDK_WINDOW_STATE events.
1695         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1696         
1697         * gtk/gtk.def
1698         * gtk/makefile.mingw.in: Update.
1699
1700         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1701         to catch also Cygwin.
1702
1703 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1704
1705         * gtk/gtkspinbutton.[hc]: added rc-style argument
1706         GtkSpinButton::shadow_type.
1707         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1708         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1709         rc-style settings.
1710
1711         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1712
1713         * gtk/gtkwidget.c: quark cleanups.
1714
1715         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1716         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1717         to create_rc_style() (we don't do cloning in standard OO sense).
1718         added per rc style properties.
1719         
1720         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1721         property values and for caching those. some cleanups.
1722         
1723         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1724         
1725         * gtk/gtksettings.[hc]: new file for global rc-file properties
1726         (at least currently, should get extended to support X properties
1727         and other communication mechanisms).
1728         
1729         * gtk/gtkwidget.[hc]: added style property support:
1730         (gtk_widget_class_install_style_property_parser): install style
1731         property pspec with parser function for rc-file values other
1732         than LONG, DOUBLE or STRING.
1733         (gtk_widget_class_install_style_property): same as above without
1734         parser (parsers are going to be needed quite infrequently).
1735         (gtk_widget_style_get_property): retrive style property value.
1736         (gtk_widget_style_get_valist): same as above with varargs support,
1737         has NOCOPY semantics.
1738         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1739
1740 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1741
1742         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1743         "row_activated" signal.
1744
1745         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1746         stupidity.  Lets actually pass in the row with this signal...
1747
1748 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1749
1750         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1751
1752         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1753
1754         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1755         everything into the ::destroy function, and freed a lot more.
1756
1757 2001-03-16  Havoc Pennington  <hp@redhat.com>
1758
1759         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1760         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1761         are now allowed.
1762
1763 2001-03-16  Havoc Pennington  <hp@redhat.com>
1764
1765         * Applied patch from Nils Barth (bug # 51041) to 
1766         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1767         in various places.
1768
1769 2001-03-15  Havoc Pennington  <hp@redhat.com>
1770         
1771         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1772         for properties to set on the tag.
1773
1774         * gtk/testtext.c: fixups to reflect create_tag change
1775         
1776         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1777         background/foreground stipple are objects, not boxed.
1778
1779         * demos/gtk-demo/textview.c: intellihancing
1780
1781 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1782
1783         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1784         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1785
1786 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1787
1788         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1789         Fix sign error with queued region translations.
1790
1791 2001-03-15  HideToshi Tajima  <tajima@happy>
1792
1793         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1794         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1795         * gtk/gtkentry.c (update_im_cursor_location): 
1796         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1797         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1798         set_cursor_pos to set_cursor_location in GtkInputContext class
1799
1800 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1801
1802         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1803         the location of the cell relative to its area.
1804         * gtk/gtkcell*: modified for above change
1805         * gtk/gtktreeview.c: modified for above change.
1806
1807 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1808
1809         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1810          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1811         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1812
1813 2001-03-14  Havoc Pennington  <hp@redhat.com>
1814
1815         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1816         
1817         * gtk/gtk.h: remove gtkdata.h
1818
1819         * gtk/Makefile.am: remove gtkdata
1820         
1821         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1822         not "disconnect" on the adjustments.
1823         
1824         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1825         GtkData
1826
1827         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1828         not GtkData
1829
1830         * configure.in: handle case where X render exists, but Pango lacks
1831         Xft support.
1832
1833 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1834
1835         * gtk/gtktoolbar.[ch]:
1836         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1837         to add stock items to toolbars.
1838
1839         * gtk/Makefile.am:
1840         Remove ../gdk/gdkim.h from gdk_headers.
1841
1842 2001-03-15  Sven Neumann  <sven@gimp.org>
1843
1844         * gdk/gdkim.h: removed
1845         
1846         * gdk/gdkprivate.h
1847         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1848
1849 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1850
1851         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1852         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1853         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1854         set_cursor_pos() virtual method
1855
1856         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1857         (gtk_im_context_xim_set_cursor_pos): add implementation for
1858         set_cursor_pos() method
1859
1860         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1861         position to input methods
1862
1863 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1864
1865         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1866         code a lot.
1867
1868         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1869         g_mem_chunk.
1870         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1871         (_gtk_tree_data_list_node_to_value): Fix to switch on
1872         G_TYPE_FUNDAMENTAL.
1873         (_gtk_tree_data_list_value_to_node): Fix to switch on
1874         G_TYPE_FUNDAMENTAL.
1875         (_gtk_tree_data_list_node_copy): Fix to switch on
1876         G_TYPE_FUNDAMENTAL.
1877
1878 2001-03-12  Havoc Pennington  <hp@redhat.com>
1879
1880         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1881         to convert to new property API. Also, change default_width and
1882         default_height get_property to return 0 as the flag value for
1883         "unset"; -1 is not a valid value for these fields.
1884
1885 2001-03-12  Havoc Pennington  <hp@redhat.com>
1886
1887         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1888         enum with registration for icon sizes, instead of strings.
1889
1890         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1891         gtkwidget.c: Fix to reflect GtkIconSize
1892         
1893 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1894
1895         Make GtkFB compile and link.
1896         
1897         * gdk/linux-fb/gdkdrawable-fb2.c:
1898         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1899         
1900         * gdk/linux-fb/gdkwindow-fb.c:
1901         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1902         Added gdk_window_shape_combine_region.
1903         Added assorted placeholders for unimplemented new GdkWindow API calls.
1904
1905 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1906
1907         * gtk/gtkfilesel.c:
1908         Add more test when converting filenames from/to utf-8.
1909         Don't allow entering text in the filename entry which isn't allowed in
1910         a filename. Just beep instead.
1911
1912 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1913
1914         * gtk/gtkclist.c:
1915         Scroll using gdk_window_scroll(). Don't wait for exposes.
1916         Move the column headers in an order that makes them flash less.
1917
1918 2001-03-10  Hans Breuer  <hans@breuer.org>
1919
1920         * gdk/gdk.def : updated
1921
1922         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1923         to offseting the clip_mask at the right place
1924
1925         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1926         for all the gdkClasses, especially not for the input_only case.
1927         Otherwise flickering wont be avoidable, because we don't get
1928         WM_ERASEBKGND message for these windows.
1929
1930         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1931         and fixed massive redraw problems apparently triggered by Alexanders 
1932         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1933         but it seems to work quite well :-)
1934
1935         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1936         prototype
1937
1938 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1939
1940         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1941         (gtk_list_store_set_cell): Fix a stupid typo.
1942
1943 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1944
1945         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1946         select_all not work if you're in SINGLE mode (it doesn't make that
1947         much sense, anyway.)
1948
1949         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1950         handle types more sanely.
1951         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1952         (_gtk_tree_data_list_node_copy): handle types more sanely.
1953
1954         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1955         GValue better. Converts the type as well.
1956
1957         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1958         GValue better. Converts the type as well.
1959
1960 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1961
1962         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1963         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1964         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1965         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1966
1967         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1968         gdk_im/gdk_ic.
1969
1970 2001-03-09  Hans Breuer  <hans@breuer.org>
1971
1972         * gdk/gdk.def : updated
1973
1974         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1975         for their palette
1976
1977         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1978         removing
1979
1980         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1981         removing and implemented Havoc's GdkWindow state functions; 
1982         stick/unstick only as no-op, cause I don't know how to emulate 
1983         on win32 ...
1984
1985         * gtk/gtk.def : updated
1986
1987         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1988
1989         * gtk/gtktypeutils.c : #include <string.h>
1990
1991         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1992
1993 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1994
1995         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1996         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1997         not a boxed.
1998
1999 2001-03-09  Alexander Larsson  <alexl@redhat.com>
2000
2001         * docs/Changes-2.0.txt:
2002         Document expose event->region change and that gtk_widget_event
2003         doesn't allow passing expose events.
2004
2005         * gdk/gdkevents.h:
2006         Add region to expose event.
2007         
2008         * gdk/gdkevents.c:
2009         Handle event->region in gdk_event_copy() and gdk_event_free().
2010
2011         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
2012         Generate expose_event->region when creating expose events.
2013
2014         * gdk/x11/gdkevents-x11.c:
2015         Generate expose events with regions when translating X events.
2016
2017         * gtk/gtkcontainer.[ch]:
2018         Default expose handler that propagates expose events to NO_WINDOW
2019         children. New function gtk_container_propagate_expose()
2020
2021         * gtk/gtkwidget.[ch]:
2022         Moved gtk_widget_event implementation to gtk_widget_event_internal.
2023         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
2024         expose events. New function gtk_widget_send_expose() to send expose
2025         events. New function gtk_widget_region_intersect() to calculate
2026         window/region intersections.
2027         
2028         * gtk/gtkmain.c (gtk_main_do_event):
2029         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
2030         Use gtk_widget_send_expose() to send expose events.
2031         
2032         * gtk/gtkbin.c:
2033         * gtk/gtkbox.c:
2034         * gtk/gtkfixed.c:
2035         * gtk/gtkimagemenuitem.c:
2036         * gtk/gtklist.c:
2037         * gtk/gtkpacker.c:
2038         * gtk/gtktable.c:
2039         * gtk/gtktree.c:
2040         Remove expose handler, using the default container implementation
2041         instead.
2042         
2043         * gtk/gtkbutton.c:
2044         * gtk/gtkcheckbutton.c:
2045         * gtk/gtkeventbox.c:
2046         * gtk/gtkfixed.c:
2047         * gtk/gtkhandlebox.c:
2048         * gtk/gtklayout.c:
2049         * gtk/gtklistitem.c:
2050         * gtk/gtkmenu.c:
2051         * gtk/gtkmenubar.c:
2052         * gtk/gtkmenuitem.c:
2053         * gtk/gtknotebook.c:
2054         * gtk/gtkoptionmenu.c:
2055         * gtk/gtkpaned.c:
2056         * gtk/gtkscrolledwindow.c:
2057         * gtk/gtktogglebutton.c:
2058         * gtk/gtktoolbar.c:
2059         * gtk/gtktreeitem.c:
2060         * gtk/gtkviewport.c:
2061         Chain expose handler to parent class handler. Use
2062         gtk_container_propagate_expose() to propagate exposes.
2063
2064         * gtk/gtkclist.c (check_exposures):
2065         * gtk/gtktext.c (process_exposes):
2066         Use gtk_widget_send_expose instead of gtk_widget_event.
2067
2068 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2069
2070         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2071
2072 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2073
2074         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2075         unref the nodes.   Fixes bug #50058.
2076
2077         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2078         "::ref_iter" to "::ref_node".
2079         (gtk_tree_model_unref_node): change "::unref_iter" to
2080         "::unref_node". Fixes bug #50064.
2081
2082 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2083
2084         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2085         support for invisible cells.
2086          (gtk_tree_view_bin_expose): ditto
2087
2088 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2089
2090         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2091         on gobjects.
2092
2093         * tests/testtreefocus.c (main): New test file.
2094
2095         * tests/testtreeview.c: update to latest glib changes.
2096
2097         * tests/testtreecolumns.c: update to latest glib changes.
2098
2099 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2100
2101         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2102
2103 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2104
2105         * *.c: added accumulator data argument to g_signal_newc()
2106         functions.
2107
2108         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2109         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2110         * gtk/treestoretest.c (make_window):
2111         s/g_signal_connect/g_signal_connectc/.
2112
2113         * gtk/gtktextbuffer.c: completed signal arg fixups,
2114         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2115
2116 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2117
2118         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2119         G_CONST_RETURN.
2120
2121         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2122         ::hierarchy-changed signal when a widget changes
2123         from anchored to unanchored or vice versa.
2124         (anchored means 
2125          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2126         Use a private flag to keep track of this efficiently.
2127
2128 2001-03-07  Havoc Pennington  <hp@redhat.com>
2129
2130         * gtk/testgtk.c (create_spins): uglify so that size request gets
2131         tested.
2132
2133         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2134         request on values for upper/lower, completes #6152
2135
2136 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2137
2138         * Makefile.am: Remove gtk-config-2.0 again.
2139         (Grrrr, pkg-config. And stops make loops.)
2140
2141 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2142
2143         * gtk/gtksignal.[hc]: removed old emission hook API.
2144         
2145         * docs/Changes-2.0.txt: fixed sections.
2146         
2147         * gtk/gtktextbuffer.c: signal arg fixups.
2148
2149 2001-03-07  Havoc Pennington  <hp@redhat.com>
2150
2151         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2152
2153         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2154         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2155         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2156         validation and the redraw which is higher priority than the
2157         validation.
2158
2159 2001-03-07  Havoc Pennington  <hp@redhat.com>
2160
2161         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2162         (gtk_entry_set_property): remove trailer
2163
2164         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2165         (gtk_entry_get_width_chars): new functions, to set size request to 
2166         a given number of characters
2167
2168         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2169
2170         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2171         (gtk_dialog_get_has_separator): new function
2172         (run_delete_handler): fix to not emit "response" signal
2173         because we already did in the delete event handler installed
2174         at dialog creation time.
2175         
2176         * gtk/gtkdialog.h: add a has_separator property,
2177         add GTK_DIALOG_NO_SEPARATOR flag
2178
2179 2001-03-07  Havoc Pennington  <hp@redhat.com>
2180
2181         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2182         off decorations for a window.
2183
2184         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2185         changes
2186
2187         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2188         to get location of PangoLayout inside the label, closes #51198
2189
2190         * gtk/testgtk.c (create_bbox): fix up button box usage
2191
2192         * gtk/testcalendar.c (create_calendar): fix up button box usage
2193
2194         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2195
2196         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2197
2198         * gtk/gtkhbbox.h: deprecations
2199
2200         * gtk/gtkvbbox.h: deprecations
2201
2202         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2203         emulate deprecated gtk_button_box_get_spacing
2204
2205         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2206         the "set global default" functions
2207         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2208         GtkBox base class
2209
2210         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2211
2212         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2213         render the icon, return the missing image icon.
2214
2215         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2216         image icon if the load fails.   
2217
2218         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2219         when no image is found; should be the Netscape "missing image"
2220         icon eventually but for now is a random image
2221
2222         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2223         role for the session manager
2224
2225         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2226
2227         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2228         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2229
2230         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2231
2232 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2233
2234         * gtk/*.c: marshaller fixes.
2235         
2236         * gtk/gtkmarshal.list: extreme cleanup.
2237
2238         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2239         param spec for now.
2240
2241         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2242         where appliable.
2243
2244         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2245         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2246         which are not reference counted:
2247         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2248         PangoFontDescription, GtkTreeIter and GtkTreePath.
2249
2250 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2251
2252         * gtk/gtktreeselection.h: 
2253         * gtk/gtktreemodel.c:
2254         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2255         file should be included directly, and gobject/gmarshal.h
2256         as well as gtk/gtkmarshal.h even can't be included directly.
2257
2258         * Makefile.am: grr, install gtk-config-2.0.
2259
2260         * gtk/testgtk.c:
2261         * gtk/simple.c:
2262         * gtk/gtkmenu.c:
2263         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2264         passing "*signal*::*" args to gtk_widget_set().
2265         
2266         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2267         
2268         * gtk/*.c: removed trailer arg from property setters and getters.
2269         macro fixups.
2270
2271 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2272
2273         * gtk/gtklabel.c (set_markup): Removed warning
2274
2275 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2276
2277         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2278         field to allow you to hide cell renderers.
2279
2280         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2281
2282         * gtk/gtktreeview.c: Add support for invisible cells.
2283
2284 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2285
2286         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2287         Add "clicked" signal back to columns.
2288
2289         * ChangeLog: remove conflict markers.
2290
2291 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2292
2293         * gtk/gtkbutton.c: Add animation of activation by, on 
2294         activate, pressing the button, and adding a timeout that 
2295         releases the button after 250ms or on key release and
2296         emits ::clicked. (#51501)
2297
2298         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2299         action area, we connect to ::clicked instead of ::activate
2300         so the dialog stays up through the animation.
2301
2302 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2303
2304         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2305         check the ignore_enter flag for the menu shell that
2306         the item is actually a child of, not for attached
2307         submenus. (#51536)
2308
2309 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2310
2311         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2312         special key-press grab handling for widgets within
2313         GtkWindows. Otherwise, fall through to normal case.
2314
2315         This prevents key events being sent twice to GtkInvisible
2316         widgets, which can cause all sorts of mischief.
2317
2318 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2319
2320         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2321         widget is in effect, give the grab widget a first
2322         crack at KEY_PRESS/RELEASE events. (#424)
2323
2324 2001-03-06  James Henstridge  <james@daa.com.au>
2325
2326         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2327         offset for the window_state_event to point at window_state_event
2328         rather than no_expose_event.
2329
2330 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2331
2332         * gtk/gtkimmodule.h: fix busted /* comment */
2333
2334 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2335
2336         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2337         object properties.
2338
2339 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2340
2341         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2342         add object properties.
2343
2344         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2345         to add object properties.
2346
2347         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2348         object properties.
2349
2350         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2351         add object properties.
2352
2353         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2354         object properties.
2355
2356 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2357
2358         * gtk/gtktreemodel.c: renamed "child_toggled" to
2359         "has_child_toggled".
2360
2361         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2362         handle new signal name.
2363
2364         * gtk/gtktreestore.c: Updated to handle new signal name.
2365         * gtk/gtklisttore.c: Updated to handle new signal name.
2366         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2367
2368 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2369
2370         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2371         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2372
2373 2001-03-05  Michael Natterer  <mitch@gimp.org>
2374
2375         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2376         pixbuf-engine coincidentially also failed to make one of it's
2377         parent_class pointers static, causing overwriting of GtkLabel's
2378         parent_class pointer in pixbuf_style_class_init().
2379         (Will commit the fix to the pixbuf-engine too).
2380
2381 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2382
2383         * gdk/gdkwindow.h:
2384         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2385         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2386         gdk_window_set_icon_list for net wmspec functionality.
2387
2388         * gdk/x11/gdkwindow-x11.c:
2389         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2390         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2391         gdk_window_set_icon_list.
2392         Added gdk_wmspec_change_state helper function and used it in the code.
2393         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2394
2395         * gtk/gtkdialog.c (gtk_dialog_init):
2396         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2397
2398         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2399         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2400
2401         * gtk/gtkwindow.c:
2402         new function gtk_window_set_type_hint.
2403         On realize, set type hint and modal hint.
2404
2405         * gtk/gtkwindow.h:
2406         Added type_hint field and gtk_window_set_type_hint.
2407
2408 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2409
2410         * gtk/gtklabel.[ch]:
2411         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2412         New function gtk_label_get_accel_keyval () to get the underline accelerator
2413         of the label. Setting the label pattern overrides other attributes.
2414
2415 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2416
2417         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2418         Added missing initializers to gtk_rc_style_init().
2419
2420 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2421
2422         * gtk/gtktextview.c: fixed bug #51097 about setting 
2423         gtk_text_view_set_border_window_size() if the widget is 
2424         already realized.
2425
2426 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2427
2428         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2429
2430         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2431         comment. Won't do to have duplicated doc comments between
2432         the platform subdirs.
2433
2434 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2435
2436         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2437           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2438
2439         Detectable auto-repeat - make a repeating key generate
2440         press/press/press/release instead of press/release pairs.
2441
2442         If we have Xkb and XkbSetDectableAutoRepeat supports
2443         that, we do it that way. Otherwise, when we get
2444         a release event, we check ahead with XPending to see
2445         if the next key is a KeyPress with the same keycode
2446         and timestamp. (Not 100% reliable, but pretty close.)
2447           
2448 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2449         
2450         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2451         special key-press grab handling for widgets within
2452         GtkWindows. Otherwise, fall through to normal case.
2453  
2454         This prevents key events being sent twice to GtkInvisible
2455         widgets, which can cause all sorts of mischief.
2456  
2457 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2458  
2459         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2460         widget is in effect, give the grab widget a first
2461         crack at KEY_PRESS/RELEASE events. (#424)
2462  
2463 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2464
2465         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2466         to extend the selection. (Roughly based on patch
2467         from Jay Cox, #50939)
2468
2469         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2470         to properly handle previous GDK_BUTTON_PRESS. 
2471         (Patch from Jay Cox, #50938)
2472
2473         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2474         '\0' back along with the deleted text. (#51148)
2475
2476 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2477
2478         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2479         the group when extracting it from the X keyboard event.
2480
2481         * modules/input/Makefile.am modules/input/imipa.c: 
2482         Simple module for entering IPA. (Do we need a 
2483         gtk-stupid-input-tricks CVS module?)
2484
2485 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2486
2487         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2488         const.
2489
2490         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2491
2492         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2493         is no focus widget for the dialog currently, grab the focus as well
2494         as the default.
2495
2496         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2497         the action area's children to iterate through, not the
2498         dialog's children.
2499
2500 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2501
2502         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2503         Add plug-socket tests. (Won't work worth a darn until I commit
2504         the rest of the plug-socket changes, but no reason these
2505         can't go into CVS now.)
2506
2507 2001-03-02  Havoc Pennington  <hp@redhat.com>
2508
2509         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2510         _gdk_region_get_xrectangles()
2511
2512         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2513
2514         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2515
2516         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2517         function, contributed by Ron Steinke    
2518
2519         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2520         gdk_net_wm_supports
2521
2522         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2523         New function, contributed by Ron Steinke
2524
2525         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2526         used to line up the text in the entry when using the entry for
2527         editable sheet cell hacks
2528
2529         * gtk/testgtk.c (create_entry): test the activate_default setting
2530         on GtkEntry
2531
2532         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2533         cause the entry to activate the default button for a dialog when 
2534         activated
2535         (gtk_entry_get_activates_default): new function
2536
2537 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2540         Hwang to move call to sync_selection() up a few lines
2541         to before the row list is modified, to fix crash when
2542         removing rows in the undo_selection list.
2543
2544         (Test case provided by Daniel Elstner:
2545
2546         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2547
2548 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2549
2550         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2551         of tree->root_tree in parent_set rather than _map(), 
2552         fixing #50892 in a bit better manner.
2553
2554 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2555
2556         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2557
2558 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2559
2560         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2561         gtk_default_draw_shadow.
2562
2563 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2564
2565         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2566         warning, make warnings more verbose, treat a error
2567         in shmat as permanent, and don't try again.
2568         (#51163, Ed Randall.)
2569
2570 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2571
2572         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2573         delay for the first click before starting to scroll.
2574         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2575
2576         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2577         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2578
2579 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2580
2581         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2582         cleanup to remove some references to unused
2583         ->xoffset, ->yoffset.
2584
2585 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2586
2587         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2588         mask. (#51039, fix from Martin Maierhofer)
2589
2590 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2591
2592         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2593         for unshifted + and shifted = for non-us keyboards.
2594         Make <Control>+ and <Control>- work as well as 
2595         <Control>KP_Plus, <Control>KP_Minus for recursive
2596         open/close.  (#2682, René Seindal)
2597
2598 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2599
2600         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2601         the active menu item before deactivating the menu,
2602         so gtk_menu_popdown doesn't change the history. (#50964)
2603         
2604 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2605
2606         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2607         draw lines with text_gc rather than black_gc.
2608         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2609
2610 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2611
2612         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2613         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2614         less interrelated then it was, but it still requires the
2615         GtkTreeView to map it.
2616
2617         * test/testtreecolumn.c: Now I can add a column to one view,
2618         remove it, add it to the another view, remove it, then re-add it
2619         to the first.  Nifty.
2620
2621 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2622
2623         * docs/tutorial/gtk-tut.sgml: Minor corrections
2624
2625 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2626
2627         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2628         GtkRowReference.
2629
2630 2001-02-28  Havoc Pennington  <hp@redhat.com>
2631
2632         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2633         draw_default
2634         (gtk_widget_draw_focus): remove this function; we could instead
2635         make it just gtk_widget_draw(), but in most cases I think the
2636         result would be broken user code, so think it's better to have
2637         that code not compile and get fixed
2638         (gtk_widget_draw_default): ditto
2639
2640         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2641         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2642         
2643         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2644         widgets lose/get the default, instead of calling draw_default
2645         
2646         * docs/Changes-2.0.txt: note about all this
2647
2648         Then fixed every widget in GTK, I won't list all the filenames.
2649
2650 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2651
2652         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2653         _gtk_tree_row_reference_deleted.
2654         (inserted_callback): Proxy out to
2655         _gtk_tree_row_reference_inserted.
2656         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2657         get around signal emission ordering problem.
2658
2659         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2660         fix to work with SINGLE 
2661         (_gtk_tree_selection_internal_select_node): Major sanitization on
2662         selections.  SINGLE now seems to work.
2663
2664         * tests/Makefile.am: add testtreecolumn.c:
2665
2666         * tests/testtreecolumn.c: New test.  Mostly points out selection
2667         bugs currently, but will test columns later.
2668
2669         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2670         selection bug.  I hate touching this code -- it's scary.
2671
2672 2001-02-26  Havoc Pennington  <hp@redhat.com>
2673
2674         * gtk/testgtk.c: test the window state stuff
2675
2676         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2677         window come to the user's attention as if it were just created
2678         (gtk_window_iconify): new function
2679         (gtk_window_deiconify): new function
2680         (gtk_window_stick): new function
2681         (gtk_window_unstick): new function
2682         (gtk_window_maximize): new function
2683         (gtk_window_unmaximize): new function
2684
2685         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2686
2687         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2688
2689         * gdk/x11/gdkevents-x11.c: create window state events when
2690         appropriate
2691         (gdk_wmspec_supported): new function
2692
2693         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2694         iconification before showing the window
2695         (gdk_window_deiconify): new function
2696         (gdk_window_stick): new function
2697         (gdk_window_unstick): new function
2698         (gdk_window_maximize): new function
2699         (gdk_window_unmaximize): new function
2700
2701         * gdk/gdkwindow.c: store the window state in the window; 
2702         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2703         window->mapped.
2704         (gdk_window_get_state): return the current window state
2705
2706         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2707         (gdk_event_get_state): handle GDK_WINDOW_STATE
2708         (gdk_synthesize_window_state): function to create the window state
2709         events
2710
2711         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2712         event, for changes to "window state" such as maximized, sticky, 
2713         etc.
2714         
2715         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2716         focuses a window
2717
2718         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2719         finds out if we support a given WM spec hint
2720
2721 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2722
2723         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2724
2725 2001-02-25  Hans Breuer  <hans@breuer.org>
2726
2727         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2728         cause we want to loose those prototypes only in the latter case
2729
2730         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2731         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2732         impl member variable instead
2733
2734         * gtk/gtk.def : updated
2735
2736         * gtk/gtklist.c : 
2737         * gtk/gtkmenus.c : include <string.h> for memset ()
2738
2739         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2740         for everthing built here, but for gtk-x.x.dll only. This solves
2741         problem of indifferent gtk type definitions
2742
2743 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2744
2745         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2746
2747 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2748
2749         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2750         column that is exposed.
2751
2752         (_gtk_tree_view_update_size): Changed name from set_size, and
2753         changed function to do more work, and not force people calling it
2754         to figure out the size.  Simplifies a lot of code elsewhere.
2755
2756 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2757
2758         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2759         return solid masks for xpms that have no transparent color.
2760         This makes the ..._create_from_xpm... API backwards
2761         compatible.
2762
2763 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2764
2765         * README.win32: Update. Mention the gtk-1-3-win32-production
2766         branch.
2767
2768         * gdk/win32/bdfcursor.c: New file. A program that generates
2769         xcursors.h. Thanks to Stefan Ondrejicka.
2770
2771         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2772         compact format.
2773
2774         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2775
2776         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2777         function, uses xcursors.h.
2778         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2779         cursor from inline data instead of using LoadCursor() to generate
2780         it from a resource.
2781
2782         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2783         event, must check the Windows message for mouse button state, as
2784         the GDK event state might not have been built if it is
2785         undelivered. Remove one goto.
2786
2787         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2788         SetCursor() if the current cursor as returned by GetCursor() is
2789         the window's previous cursor. The ChildWindowFromPoint() test
2790         apparently didn't work correctly.
2791
2792         * gdk/win32/rc/*.cur: Remove.
2793
2794         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2795
2796         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2797
2798         * gtk/makefile.{mingw,msc}.in: Updates.
2799
2800 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2801
2802         * gtk/gtktreemodel.h: add functions for signal emission.
2803
2804         * gtk/gtktreestore.c: move to use above functions instead of
2805         g_signal_emit.
2806
2807         * gtk/gtkliststore.c: ditto
2808
2809 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2810
2811         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2812         GObject instead of GtkObject.
2813
2814         * gtk/gtkliststore.c: ditto.
2815
2816         * gtk/gtktreemodelsort.c: ditto.
2817
2818         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2819         GtkTreeModelIface, instead of in each model.
2820
2821 2001-02-21  Havoc Pennington  <hp@redhat.com>
2822
2823         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2824         unbreak this function
2825
2826         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2827         properties
2828
2829         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2830         properties
2831
2832         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2833         properties
2834
2835         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2836         mean unset the max length
2837
2838 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2839
2840         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2841         Changed name to be set_cell_data_func to make it clear what
2842         the functino does.  Close bug #51069.
2843
2844 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2845
2846         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2847         have memory actually freed.  Keeps box running longer.
2848
2849 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2850         
2851         * gtk/gtkseparatormenuitem.[ch]:
2852         Added new menu separator item. The drawing and size handling
2853         is still done in GtkMenuItem, but the API is a bit more sane.
2854         
2855         * gtk/Makefile.am:
2856         Add gtkseparatormenuitem.[ch].
2857
2858         * gtk/gtk.h:
2859         Add gtkseparatormenuitem.h.
2860         
2861         * gtk/gtkentry.c:
2862         * gtk/gtkmenufactory.c:
2863         * gtk/gtktextview.c:
2864         Use the new API for menu separators.
2865         
2866         * demos/gtk-demo/menus.c (create_menu):
2867         Add some GtkSeparatorMenuItem demo code.
2868
2869 2001-02-20  Havoc Pennington  <hp@redhat.com>
2870
2871         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2872         Lee Mallabone
2873
2874         * gtk/gtkarrow.c: Convert to new property API, patch from 
2875         Lee Mallabone
2876
2877 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2878
2879         * tests/testtreeview.c (toggled_callback): fix to reflect change
2880         in GtkTreeModelStore.
2881
2882 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2883
2884         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2885         function to create an icon set from a pixbuf.
2886
2887 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2888
2889         * gtk/gtkcellrenderertext.[ch]:
2890         Add a "markup" property.
2891
2892         * gtk/treestoretest.c:
2893         Use the markup property, remove some leftover stuff from
2894         GtkTreeModelMapping.
2895
2896 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2897
2898         * gtk/gtklabel.c (gtk_label_set_selectable):
2899         Queue a redraw if the selectable setting was changed.
2900
2901 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2902
2903         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2904         Actually copy the whole gc, not just the public parts.
2905         
2906         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2907         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2908         labels.
2909
2910 2001-02-19  Havoc Pennington  <hp@pobox.com>
2911
2912         * gdk/gdkwindow.c: docs
2913
2914         * gdk/gdkrgb.c: docs
2915
2916         * gdk/gdkregion-generic.c: docs
2917
2918         * gdk/gdkgc.c (gdk_gc_set_values): docs
2919
2920         * gdk/gdkdraw.c: docs
2921
2922         * gdk/gdkdrawable.h: deprecate drawable get/set data
2923
2924 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2925
2926         * demos/gtk-demo/dialog.c: Add simple new demo.
2927
2928 2001-02-19  Havoc Pennington  <hp@redhat.com>
2929
2930         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2931         insert_child_anchor signal, bug #50245
2932
2933         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2934         from create_child_anchor, so the anchor is passed in
2935
2936         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2937         (_gtk_widget_segment_new): have the child anchor object passed in, 
2938         instead of creating it.
2939
2940         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2941         to gtk_text_buffer_get_modified
2942
2943 2001-02-19  Havoc Pennington  <hp@redhat.com>
2944
2945         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2946         changed GLib without fixing GTK
2947
2948         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2949         functions to have an underscore in front. Most of them should 
2950         probably just go away, but for starters don't export them.
2951         Bug #50482
2952
2953 2001-02-19  Havoc Pennington  <hp@redhat.com>
2954
2955         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2956         excluded by default
2957
2958         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2959         clean up the old code a bit
2960
2961         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2962         inconsistent state
2963
2964         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2965         draw inconsistent state
2966
2967         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2968         (create_menu): add inconsistent test
2969
2970         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2971         new function
2972         (gtk_check_menu_item_get_inconsistent): new function
2973         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2974         state (using etched in for now)
2975
2976         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2977         draw inconsistent state
2978
2979         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2980         function, used when the user has selected a range of stuff in
2981         different states
2982         (gtk_toggle_button_get_inconsistent): accessor for that
2983         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2984         don't know what else to do)
2985
2986 2001-02-19  Hans Breuer <hans@breuer.org>
2987
2988         * gtk/gtk.def : updated exported symbols
2989
2990         * gtk/makefile.msc.in : updated
2991
2992         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2993         a colormap, when invoked from testgtk::entry. I'm not sure where
2994         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2995         avoids immediate crashing ...
2996
2997         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2998         any objections ?
2999
3000         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
3001         0 parameter. At least msvc doesn't like macros with var args. 
3002         I simply removed the extra 0, was it a feature or a typo ?
3003
3004         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
3005         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
3006         because the value assignment to the internal struct wasn't working.
3007         I'm not absolutely sure. The problem could have been resolved by
3008         changing the "func" declartion in the struct, but was the pointer
3009         to the function pointer intended ?
3010
3011         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
3012
3013         * gdk/gdk.def : updated exported symbols
3014
3015         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
3016         only use SetDIBitsToDevice if there is a palette at the drawable
3017         and the image is GDK_VISUAL_PSEUDO_COLOR
3018
3019         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
3020
3021         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
3022
3023         * gdk/*/makefile.msc : updated
3024
3025 2001-02-19  Havoc Pennington  <hp@redhat.com>
3026
3027         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
3028         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
3029
3030         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
3031         (gdk_key_repeat_restore): nuke
3032
3033         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
3034         (gdk_init_check): no atexit func
3035
3036         * gdk/gdkrgb.h: mark some stuff deprecated
3037
3038         * gdk/gdkcolor.h: mark some stuff deprecated
3039         
3040         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
3041
3042         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
3043
3044 2001-02-16  Havoc Pennington  <hp@redhat.com>
3045
3046         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
3047         scroll steps.
3048
3049         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
3050         steps, and add Ctrl-arrow shortcuts for paging visually as with
3051         HScale, since Page Up and Page Down move logically.
3052
3053         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
3054         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
3055         
3056         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
3057         steps
3058         (gtk_range_scroll): handle the visual steps
3059
3060         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
3061         scroll steps
3062
3063         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
3064         steps, not the logical ones.
3065
3066         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3067         (scroll_vertical): handle up/down steps
3068
3069 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3070
3071         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3072         Copy data and free data with free().
3073
3074         * gdk-pixbuf/gdk-pixbuf.c:
3075         * gdk-pixbuf/io-jpeg.c:
3076         * gdk-pixbuf/io-png.c:
3077         Use g_try_malloc/g_free instead malloc/free.
3078         
3079         * gdk-pixbuf/test-gdk-pixbuf.c:
3080         Must... initialize... gobject...
3081         
3082         * gdk-pixbuf/pixops/timescale.c:
3083         * gtk/gtkcalendar.c:
3084         Use g_malloc instead of malloc.
3085         
3086 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3087
3088         * gtk/testgtkrc:
3089         Comment out property assignments, these don't work yet.
3090
3091 2001-02-17  Havoc Pennington  <hp@pobox.com>
3092
3093         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3094         bit.
3095
3096 2001-02-17  Havoc Pennington  <hp@pobox.com>
3097
3098         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3099         shadowed variables that had broken size request in some cases,
3100         leading to bogus tooltips (#50996)
3101
3102 2001-02-06  Jon K Hellan  <hellan@acm.org>
3103
3104         Implement fast browsing of tooltips, bug #50619
3105         
3106         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3107         and last_popdown
3108         
3109         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3110         use_sticky_delay and last_popdown.
3111         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3112         time of popdown.
3113         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3114         is NULL.
3115         (gtk_tooltips_recently_shown): New static function.  Return true
3116         if < sticky_delay has elapsed since last popdown.
3117         (gtk_tooltips_event_handler): Display window after sticky_delay
3118         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3119         since last popdown.
3120         
3121 2001-02-17  Havoc Pennington  <hp@pobox.com>
3122
3123         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3124         instead of (). #6394
3125
3126         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3127         G_CONST_RETURN, make it return by reference, #50473
3128         
3129 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3130
3131         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3132         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3133         setup fields contain garbage (e.g. subwindow, breaking
3134         gdk_drawable_ref() upon event copy).
3135         (gtk_menu_stop_navigating_submenu_cb): same here.
3136
3137         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3138         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3139         * gtk/gtkclist.c (vertical_timeout): 
3140         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3141         default-zero-intialization for unions to memset(,0,), as unions are
3142         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3143         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3144
3145         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3146         g_closure_sink() warning.
3147
3148         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3149         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3150         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3151         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3152         
3153 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3154
3155         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3156         gtk_*_store_get, and moved to GtkTreeModel.
3157
3158         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3159
3160         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3161
3162         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3163
3164         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3165         set the func.
3166
3167         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3168         freeze/thaw notify between setting all the properties for a cell.
3169
3170         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3171
3172 2001-02-15  Havoc Pennington  <hp@redhat.com>
3173
3174         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3175         the X coordinates so they're with respect to the line, rather than 
3176         with respect to the layout.
3177
3178         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3179         Mallabone
3180
3181         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3182         and inverted test
3183
3184         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3185         #50806
3186
3187         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3188
3189         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3190         gtk_text_iter_is_end
3191
3192         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3193         rename gtk_text_buffer_get_end_iter
3194
3195         * gtk/testgtk.c (create_labels): Add test for selectable
3196
3197         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3198         the selection stuff. This code is kind of broken since it doesn't 
3199         use the theme engine.
3200
3201         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3202         fix infinite loop and y offset problem
3203         (gdk_draw_layout_line_with_colors): fix foreground color handling
3204
3205         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3206         that makes the label selectable.
3207         
3208         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3209         layout when the style is set, since fonts etc. could have changed.      
3210
3211 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3212
3213         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3214
3215         * gtk/gtktreemodelsimple.[ch]: removed.
3216
3217 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3218
3219         * gtk/gtktreemodelmapping.[ch]:
3220         New files. Implement GtkTreeModelMapping.
3221         
3222         * gtk/Makefile.am:
3223         Add gtktreemodelmapping.[ch].
3224         
3225         * gtk/gtk.h:
3226         Add gtktreemodelmapping.h
3227
3228         * gtk/treestoretest.c:
3229         Test the GtkTreeModelMapping
3230
3231 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3232
3233         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3234         have a demo, we might as well pass in real values.  Thanks to
3235         clahey for pointing this out.
3236
3237 2001-02-14  Havoc Pennington  <hp@pobox.com>
3238
3239         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3240         "static" to a private function
3241         (gtk_image_menu_item_class_init): remove destroy handler,
3242         add "image" object property
3243
3244 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3245
3246         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3247         Add a shortcut if the window and the current clip_region doesn't
3248         overlap. This is needed when there are a lot of windows in a
3249         window. The layout test in testgtk is a good test.
3250
3251         * gdk/linux-fb/gdkwindow-fb.c:
3252         Whitespace fix.
3253
3254 2001-02-13  Sven Neumann  <sven@convergence.de>
3255
3256         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3257
3258 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3259
3260         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3261         Don't reference last_cursor if it is null. Fixes crash when rotating
3262         the screen before having moved the mouse.
3263
3264         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3265
3266         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3267
3268         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3269         when using 90 or 270 degrees rotation.
3270
3271 2001-02-12  Havoc Pennington  <hp@pobox.com>
3272
3273         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3274         it always set the foreground, even if we were only using
3275         a stipple.
3276         (gdk_draw_layout_line_with_colors): new function, allow
3277         override colors
3278         (gdk_draw_layout_with_colors): new function, allow override
3279         colors
3280         (gdk_pango_layout_line_get_clip_region): function to get the clip
3281         region for a logical text range
3282         (gdk_pango_layout_get_clip_region): get the clip region for a
3283         logical text range
3284
3285         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3286         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3287         the right number of arguments.
3288
3289         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3290         enhance the function to check that node data corresponds to a 
3291         view still belonging to the tree.
3292
3293         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3294         GtkTreePath
3295         (gtk_tree_view_inserted): ditto
3296         (gtk_tree_view_child_toggled): ditto
3297
3298         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3299         simplify this code.
3300
3301         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3302         a PangoAttrList
3303
3304         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3305
3306         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3307
3308         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3309         size in the size request 
3310         (gtk_menu_bar_size_allocate): consider toggle size here
3311
3312         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3313         that displays a widget in the toggle slot
3314
3315         * gtk/testgtk.c: test GtkImageMenuItem
3316
3317         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3318         
3319         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3320         request and allocation
3321
3322         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3323
3324         * gtk/gtkcheckmenuitem.c
3325         (gtk_check_menu_item_toggle_size_request): ditto
3326         
3327 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3328
3329         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3330         reference.
3331
3332         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3333         and refuse to initialize GTK+ if they fail.
3334
3335 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3336
3337         * configure.in: Add check for gtk-doc version.
3338
3339 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3340
3341         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3342         where the xpad/ypad was only being used on one side!
3343
3344 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3345
3346         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3347         function, copied from X11 version.
3348
3349         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3350         DestroyCursor failures. The reason for the problem (despite the
3351         inconsistent messages from GetLastError()) was that
3352         DestroyCursor() cannot be called while a cursor is set in a
3353         window. Set the new cursor first and then destroy the old one.
3354         Thanks to jpe@archaeopteryx.com.
3355
3356         * gdk/win32/gdkcc-win32.c: Remove.
3357
3358         * gdk/win32/Makefile.am: Remove from here, too.
3359         
3360         * gdk/gdk.def
3361         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3362
3363         * gtk/gtk.def
3364         * gtk/makefile.mingw.in: Updates.
3365
3366 2001-02-08  Havoc Pennington  <hp@redhat.com>
3367
3368         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3369         add a widget to a bin that already has a child.
3370
3371         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3372
3373         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3374         
3375         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3376
3377         * gdk/gdk.h: remove gdkcc.h
3378
3379         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3380
3381         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3382         GdkPixbuf, since the previous implementation was GdkColorContext
3383         dependent.
3384
3385         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3386         
3387 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3388
3389         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3390         a sane value!
3391
3392 2001-02-08  Havoc Pennington  <hp@redhat.com>
3393
3394         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3395         lighten them.
3396
3397 2001-02-08  Havoc Pennington  <hp@redhat.com>
3398
3399         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3400         validation idle
3401
3402         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3403         cell renderer
3404
3405         * demos/pixbuf-demo.c (timeout): remove deprecated
3406         gtk_widget_draw
3407
3408         * demos/testpixbuf-save.c (main): remove deprecated
3409         gtk_drawing_area_size
3410
3411         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3412         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3413         at the start of the allocation.
3414         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3415         unsetup or NULL model.
3416
3417         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3418         even/odd/sorted cells in the tree view.
3419
3420         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3421         bugfixes
3422
3423         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3424         backgrounds with draw_flat_box using different detail for even/odd
3425         rows.
3426
3427         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3428         row, so we can draw the alternating colors thing
3429
3430         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3431         property from a synonym property, notify for the synonym.
3432         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3433         (gtk_text_tag_get_property): Always return the font, even if
3434         all its fields aren't set
3435
3436         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3437         store the attr list; it leaves us with no way to change attributes
3438         in _render according to the render flags, and no way to implement
3439         get_property. Instead store all the specific text attributes. 
3440         Separate whether an attribute is enabled from its value. Sync all
3441         properties with GtkTextTag, make them all consistent, etc.
3442
3443         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3444         renderers can highlight the sort row/column     
3445
3446         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3447         accessor functions to get values; this has the side effect of
3448         showing up which accessor functions were missing. Added those.
3449
3450         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3451         set_alignment, to be consistent with GtkLabel, GtkMisc
3452
3453         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3454         arrow.
3455
3456         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3457
3458         * gtk/gtktreesortable.h: updates in here
3459
3460 2001-02-07  Sven Neumann  <sven@convergence.de>
3461
3462         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3463         pango dimensions after painting the background. We used to draw
3464         gigantic flat boxes here.
3465
3466 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3467
3468         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3469         error introduced with earlier commit) (pointed out by
3470         Ollie Lho)
3471
3472 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3473
3474         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3475         which are no longer necessary.
3476
3477 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3478
3479         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3480
3481 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3482
3483         * gdk/gdk.def
3484         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3485         Provide dummy implementations.
3486
3487 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3488
3489         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3490
3491         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3492         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3493         deprecated this function.
3494
3495         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3496         argument.
3497
3498 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3499
3500         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3501
3502 2001-02-03  Havoc Pennington  <hp@pobox.com>
3503
3504         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3505         Mikael Hermansson with patch from Mikael (if there was a toggle
3506         start one after the first character in the range, this function
3507         was broken). Bug #50380
3508
3509 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3510
3511         * configure.in: Remove confusing comment about X11.
3512
3513 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3514
3515         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3516         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3517         
3518 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3519
3520         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3521         it breaks things on BSD. If you want to compile GTK+ with
3522         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3523         when configuring, since GTK+ simply can't be "pure ANSI" 
3524         in the header files it uses. (#8170, Greg Hudson)
3525
3526 2001-02-02  Havoc Pennington  <hp@redhat.com>
3527
3528         * gtk/gtkwindow.c: docs
3529
3530         * gtk/gtkwidget.c: docs
3531         (gtk_widget_set_colormap): add a reference to the colormap
3532         (gtk_widget_get_default_colormap): add a reference to the colormap
3533
3534         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3535
3536         * gtk/gtktextiter.c: docs
3537
3538         * gtk/gtkmain.c (gtk_propagate_event): docs
3539
3540         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3541         (gtk_paned_set_position): docs
3542
3543         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3544         sort interface, no implementation yet.
3545
3546         * demos/testpixbuf.c (new_testrgb_window): replace
3547         gtk_drawing_area_size() with gtk_widget_set_usize()
3548
3549         * demos/testpixbuf-drawable.c (main): ditto
3550         
3551         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3552
3553         * gtk/gtktextbuffer.c: docs
3554
3555         * gtk/gtkstock.c: docs
3556
3557         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3558
3559         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3560
3561         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3562         
3563         * gtk/gtkimage.c: add some docs in here
3564         (gtk_image_size_request): change name of
3565         gtk_widget_render_stock_icon
3566         (gtk_image_get_icon_set): don't dup returned string
3567         (gtk_image_get_icon_set): don't dup returned string
3568
3569         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3570         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3571         and gtkiconfactory.h functions
3572
3573         * gtk/gtkiconfactory.c: add some docs in here
3574
3575         * gtk/gtkmain.c (gtk_get_default_language): document
3576         (gtk_get_current_event): document
3577         (gtk_get_current_event_state): document
3578         (gtk_get_event_widget): document
3579
3580         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3581
3582         * gtk/gtkcontainer.c: Add some documentation
3583         (gtk_container_add): give a more explanatory warning on adding an
3584         already-parented widget, this is kind of a FAQ and also a common
3585         typo that's easier to debug with a nice warning 
3586
3587         * gtk/gtkcellrenderertoggle.c
3588         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3589         adding this, it's useless
3590         (gtk_cell_renderer_toggle_set_active): remove
3591         (gtk_cell_renderer_toggle_get_radio): add
3592
3593         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3594         the NULL cell renderer, that doesn't make any sense to me. 
3595
3596         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3597         demo code should never use deprecated features.
3598
3599         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3600         code should never use deprecated features.
3601
3602         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3603         gtk_widget_queue_clear_area deprecated
3604
3605         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3606         deprecated
3607
3608         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3609
3610         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3611         a GdkImage deprecated, replaced by new consistently-named
3612         functions       
3613
3614         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3615
3616         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3617
3618         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3619         deprecated
3620
3621         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3622         so it won't appear in docs and confuse people.
3623
3624         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3625
3626         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3627         macros deprecated. (can't mark the type itself deprecated, since
3628         GtkProgressBar is not deprecated and we need the type decl to use
3629         GtkProgressBar)
3630
3631         * gtk/gtkpixmap.h: Mark deprecated
3632
3633         * gtk/gtkoldeditable.h: Mark deprecated
3634
3635         * gtk/gtklist.h: Mark deprecated
3636
3637         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3638         for anything anymore.
3639
3640         * gtk/gtkctree.h: Mark deprecated
3641
3642         * gtk/gtkclist.h: Mark deprecated
3643
3644         * gtk/gtkpreview.h: Mark deprecated
3645
3646         * gtk/gtkpacker.h: Mark deprecated
3647
3648         * gtk/gtktipsquery.h: Mark deprecated
3649
3650         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3651
3652         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3653
3654         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3655
3656         * gtk/gtkruler.h: Add comment that it will move out of GTK
3657
3658         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3659
3660         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3661
3662 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3663
3664         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3665         gdk_colormap_sync private since it was never exported
3666         in a header file.
3667
3668         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3669         colormap->colors[] for StaticGray, StaticColor colormaps.
3670
3671         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3672         was being used as if it was image->bits_per_pixel.
3673
3674         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3675         for the image in the GdkImage structure since it isn't
3676         reconstructable, and we need it to handle packed types
3677
3678         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3679         the assumption that on Win32 image->bits_per_pixel == image->depth,
3680         always.
3681
3682         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3683
3684         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3685         warning message if no converter can be found. 
3686
3687 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3688
3689         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3690         chars to isupper() / tolower(). (#567)
3691
3692         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3693         to clear up 64-bit warnings. (#567)
3694
3695 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3696
3697         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3698         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3699
3700         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3701         since some people set $(libdir) separately. (#1290, David Kaelbling)
3702
3703 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3704
3705         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3706         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3707         MAXPATHLEN, but the code here depends on a fixed value.)
3708         (#4524)
3709
3710 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3711
3712         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3713         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3714
3715 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3716
3717         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3718         viewable there is no way that moving the node will cause the 
3719         focus row to become not viewable, so omit check on the visibility
3720         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3721
3722 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3723
3724         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3725         selection before inserting new text.
3726
3727 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3728
3729         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3730         Make the sensitivity of the reparented child track that of
3731         the original parent menu item. (#34218, David Hodson)
3732
3733         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3734         the case where the current item is destroyed properly.
3735
3736         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3737         some edge cases with child-less menuitems.
3738         
3739 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3740
3741         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3742         key pop down window. (#12074, Jon K Hellan)
3743
3744 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3745
3746         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3747         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3748         The solution here isn't perfect - you get an extraneous
3749         emission of "toggle", which could conceivably confuse an app,
3750         but better than the current situation. LXR search seems to
3751         indicate that no apps in GNOME CVS connect to "toggle".
3752
3753 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3754
3755         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3756         gtk_public_h_sources to directly here to avoid warning when
3757         building srcdir != builddir. (#9656)
3758
3759 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3760
3761         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3762         handlers in gtkrange.c return the proper values (TRUE == handled)
3763         (#10316).
3764
3765         This is just the tip of the iceberg, but gtkrange.c is the
3766         most common place where the propagation is problematical,
3767         and also a place where it is almost certainly safe to change
3768         this in the stable branch.
3769
3770         (You don't want right click popups on a range control or anything...)
3771
3772 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3773
3774         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3775         area on focus out, even if a background pixmap isn't set.
3776         (#13941)
3777         
3778 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3779
3780         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3781         to deal with setting the shape properly when scrolling arrows are
3782         turned on, but not visible because there is sufficient space.
3783         (#13432)
3784
3785 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3786
3787         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3788         items with submenus, destroy the item along with the submenu.
3789         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3790         properly.
3791
3792         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3793         later.
3794
3795 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3796
3797         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3798         the focus widget sometimes wasn't drawn with the default if there
3799         was no default widget.
3800
3801         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3802         unreference pixmaps. 
3803
3804         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3805         for some extra safety.
3806
3807 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3808
3809         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3810         the text of a cell to the old pointer value better, by
3811         copying the new text before freeing the old text. Some code
3812         cleanup. (#8079, Karl Nelson)
3813
3814 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3815
3816         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3817         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3818
3819 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3820
3821         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3822         item from a menu, check to see if it matches 
3823         menu->old_active_menu_item, and if so, unref and clear
3824         old_active_menu_item (Patch from Pavel Cisler)
3825
3826         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3827         menu_shell->active_menu_item, if it is the child being
3828         removed. (Patch based on that of Gene Ragan, #50337)
3829
3830 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3831
3832         * gdk/linux-fb/gdkselection-fb.c: 
3833         * gdk/linux-fb/gdkcolor-fb.c: 
3834         * gdk/linux-fb/gdkdrawable-fb2.c: 
3835         * gdk/linux-fb/gdkfont-fb.c: 
3836         * gdk/linux-fb/gdkim-fb.c: 
3837         * gdk/linux-fb/gdkinput.c: 
3838         * gdk/linux-fb/gdkkeyboard-fb.c: 
3839         * gdk/linux-fb/gdkmain-fb.c: 
3840         * gdk/linux-fb/gdkrender-fb.c: 
3841         A bunch of whitespace cleanup.
3842         
3843 2001-01-30  Havoc Pennington  <hp@pobox.com>
3844
3845         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3846         #ifdef GTK_ENABLE_BROKEN.
3847
3848         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3849         GTK_ENABLE_BROKEN just before including the broken headers.
3850         
3851         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3852         deprecated types registered.
3853
3854         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3855         we have to test the broken stuff.
3856
3857         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3858         
3859 2001-01-30  Havoc Pennington  <hp@redhat.com>
3860
3861         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3862         here where prev pointer was set to the wrong thing
3863
3864         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3865         (gtk_tree_path_is_descendant): new function
3866
3867         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3868         cached length
3869         (gtk_list_store_get_iter): don't modify iter if we can't get the
3870         path.
3871
3872         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3873         
3874         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3875         GtkTreeDragDest
3876
3877         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3878         was causing segfault
3879
3880         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3881         pointer to NULL
3882
3883         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3884
3885         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3886         on returning FALSE
3887         (gtk_list_store_iter_children): ditto
3888         (gtk_list_store_iter_nth_child): ditto
3889         (gtk_list_store_iter_nth_child): ditto
3890         (gtk_list_store_iter_parent): ditto
3891
3892         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3893         on iter->user_data != NULL instead of silently accepting it.
3894         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3895         we are returning TRUE.
3896         (gtk_tree_store_iter_children): ditto
3897         (gtk_tree_store_iter_nth_child): ditto
3898         (gtk_tree_store_iter_parent): ditto
3899         (gtk_tree_store_insert): remove handling of parent->user_data ==
3900         NULL, replace with parent == NULL       
3901
3902         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3903         and a comment explaining things
3904
3905         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3906         interface support to GtkTreeStore.
3907
3908         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3909         FALSE if no prev, fix
3910
3911         * gtk/gtktreeview.c (set_source_row): use a row reference
3912         (set_dest_row): use a row reference
3913
3914 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3915
3916         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3917         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3918         (gtk_tree_selection_select_iter): The same as above.
3919
3920 2001-01-26  Havoc Pennington  <hp@redhat.com>
3921
3922         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3923         which holds a handle to a specific row (particular set of values
3924         in the model, i.e. pointer-identity row).
3925
3926         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3927         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3928         Still need to use it for the src/dest row saved on the drag context.
3929
3930 2001-01-26  Havoc Pennington  <hp@redhat.com>
3931
3932         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3933
3934         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3935         not offset by TREE_VIEW_HEADER_HEIGHT
3936         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3937         TREE_VIEW_HEADER_HEIGHT
3938
3939         * configure.in (included_loaders): for me, --with-included-loaders
3940         generates the error "the specified loader yes does not exist",
3941         i.e. the arg defaults to "yes", so change test for value ""
3942         to test for value "yes", and include all loaders in that case.
3943
3944         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3945
3946         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3947         handle TREE_VIEW_VERTICAL_SEPARATOR
3948         (gtk_tree_view_bin_expose): fix to consider the row offset as
3949         pointing halfway into vertical separator.       
3950         (gtk_tree_view_draw_node_focus_rect): ditto
3951
3952         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3953         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3954         (TRUE) to be called.
3955
3956         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3957         debug mode where the invalid region is colored in on invalidate,
3958         so you can see the flicker and know whether your redraw code is 
3959         doing a good job.
3960
3961         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3962         tree window coordinates (clip rect is in tree window coords)
3963
3964         * gtk/Makefile.am: add gtktreednd.[hc]
3965
3966         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3967
3968         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3969         drag-and-drop data operations on a model (so we can set up tree
3970         drag-and-drop automatically)
3971
3972         * gtk/testgtk.c: Add a window to change sensitivity in the
3973         GtkLabel test; add a way to change the entry frame in GtkEntry
3974         test
3975
3976         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3977         (gtk_entry_get_has_frame): new functions to remove the frame
3978         around an entry
3979         (gtk_entry_size_request): shrink requisition if no frame
3980         (gtk_entry_draw_focus): don't draw frame if no frame
3981
3982         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3983         checks inside a cell renderer
3984         (gtk_default_draw_option): ditto for options
3985
3986         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3987         children from the alignment, not the button
3988         (gtk_tree_view_column_init): ref/sink the column, to emulate
3989         GObject refcounting.
3990
3991         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3992         
3993         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3994         Use theme functions to draw the toggles 
3995
3996         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3997
3998         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3999         GdkPangoAttrEmbossed to use in rendering insensitive text
4000
4001         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
4002
4003         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
4004         using new GDK features
4005         
4006 2001-01-24  Alexander Larsson  <alexl@redhat.com>
4007
4008         * gtk/gtkimage.c:
4009         Splitted gtk_image_clear into gtk_image_clear() and
4010         gtk_image_reset(). Call gtk_image_clear() in ::destroy
4011         to avoid leaks.
4012
4013         * gtk/gtklabel.c (set_markup):
4014         Don't leak text.
4015
4016         * gtk/gtktextlayout.c:
4017         Always free display->shaped_objects.
4018
4019         * gtk/testgtk.c (create_clist):
4020         Don't leak custom style.
4021
4022 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4023
4024         * gtk/gtkcolorsel.c (grab_color_at_mouse):
4025         Don't leak image. Simplify using gdk_colormap_query_color().
4026         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
4027
4028         * linux-fb/gdkcolor-fb.c:
4029         Implemented gdk_colormap_query_color.
4030
4031 2001-01-23  Alexander Larsson  <alexl@redhat.com>
4032
4033         * linux-fb/gdkcursor-fb.c:
4034         Don't leak built-in cursors.
4035
4036         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
4037         Don't leak tmp_points.
4038
4039         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
4040         Don't modify desc. Don't leak font if the PangoFont
4041         isn't found.
4042         
4043         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
4044         Free dash_list.
4045
4046         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
4047         Don't leak string.
4048         
4049 2001-01-20  Havoc Pennington  <hp@pobox.com>
4050
4051         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
4052         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
4053         me, matches Pango
4054
4055 2001-01-22  Havoc Pennington  <hp@redhat.com>
4056
4057         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
4058
4059         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
4060
4061         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
4062         Remove, move back to gdk-pixbuf
4063
4064         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
4065         to all the word functions
4066
4067         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4068         before doing anything on NULL layout or if we don't have the focus
4069
4070         * gtk/testtext.c (fill_example_buffer): "justification"
4071
4072         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4073         to be called "justification" not "justify"
4074
4075         * demos/gtk-demo/textview.c (create_tags): "justification"
4076         
4077         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4078
4079 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4080
4081         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4082         Don't leak visible_region. Use visible_region instead of region.
4083         
4084         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4085         Don't do extra gdk_drawable_ref(). This is not X.
4086         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4087         gdk_fb_focused_window is ref:ed.
4088         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4089         windows.
4090
4091 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4092
4093         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4094         Don't leak the PangoFontDescriptor.
4095
4096 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4097
4098         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4099         when not realized.
4100         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4101         (gtk_tree_view_realize): add scroll_to support
4102         (gtk_tree_view_finalize): add a finalize method.  Populate.
4103         (gtk_tree_view_insert_column): ref and sink the column.
4104         (gtk_tree_view_append_column): ref and sink the column.
4105         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4106         individual nodes.  Should make the code much more efficient, if
4107         actually used.
4108
4109 2001-01-19  Havoc Pennington  <hp@redhat.com>
4110
4111         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4112         byte_offset variable was being used to mean both "offset into
4113         layout" and "offset into buffer line" which was no longer true
4114         with addition of preedit string; fix
4115
4116 2001-01-19  Havoc Pennington  <hp@redhat.com>
4117
4118         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4119
4120         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4121         function
4122
4123         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4124         implement
4125
4126         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4127         scroll_to_cell, matches TextView scroll functions better
4128         (gtk_tree_view_tree_to_widget_coords): new function
4129         (gtk_tree_view_widget_to_tree_coords): new function
4130         (gtk_tree_view_get_visible_rect): new function
4131         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4132         (gtk_tree_view_draw_node_focus_rect): new function moved from
4133         draw_focus, also, use width of bin_window as width of the focus
4134         rect
4135         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4136         already-expanded rows
4137         (gtk_tree_view_get_cell_rect): new function
4138         (gtk_tree_view_get_path_at_pos): return the click position
4139         relative to the passed-in cell
4140         (gtk_tree_view_set_expander_column): new function
4141
4142         * configure.in: remove gtk-config-2.0 chmod
4143
4144         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4145         and properly handle drags with targets we don't understand
4146         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4147         scrolling anyway
4148         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4149         mark invisible
4150
4151         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4152         function
4153         (gtk_drag_dest_get_target_list): new function
4154         (gtk_drag_dest_set_target_list): new function
4155         
4156         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4157
4158         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4159         related to drag-and-drop
4160
4161 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4162
4163         * gdk/linux-fb/gdkprivate-fb.h:
4164         Define EMULATE_GDKFONT.
4165         Add extra pango_font stuff to GfkFontPrivate.
4166         
4167         * gdk/linux-fb/gdkdrawable-fb2.c:
4168         * gdk/linux-fb/gdkfont-fb.c:
4169         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4170         emulation using PangoFont.
4171
4172 2001-01-17  Havoc Pennington  <hp@pobox.com>
4173
4174         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4175         all the non-deprecated set_foo functions. Added missing object
4176         properties, and added g_object_notify() to setters. 
4177         Wrote docs.
4178         
4179 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4180
4181         * gtk/gtkmain.c
4182         * gtk/gtkrc.c: (Win32) Use the new
4183         g_win32_get_package_installation_(sub)directory() functions.
4184
4185         * config.h.win32.in: New file.
4186         
4187         * config.h.win32: Removed.
4188
4189         * configure.in: Output config.h.win32.
4190
4191         * Makefile.am: Add it to EXTRA_DIST.
4192
4193         * gtk/gtk.def: Update.
4194
4195 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4196
4197         * gtk/gtklabel.c (gtk_label_size_request): Set the
4198         attributes onto the PangoLayout even if they are newly
4199         created from label->pattern.
4200
4201 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4202
4203         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4204
4205         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4206         structures in functions. Fixes bug where gtk_dataset_*
4207         was accidentally still being used in one place, causing
4208         every dest side event to be treated independently.
4209
4210         * gtk/gtkdnd.c: Remove last vestages of handling
4211         ::draw (fixes warning)
4212         
4213         * gtk/gtkentry.[ch]: Add drag and drop support.
4214
4215         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4216         new function gtk_check_drag_threshhold() for checking
4217         to check if (dx,dy) has exceeded the threshhold for starting
4218         a drag and use it everywhere.
4219
4220 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4221
4222         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4223         add -I{includedir}/gtk-2.0.
4224
4225         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4226         gdk/gdk-pixbuf.h: Doc fixups.
4227         
4228         * gtk/gtkobject.h: Remove trailing , from enum
4229
4230 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4231
4232         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4233         Doh! Mixed up x and y.
4234
4235         * gdk/linux-fb/gdkglobals-fb.c:
4236         Removed gdk_fb_pointer_grab_window_events,
4237         added _gdk_fb_pointer_grab_owner_events and
4238         _gdk_fb_keyboard_grab_owner_events.
4239
4240         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4241         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4242         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4243         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4244         Send crossing events after ungrab finished.
4245         (gdk_keyboard_grab): Set ..._owner_events
4246         (type_masks): Move out of function.
4247         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4248         gdk_fb_keyboard_event_window): New functions, return the
4249         window an event should be targeted at. Handles grabs and
4250         event propagation. Can return NULL.
4251         (gdk_event_make): Remove event_mask checking. Now always
4252         returns an event.
4253                 
4254         * gdk/linux-fb/gdkkeyboard-fb.c:
4255         * gdk/linux-fb/gdkproperty-fb.c:
4256         * gdk/linux-fb/gdkselection-fb.c:
4257         Use new event_window/gdk_event_make() behaviour.
4258         
4259         * gdk/linux-fb/gdkmouse-fb.c:
4260         Use new event_window/gdk_event_make() behaviour.
4261         Only send motion events if in the same window.
4262         If grabbed, use cursor from window if sibling of grabbed
4263         window, and cursor from grabbed window otherwise.
4264
4265         * gdk/linux-fb/gdkprivate-fb.h:
4266         Update gdk_fb_window_send_crossing_events, gdk_event_make
4267         and grab varaible declarations. Add gdk_fb_*_event_window().
4268
4269         * gdk/linux-fb/gdkwindow-fb.c:
4270         Use new event_window/gdk_event_make() behaviour.
4271         Keep correct track of focus window.
4272         (gdk_window_set_events): Set all specific button motion masks
4273         if GDK_BUTTON_MOTION_MASK set.
4274
4275         * gtk/gtkdnd.c (gtk_drag_update):
4276         Free info->last_event if gdk_drag_motion returned FALSE.
4277
4278 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4279
4280         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4281         Eliminate redraws when input-only windows are shown or
4282         hidden. Thanks to jpe@archaeopteryx.com.
4283
4284 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4285
4286         * docs/faq/gtk-faq.sgml: FAQ update:
4287           - Update to bugzilla
4288           - Add GTK+ and security/SUID/SGID
4289           - Add DnD question
4290
4291 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4292
4293         * gdk/linux-fb/gdkdnd-fb.c:
4294         Some cleanups.
4295         
4296 2001-01-15  Havoc Pennington  <hp@pobox.com>
4297
4298         * tests/testtreeview.c: add test stuff for CellRendererToggle
4299
4300         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4301         accessor
4302
4303         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4304         only toggle on button press (would do release like GtkButton, but
4305         we'd need implicit grab code for treeview cells)
4306
4307 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4308
4309         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4310
4311         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4312         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4313
4314         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4315         to g_{locale,filename}_{to,from}_utf8 to match current API.
4316
4317         * gtk/makefile.msc.in (gtk_OBJECTS)
4318         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4319
4320         * gtk/gtk.def: Update.
4321
4322 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4323
4324         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4325         implementaion that more closely mimics the events that an X server
4326         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4327         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4328         with nested preview widgets, for instance, more responsive when
4329         you move the mouse quickly into them.
4330         (find_window_for_pointer_event): Make it actually compile.
4331         (gdk_event_translate): Set send_event to the value of
4332         InSendMessage (). This doesn't really mean the same as X11's
4333         send_event flag, but is close enough, says jpe@archaeopteryx.com
4334
4335 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4336
4337         * gdk/linux-fb/gdkdnd-fb.c:
4338         Implemented drag and drop.
4339         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4340         when it tries to free and then copy the same event (info->last_event).
4341         I am not sure about why this happens, but will continue looking.
4342
4343 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4344
4345         * gdk/linux-fb/gdkwindow-fb.c:
4346         Use gdk_window_invalidate_rect instead of
4347         gdk_window_invalidate_rect_clear to minimise flashing.
4348         When hiding windows you need to clear the root window though.
4349
4350 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4351
4352         * gdk/linux-fb/gdkdrawable-fb2.c:
4353         For optization, add an full_shapes argument to gdk_fb_clip_region.
4354         If this is false, only the cliprects of the shapes are used.
4355
4356         * gdk/linux-fb/gdkprivate-fb.h:
4357         Export gdk_fb_window_peek_shape.
4358         Add full_shapes to gdk_fb_clip_region.
4359
4360         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4361         When moving a window, don't clear everything under the it, just the
4362         root window. Makes stuff faster and flash less.
4363         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4364         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4365         offset of the shape.
4366         
4367
4368 2001-01-12  Havoc Pennington  <hp@redhat.com>
4369
4370         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4371         current invalid region, fixes redraw bug while scrolling the 
4372         text widget
4373
4374         * gtk/gtktextview.c, gtk/gtktextview.h:
4375         Rearrange the scrolling/validation/etc. code in a major way, 
4376         so it seems to make sense to me. Probably isn't genuinely that
4377         much better, but...
4378
4379         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4380         notifies
4381
4382         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4383
4384 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4385
4386         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4387         Hide mouse pointer while rotation. Show it afterwards.
4388
4389 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4390
4391         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4392         windows in consideration when generating clip region.
4393
4394         * gdk/linux-fb/gdkfb.h:
4395         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4396
4397         * gdk/linux-fb/gdkprivate-fb.h:
4398         Add shape to GdkWindowFBDatat.
4399         exported gdk_fb_window_get_abs_shape().
4400         removed gdk_fb_draw_lines declaration.
4401
4402         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4403         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4404         send focus changes when there is a grabbed window.
4405         (gdk_window_get_pointer): Handle shaped windows.
4406         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4407         (gdk_fb_window_peek_shape): Returns the shape for a window,
4408         handles GDK_FB_USE_CHILD_SHAPE.
4409         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4410         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4411         (gdk_window_shape_combine_mask): Implement.
4412
4413         * gtk/gtkwindow-decorate.c:
4414         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4415         setting the shape of a window makes the window transparent.
4416
4417 2001-01-11  Havoc Pennington  <hp@redhat.com>
4418
4419         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4420
4421 2001-01-10  Havoc Pennington  <hp@redhat.com>
4422
4423         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4424         add this function, bug 40251
4425
4426         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4427         of type macro   
4428
4429 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4430
4431         * acconfig.h:
4432         Added ENABLE_SHADOW_FB
4433
4434         * configure.in:
4435         Added --disable-shadowfb
4436
4437         * gdk/linux-fb/gdkcursor-fb.c:
4438         Update shadowfb when updating cursor
4439
4440         * gdk/linux-fb/gdkdrawable-fb2.c:
4441         Added wrappers for shadowfb that calls  the normal drawable
4442         methods, but calls gdk_shadow_fb_update(bounding box) when
4443         GdkWindows are drawed to.
4444         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4445         which also returns the bounding box.
4446
4447         * gdk/linux-fb/gdkfb.h:
4448         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4449
4450         * gdk/linux-fb/gdkgeometry-fb.c:
4451         Update shadowfb when scrolling window.
4452
4453         * gdk/linux-fb/gdkglobals-fb.c:
4454         Add _gdk_fb_screen_angle.
4455         
4456         * gdk/linux-fb/gdkkeyboard-fb.c:
4457         Test code for screen rotation. Shift-F2 in the xlate driver
4458         rotates the screen.
4459
4460         * gdk/linux-fb/gdkmain-fb.c:
4461         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4462
4463         * gdk/linux-fb/gdkmouse-fb.c:
4464         Use fb_width/height instead of modeinfo.xres/yres.
4465
4466         * gdk/linux-fb/gdkprivate-fb.h:
4467         Added fb_men, fb_width, fb_height & fb_stride. When using
4468         shadow fb these can differ from the framebuffer stuff.
4469         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4470         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4471         _gdk_fb_screen_angle. Removed CM, RP.
4472
4473         * gdk/linux-fb/gdkrender-fb.c:
4474         Added code for shadowfb handling and screen rotation using
4475         shadowfb.
4476
4477         * gdk/linux-fb/gdkwindow-fb.c:
4478         Use fb_mem, fb_stride, fb_width, fb_height.
4479         Added recompute_rowstride to reset the rowstride of all windows.
4480         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4481         window abs positions and window rowstrides. Usefull when the
4482         rotation has changed.
4483
4484 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4485
4486         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4487
4488 2001-01-10  Havoc Pennington  <hp@redhat.com>
4489
4490         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4491         where sibling == iter
4492         (gtk_tree_store_insert_after): handle sibling == iter
4493         (gtk_tree_store_prepend): remove stamp checks
4494         (gtk_tree_store_insert_before): ditto
4495         (gtk_tree_store_append): ditto
4496         (gtk_tree_store_get_path): ditto
4497         (gtk_tree_store_get_value): ditto
4498         (gtk_tree_store_iter_has_child): ditto
4499         (gtk_tree_store_iter_n_children): ditto
4500         (gtk_tree_store_iter_nth_child): ditto
4501         (gtk_tree_store_insert_after): ditto
4502         (gtk_tree_store_is_ancestor): ditto
4503         (gtk_tree_store_iter_depth): ditto
4504         (gtk_tree_store_insert_before): assert that sibling's parent is
4505         the same as the passed-in parent
4506         (gtk_tree_store_insert_after): assert that sibling's parent is
4507         the same as the passed-in parent
4508
4509         
4510         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4511         function to get the first iterator in a model
4512         
4513         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4514         conventionally the "root" in this sense is just NULL afaict.
4515
4516         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4517         where sibling == iter
4518         (gtk_list_store_insert_after): handle case where sibling == iter
4519
4520         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4521         automated tests for ListStore, TreeStore
4522
4523         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4524         (gtk_list_store_insert): update tail pointer, and fix it to work
4525         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4526         (gtk_list_store_append): use tail to be faster
4527         (gtk_list_store_prepend): fix it, update tail pointer
4528         (gtk_list_store_insert_after): fix it, update tail pointer
4529
4530         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4531         the list
4532
4533 2001-01-09  Havoc Pennington  <hp@redhat.com>
4534
4535         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4536         is NULL due to a pending resize
4537
4538         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4539         column width to values less than 1
4540
4541         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4542         width to be between min/max width, and still set the width 
4543         even if autosize is turned on, so the tree view can use this 
4544         function in order to autosize.
4545         (gtk_tree_view_column_init): set initial width to 1 not 0
4546
4547         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4548         setter function to modify column width, so we get notification
4549         (gtk_tree_view_insert_iter_height): ditto
4550         (gtk_tree_view_calc_size): ditto
4551         (gtk_tree_view_check_dirty): ditto
4552
4553         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4554         properties to change all the interesting attributes of the tree
4555         view column.
4556         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4557         (gtk_tree_view_column_get_clickable): add
4558         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4559         attributes; assume a cell renderer with equivalent object
4560         properties has been swapped in. Do g_object_notify().
4561         (gtk_tree_view_column_set_visible): g_object_notify
4562         (gtk_tree_view_column_get_sizing): rename from get_col_type
4563         (gtk_tree_view_column_set_sizing): g_object_notify
4564         (gtk_tree_view_column_set_width): add g_object_notify
4565         (gtk_tree_view_column_set_min_width): ditto
4566         (gtk_tree_view_column_set_max_width): ditto
4567         (gtk_tree_view_column_set_title): ditto
4568         (gtk_tree_view_column_set_clickable): ditto
4569         (gtk_tree_view_column_set_widget): ditto
4570         (gtk_tree_view_column_set_justification): ditto
4571
4572 2001-01-09  Havoc Pennington  <hp@redhat.com>
4573
4574         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4575         there are no rows in the model
4576
4577         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4578         NULL, then return the start of the list
4579
4580         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4581         if we can't get any rows from an empty model 
4582
4583         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4584         extraneous * after function pointer typedef usage
4585
4586         * Makefile.am: don't specify full path to cp and rm
4587
4588         * gtk/gtkcellrenderertextpixbuf.c
4589         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4590         NULL before dereferencing, fixes a segfault that happened from
4591         time to time
4592
4593         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4594         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4595         and reindent the function
4596         (gtk_cell_renderer_pixbuf_get_size): indentation
4597
4598         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4599         we quit it
4600         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4601         (gtk_dialog_set_default_response): New function, to set default
4602         button
4603         (gtk_dialog_set_response_sensitive): New function, to set 
4604         sensitivity of buttons
4605
4606         * gtk/gtkcellrendererpixbuf.c
4607         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4608         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4609
4610         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4611         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4612         also boxed types.
4613         (_gtk_tree_data_list_value_to_node): ditto
4614
4615         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4616         --gtk-debug=tree
4617
4618         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4619
4620         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4621
4622 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4623
4624         * gdk/win32/gdkevents-win32.c: Implement better mouse
4625         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4626         (find_window_for_pointer_event): New function.
4627         (gdk_event_translate): Use it when handling mouse events.
4628
4629 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4630
4631         * configure.in:
4632         Added --with-included-loaders option
4633
4634         * gdk-pixbuf/Makefile.am:
4635         * gdk-pixbuf/gdk-pixbuf-io.c:
4636         Add support for including selected gdk-pixbuf loaders only.
4637
4638         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4639         gtk_window_set_has_frame):
4640         Added inline documentation.
4641
4642         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4643         * docs/reference/gdk/tmpl/windows.sgml:
4644         Added inline documentation.
4645
4646 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4647
4648         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4649         realizing buttons that have already been realized.
4650
4651 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4652
4653         * tests/testtreeview.c (main): Show menu items before adding to
4654         option menu.
4655
4656         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4657         around if we kill them.
4658
4659         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4660         Return if we pass in a NULL model.
4661
4662 2001-01-08  Havoc Pennington  <hp@redhat.com>
4663
4664         * tests/testtreeview.c: hack on this some
4665
4666         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4667         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4668         list
4669         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4670
4671         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4672         functions
4673
4674 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4675
4676         * gtk/gtkwindow-decorate.[hc]:
4677         * gtk/Makefile.am:
4678         New files. Contains an implementation of a minimal WM for
4679         linux-fb.
4680
4681         * gtk/gtkwindow.h:
4682         Add the possibility for GtkWindows to specify a frame. This
4683         is used for the window decoration code, but could concievably
4684         be used for X programs too (xmms style windows).
4685         GtkWindow->frame is the toplevel window if the window is framed.
4686         The signal frame_event gets all events that are targeted to
4687         GtkWindow->frame.
4688         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4689         
4690         * gtk/gtkwindow.c:
4691         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4692         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4693
4694 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4695
4696         * docs/README.linux-fb:
4697         Correct filename ~/.pangoft2_aliases
4698
4699         * gdk/gdkwindow.h:
4700         Added new function gdk_window_get_decorations.
4701
4702         * gdk/linux-fb/gdkfb.h:
4703         Removed _gdk_window_get_decorations declaration.
4704         Renamed _gdk_window_set_child_handler to
4705         gdk_fb_window_set_child_handler.
4706
4707         * gdk/linux-fb/gdkwindow-fb.c:
4708         Renamed _gdk_window_set_child_handler to
4709         gdk_fb_window_set_child_handler.
4710
4711         * gdk/x11/gdkwindow-x11.c:
4712         New function gdk_window_get_mwm_hints().
4713         Implemented gdk_window_get_decorations.
4714
4715         * docs/reference/gdk/tmpl/windows.sgml:
4716         * docs/reference/gdk/gdk-sections.txt:
4717         Added gdk_window_get_decorations docs.
4718         
4719 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4720
4721         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4722         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4723         gdk_fb_window_send_crossing_events):
4724         Possibly send focus events when the mouse moves from one
4725         window to another.
4726
4727 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4728
4729         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4730         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4731         to match current API.
4732
4733         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4734         environment variable is set, don't call g_error when on a
4735         palettized (PseudoColor) display. Some people want to use GTK+ 
4736         in 256-colour mode even though works only partially.
4737
4738         * gdk/gdk.def
4739         * gtk/gtk.def
4740         * gtk/makefile.mingw.in: Update.
4741
4742 2001-01-05  Havoc Pennington  <hp@redhat.com>
4743
4744         * tests/testtreeview.c: hack on this a bit
4745
4746         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4747         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4748
4749         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4750         was spelled incorrectly
4751         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4752
4753         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4754         from gtk_tree_view_set_headers_active   
4755
4756         * gtk/gtktexttag.c:
4757         (gtk_text_tag_get_property): handle PROP_DIRECTION
4758         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4759         properties, bug 40235
4760
4761         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4762         forward_to_line_end
4763
4764 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4765
4766         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4767         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4768         for unicode,locale,filename conversion functions.
4769
4770 2001-01-05  Havoc Pennington  <hp@redhat.com>
4771
4772         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4773         broken if called on the first position in the buffer.
4774
4775         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4776         forward_to_delimiters to be called only if we aren't already at
4777         the delimiters.
4778
4779 2001-01-05  Havoc Pennington  <hp@redhat.com>
4780
4781         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4782
4783 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4784
4785         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4786         colormap in here. Sync from X port.
4787         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4788         Sync from X port.
4789         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4790         This happens now and then, and i don't think it is a bug.
4791         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4792         != endpoint.
4793         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4794         GDK_LINE_SOLID.
4795
4796         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4797         some of the fields filled in at least.
4798
4799         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4800         miLineArcD is no more, remove it from the function definition.
4801
4802 2001-01-04  Havoc Pennington  <hp@redhat.com>
4803
4804         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4805         this
4806
4807         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4808         user_data instead of tree_node
4809
4810         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4811         TREE_VIEW_COLUMN_SIZE
4812
4813         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4814         "size" field to "width" finishes bug 40061
4815
4816         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4817         for bitfields, bug 40268
4818
4819 2001-01-04  Havoc Pennington  <hp@redhat.com>
4820
4821         Rename some stuff:
4822         
4823         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4824
4825         s/GtkModelSimple/GtkTreeModelSimple/g;
4826         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4827         s/gtk_model_simple/gtk_tree_model_simple/g;
4828         s/gtkmodelsimple/gtktreemodelsimple/g;
4829
4830         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4831
4832         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4833         s/column_set_col_type/column_set_sizing/g;
4834
4835         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4836         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4837
4838         s/GtkCellRendererType/GtkCellRendererState/g;
4839         
4840         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4841         (gtk_cell_renderer_toggle_class_init): change "state" property to
4842         "active", to match GtkToggleButton
4843         (gtk_cell_renderer_toggle_get_active): new function, bug
4844         40269
4845         (gtk_cell_renderer_toggle_set_active): new function
4846         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4847         state through gtk_cell_renderer_set_active
4848
4849 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4850
4851         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4852         temporarily until they work again.  Brought up to date with
4853         changes in the model.
4854         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4855         model.
4856
4857 2001-01-04  Havoc Pennington  <hp@redhat.com>
4858
4859         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4860         equal to the line length, then position iterator before paragraph 
4861         separators. Fixes crash reported by Mikael Hermansson when
4862         pressing left arrow from the start of a line.   
4863
4864         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4865         about byte indexes off the end
4866         (iter_set_from_char_offset): add g_error about char offsets
4867         off the end
4868
4869 2001-01-03  Havoc Pennington  <hp@redhat.com>
4870
4871         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4872
4873         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4874         of private functions; remove inclusion of private headers.
4875
4876         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4877         function, so we don't need private functions in gtktextdisplay.c
4878
4879         * gtk/gtktextiterprivate.h: underscore-ification
4880
4881         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4882         to instead say "only useful to implement widgets"
4883
4884         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4885         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4886         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4887
4888         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4889         This function was completely broken
4890
4891         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4892
4893         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4894
4895         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4896
4897         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4898
4899         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4900
4901         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4902
4903         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4904         gtk_paint_layout
4905
4906         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4907         gtk_paint_layout
4908
4909         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4910         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4911         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4912         which were not implemented.     
4913
4914         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4915         insert_pixbuf signal. Rename delete_text to delete_range since it
4916         also deletes pixbufs and child anchors. This almost closes bug
4917         40245 (still need to deal with child anchors)
4918
4919         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4920         insert_pixbuf, change signal names as appropriate, change types of
4921         signals taking marks/tags to have the specific type, not just
4922         G_TYPE_OBJECT
4923         
4924         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4925         closes bug 40051
4926
4927         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4928         unnecessary remove_contents() call
4929         (gtk_option_menu_class_init): add a "changed" signal, closes
4930         bug 40039
4931         (gtk_option_menu_update_contents): emit "changed" if the 
4932         active menu item changes
4933
4934         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4935         cast to GtkObject, reported by Jonas Borgstrom
4936         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4937         we can't do stuff with side effects in finalize. Instead, spew a
4938         warning if the loader isn't closed.
4939
4940         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4941         colormap in here, non-X ports probably need to sync to this change
4942
4943         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4944         assertion that colormap != NULL, you can set the colormap to NULL
4945         if you like.
4946         
4947         * Makefile.am: remove gtk-config-2.0
4948
4949         * configure.in: Use pkg-config to locate GLib. Remove
4950         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4951         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4952         Use pkg-config to locate Pango. Output correct Pango libs to
4953         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4954
4955         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4956         files
4957         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4958         X11 pc files
4959
4960         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4961         unref from here
4962
4963 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4964
4965         * configure.in:
4966         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4967
4968 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4969
4970         * gtk/gtktextlayout.c
4971         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4972         variable when moving back onto a single line.
4973
4974 2001-01-01  Havoc Pennington  <hp@redhat.com>
4975
4976         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4977
4978         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4979
4980         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4981         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4982
4983 2001-01-01  Havoc Pennington  <hp@redhat.com>
4984
4985         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4986
4987         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4988         GtkTextAttributes
4989
4990         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4991         #40246
4992         (gtk_text_attributes_copy_values): rename from 
4993         gtk_text_attributes_copy
4994         (gtk_text_attributes_copy): a more standard GTK copy function, 
4995         which returns a new object
4996
4997 2001-01-01  Havoc Pennington  <hp@redhat.com>
4998
4999         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
5000         
5001         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
5002         don't fill in tree_view->priv->selection, kind of an unexpected
5003         side effect
5004
5005         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
5006         gtkintl.h
5007         
5008         * gtk/gtkcellrenderer.c: Remove definition of _ and include
5009         gtkintl.h
5010         (gtk_cell_renderer_get_property): remove calls to g_value_init
5011
5012         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
5013         gtkintl.h
5014
5015         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
5016         and include gtkintl.h
5017         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
5018         property names
5019
5020         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
5021         GtkTreeSelection
5022         (_gtk_tree_selection_new_from_with_view): rename, return
5023         GtkTreeSelection
5024         (_gtk_tree_selection_set_tree_view): rename with uscore
5025         (gtk_tree_selection_get_selected): fill in the "model" out param
5026         first, so it gets filled in even if we return at the top of the 
5027         function
5028         (gtk_tree_selection_real_select_all): add a comment and an else{}
5029         to clarify this a bit
5030         (gtk_tree_selection_real_unselect_all): add the same else{}
5031
5032         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
5033         set_tree_view to have underscore prefixes, move them to the
5034         private header, fix return type of new_with_tree_view
5035         (struct _GtkTreeSelection): mark struct
5036         fields private  
5037
5038         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
5039         GtkTreeModelFlags, not a guint
5040         (gtk_tree_path_prev): return gboolean not gint
5041         (gtk_tree_path_up): return gboolean not gint
5042
5043         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
5044         return GtkTreeModelFlags, not a guint
5045
5046         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
5047         that child model is non-null before unrefing it
5048         (g_value_int_compare_func): make this a qsort compare func, not 
5049         a boolean predicate
5050
5051         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
5052         (add -umn to the end), and mark it unimplemented
5053         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
5054         I don't see what it's for - doesn't the model always sort itself?
5055         (gtk_tree_model_sort_set_compare): this had the wrong signature
5056
5057         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
5058         Fix the docs to say that it destructively replaces existing
5059         attributes (previously said that it added attributes).
5060         (gtk_tree_view_column_set_visible): canonicalize bool before
5061         equality testing. Also, check for realization before
5062         hiding/showing the tree_column->window; if this window could exist
5063         before realization, then it's busted and needs fixing, we can't 
5064         create GDK resources pre-realization. Also, remove
5065         superfluous queue_resize(), since set_size() does that for us.
5066         (gtk_tree_view_column_set_col_type): check realization before 
5067         using tree_column->window
5068
5069         * gtk/gtktreedatalist.c: fix filename in copyright notice
5070
5071 2000-12-31  Havoc Pennington  <hp@pobox.com>
5072
5073         * gtk/gtktextview.c: Rearrange all the
5074         scroll-while-dragging-or-selecting code to be different, not
5075         necessarily better. ;-)
5076         (gtk_text_view_scroll_to_mark): Change this
5077         function to take within_margin as a fraction instead of a pixel
5078         value, and to take alignment arguments (indicating where to align 
5079         the mark inside the visible area)
5080         
5081         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5082         to GtkObject
5083
5084         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5085         behavior so that offsets past the end of the line are not 
5086         allowed, and an offset equal to the line length moves the iterator
5087         to the next line
5088         (gtk_text_iter_set_line_index): make parallel change
5089         (gtk_text_iter_get_bytes_in_line): add this function
5090         
5091         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5092         of byte indexes off the end of the line; byte index at the end of
5093         the line now returns FALSE and doesn't fill in the requested
5094         values, byte index past the end of the line is an error.  Also,
5095         don't allow -1 offset anymore, since its meaning is unclear.
5096
5097         This change exposes some bug in visual cursor motion, where we
5098         end up with a huge invalid byte index; needs fixing. Symptom of 
5099         bug is a crash when you hit up arrow.
5100         
5101         (_gtk_text_line_char_locate): match the change to byte_locate
5102
5103         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5104         from start of line properly. fixes bug reported by Mikael
5105         Hermansson where backspace would delete all text before the
5106         cursor.
5107
5108 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5109
5110         * gdk/win32/gdkwindow-win32.c
5111         (gdk_window_impl_win32_get_visible_region): New function, as in
5112         the X11 backend.
5113         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5114         instead of duplicating the same code here.
5115
5116         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5117         GDK_COLORMAP macro.
5118
5119         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5120         destroy function.
5121         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5122         access that.
5123
5124         * gtk/gtk.def: Update.
5125
5126         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5127
5128 2000-12-30  Havoc Pennington  <hp@pobox.com>
5129
5130         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5131         colormap on input only windows, to avoid special cases all over
5132         the code for these windows.
5133
5134 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5135
5136         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5137         we are on a palettized display ("PseudoColor" in X11), as the code
5138         for that doesn't work anyway, and never has.
5139
5140 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5141
5142         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5143         Don't use isprint() for chars > 255.
5144
5145 2000-12-21  Havoc Pennington  <hp@redhat.com>
5146
5147         * tests/testtreeview.c: more work
5148
5149 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5150
5151         * docs/README.linux-fb:
5152         Update the docs to the new pangoft2 way.
5153
5154 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5155
5156         * configure.in:
5157         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5158         pango version.
5159         Remove modules/linux-fb/Makefile.
5160
5161         * gdk/linux-fb/gdkdrawable-fb2.c:
5162         Render glyphs using freetype.
5163
5164         * gdk/linux-fb/gdkfb.h:
5165         Add new fb-specific functions needed for managing windows.
5166
5167         * gdk/linux-fb/gdkmain-fb.c:
5168         Remove gdk_font_init/fini() calls.
5169
5170         * gdk/linux-fb/gdkpango-fb.c:
5171         Remove old implementation. Use pangoft2 instead.
5172
5173         * gdk/linux-fb/gdkprivate-fb.h:
5174         Remove PangoFBFont and related stuff.
5175
5176         * gdk/linux-fb/gdkwindow-fb.c:
5177         Implement drawable->get_visible_region.
5178         Implement support for _gdk_window_set_child_handler () and
5179         _gdk_window_get_decorations().
5180
5181         * modules/Makefile.am:
5182         Remove linux-fb subdir.
5183
5184         * modules/linux-fb/*:
5185         Removed all.
5186         
5187 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5188
5189         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5190         calls, as they are no longer needed.
5191
5192         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5193         
5194         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5195         figure out how to emit a signal on an interface.
5196
5197 2000-12-20  Havoc Pennington  <hp@redhat.com>
5198
5199         * tests: new directory to contain tests, gtk/test* should move
5200         here sometime (with appropriate on-cvs-server hackery)
5201
5202         * tests/testtreeview.c, tests/Makefile.am: a test
5203         
5204         * configure.in (AC_OUTPUT): add tests/Makefile
5205
5206         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5207         and "invisible_set" which were missing
5208
5209         * gtk/gtkrbtree.h: some cheesy indentation fix
5210         
5211 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5212
5213         * gtk/gtkinvisible.c (gtk_invisible_realize):
5214         Attach the style to the window so that the style it is not
5215         leaked when unrealizing the window.
5216
5217 2000-12-18  Havoc Pennington  <hp@redhat.com>
5218
5219         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5220         begin/end user action where appropriate
5221         (gtk_text_view_commit_handler): add begin/end user action
5222
5223         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5224         bracket interactive operations with begin/end user action pair.
5225         
5226         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5227         "interactive" arg from insert_text and delete_text signals.
5228         Add begin_user_action, end_user_action signals
5229         (gtk_text_buffer_begin_user_action): 
5230         (gtk_text_buffer_end_user_action): New functions to delimit 
5231         a user-visible action
5232
5233         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5234         signals.
5235         
5236 2000-12-18  Havoc Pennington  <hp@redhat.com>
5237
5238         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5239         was pretty non-working.
5240
5241         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5242         by passing the length to g_utf8_validate().
5243
5244 2000-12-16  Havoc Pennington  <hp@pobox.com>
5245
5246         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5247         Port to GObject, can go back in gdk-pixbuf after setting up 
5248         a gdk-pixbuf-marshal.h header over there.
5249
5250         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5251         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5252         args
5253         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5254         set
5255         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5256         here, do it when we create the buttons later
5257         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5258         (gtk_tree_view_map): paranoia checks that column->button is shown 
5259         and unmapped
5260         (gtk_tree_view_size_request): only request visible children.
5261         Move header size calculation in here, for cleanliness, and 
5262         to maintain invariants for child widgets if we eventually 
5263         let users set different children inside the buttons
5264         (gtk_tree_view_map_buttons): factor out code to map buttons,
5265         since it was being called several times
5266         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5267         windows instead of just moving them; their height may change 
5268         if we allow random widgets in there, or the theme changes.
5269         (gtk_tree_view_size_allocate): move button size allocation 
5270         above emitting the scroll signals, to ensure a sane state when we
5271         hit user code
5272         (gtk_tree_view_button_release): remove queue_resize after
5273         tree_view_set_size(), set_size() will handle any resize queuing
5274         that's needed
5275         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5276         draw_focus goo
5277         (gtk_tree_view_focus): use gtk_get_current_event() and
5278         gdk_event_get_state()
5279         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5280         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5281         semicolon
5282         (gtk_tree_view_create_button): show the button here
5283         (gtk_tree_view_button_clicked): actually emit the clicked signal
5284         on the column
5285         (_gtk_tree_view_set_size): return right away if the size is
5286         unchanged, as a cheesy optimization
5287         (gtk_tree_view_setup_model): rename set_model_realized to 
5288         setup_model to match the flag that indicates whether we've 
5289         called it
5290         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5291         exist, because set_scroll_adjustment does that and it shouldn't
5292         matter what order you call these in
5293         (gtk_tree_view_get_vadjustment): ditto
5294         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5295         for paranoia
5296         (gtk_tree_view_set_headers_visible): call
5297         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5298         (gtk_tree_view_append_column): clarify whether the return value
5299         is the count of columns before or after, and do the increment 
5300         separately from the return statement so you can tell from the code.
5301         (gtk_tree_view_remove_column): ditto
5302         (gtk_tree_view_insert_column): ditto
5303         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5304         outside the existing range, the docs say that outside-range
5305         columns are allowed, so we handle them as documented. (Presumably
5306         this allows a nice loop with column != NULL as test.)
5307         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5308         mean (left/right/center etc.).
5309         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5310         (gtk_tree_view_expand_row): add docs
5311         (gtk_tree_view_collapse_row): add docs
5312
5313         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5314         function to emit the clicked signal on a column
5315         
5316         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5317         state of an event
5318         (gdk_event_get_time): don't treat GDK_SCROLL 
5319         as a button event, remove default case from switch so gcc 
5320         will whine if we don't explicitly handle all event types
5321
5322         * gtk/gtktreeselection.h: added some FIXME 
5323         
5324         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5325         "columns" to "n_columns" and "column" to "columns" for clarity
5326
5327 2000-12-16  Havoc Pennington  <hp@pobox.com>
5328         
5329         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5330         stuff. This should make e.g. the delete key work again in the
5331         text widget...
5332         (gtk_text_iter_forward_cursor_positions): handle negative count
5333         (gtk_text_iter_backward_cursor_positions): handle negative count
5334         (gtk_text_iter_forward_word_ends): handle negative count
5335         (gtk_text_iter_backward_word_starts): handle negative count
5336
5337         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5338         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5339         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5340         GObject. No doubt will cause breakage.
5341
5342         * demos/gtk-demo/textview.c: remove hacks around
5343         non-GObject-ification of the text objects
5344
5345         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5346         the text tag
5347         
5348 2000-12-14  Havoc Pennington  <hp@pobox.com>
5349
5350         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5351         that we have Xrender
5352
5353 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5354
5355         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5356         Add two virtualized functions gdk_drawable_get_clip_region - to
5357         get the clip region when drawing.
5358         
5359         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5360         use invalidate_region.
5361
5362         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5363         region.
5364
5365         * acconfig.h configure.in: Check for Xft. For now, assume
5366         that if Xft is found, Pango was compiled with Xft support
5367         as well.
5368
5369         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5370         gdk_colormap_query_color().
5371         
5372         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5373         with Xft if appropriate.
5374
5375         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5376         a pangoxft context if we have XFT and the environment
5377         variable GD_USE_XFT is set.
5378         
5379         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5380         and also possibly an XftDraw structure.
5381
5382         * gtk/gtkfontsel.c: Handle the case where the font from the
5383         style doesn't match any of the fonts a bit better.
5384         
5385         * gtk/testgtk.c: Add tabs between directional segments for
5386         hebrew/arabic test. (Not really necessary, just a little
5387         prettier.)
5388
5389 2000-12-14  Havoc Pennington  <hp@redhat.com>
5390
5391         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5392         reading a file
5393
5394 2000-12-14  Havoc Pennington  <hp@redhat.com>
5395
5396         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5397         unused call to get_last_line()
5398
5399         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5400         here until boxed is working (and maybe after that - we should
5401         really not gratuitously break old code)
5402
5403         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5404         specific types for font_desc and tabs args, move them to
5405         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5406         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5407
5408         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5409         use GTK_TYPE_POINTER for signal signatures as a hack-around
5410
5411         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5412         PangoTabArray
5413
5414         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5415         make static
5416         (line_display_index_to_iter): make static
5417
5418         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5419         to marshal a string not a boxed
5420
5421         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5422
5423         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5424         since the UTF-8 isn't validated yet
5425
5426         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5427         lines to end in '\n'
5428         
5429         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5430         forward_to_delimiters, and grapheme boundaries
5431         (gtk_text_view_delete_from_cursor): properly handle non-newline
5432         delimiters, and grapheme boundaries
5433
5434         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5435         to gtk_text_iter_forward_to_delimiters, and make it work properly
5436         if empty lines end with a character other than '\n'
5437
5438         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5439         position
5440
5441 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5442
5443         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5444
5445         * gtk/gtk.def
5446         * gdk/gdk.def: Update.
5447
5448         * gdk/win32/gdkmain-win32.c
5449         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5450         gdkmain-win32.c here.
5451
5452         * gdk/win32/makefile.mingw.in (all): No need to make
5453         gdk-win32res.o here, the makefile one step up will call us to make
5454         it.
5455
5456         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5457         gdkkeys-win32.
5458
5459         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5460
5461         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5462         call to g_source_add().
5463
5464         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5465         leak. Thanks to Andreas Kemnade.
5466
5467 2000-12-13  Havoc Pennington  <hp@pobox.com>
5468
5469         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5470
5471         * gtk/gtktext*.[hc]: update accordingly
5472         
5473 2000-12-13  Havoc Pennington  <hp@pobox.com>
5474
5475         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5476         header file
5477
5478         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5479
5480 2000-12-13  Alex Larsson  <alexl@redhat.com>
5481
5482         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5483         Add support for ps2 intellimouse.
5484
5485         * gdkkeyboard-fb.c:
5486         Move shift-F1 repaint handling to xlate handler only.
5487         
5488         * docs/README.linux-fb:
5489         Add imps2 to docs.
5490         Document the new refresh keys.
5491         
5492 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5493
5494         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5495
5496         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5497         ::position and ::padding.
5498
5499         * gtk/gtkcontainer.c: make ::border_width an INT property.
5500
5501         * gtk/gtkpacker.c: make ::position an INT property.
5502
5503         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5504         guard against NULL h/v scrollbars, since this is used at construction
5505         time.
5506
5507         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5508         internal gtk_clist_constructor().
5509
5510         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5511         gtk_ctree_constructor().
5512
5513         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5514         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5515
5516         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5517         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5518
5519         * gtk/gtkwidget.[hc]:
5520         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5521         and gtk_widget_get().
5522         (gtk_widget_new): use g_object_new_valist().
5523         (gtk_widget_set): use g_object_set_valist().
5524
5525         * gtk/gtkobject.[hc]:
5526         removed gtk_object_arg_get_info(), gtk_object_getv(),
5527         gtk_object_query_args(), gtk_object_newv(),
5528         gtk_object_class_add_signals(),
5529         gtk_object_class_user_signal_new(),
5530         gtk_object_class_user_signal_newv(),
5531         gtk_object_arg_set(), gtk_object_arg_get(),
5532         gtk_object_args_collect(),
5533         gtk_object_default_construct(),
5534         gtk_object_constructed(),
5535         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5536         removed nsignals, signals and n_args members from GtkObjectClass.
5537         (gtk_object_new): use g_object_new_valist().
5538         (gtk_object_set): use g_object_set_valist().
5539         (gtk_object_get): use g_object_get_valist().
5540         
5541         * gtk/gtkcompat.h: define gtk_object_default_construct().
5542         
5543         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5544         g_object_new().
5545
5546         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5547         fucntions, cleaned up method assignments (make sure your structures
5548         are setup properly before calling out). removed all GTK_CONSTRUCTED
5549         hacks ;)
5550
5551 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5552
5553         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5554         off-by-one error in checks. (Dave Lambert)
5555
5556 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5557
5558         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5559         Don't free gdk_fb_keyboard twice.
5560
5561 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5562
5563         * gtk/testgtk.c:
5564         (create_tooltips): 
5565         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5566         use GObject swapped_signal:: properties instead.
5567
5568         * gtk/gtkcellrenderertoggle.c: 
5569         * gtk/gtkcellrenderertextpixbuf.c: 
5570         * gtk/gtkcellrenderertext.c: 
5571         * gtk/gtkcellrendererpixbuf.c: 
5572         * gtk/gtkcellrenderer.c:
5573         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5574         missing warnings for invalid property ids, install properties
5575         with g_object_class_install_property() now.
5576         
5577         * gtk/gtksignal.c:
5578         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5579         
5580 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5581         
5582         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5583         to determine if a window is the focus widget within
5584         its toplevel.
5585
5586         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5587         to be boolean.
5588
5589         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5590         of the case where the container CAN_FOCUS to here instead
5591         of having it in each individual move-the-focus place.
5592
5593         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5594         focusing to be geometric in a much more obvious sense. Arrowing
5595         around is still non-intuitive because it isn't perfect and
5596         because entries, etc, grab the arrow keys, but it at least
5597         usually will do what you expect now.
5598         
5599         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5600         file.
5601
5602         * gtk/gtknotebook.c: Change tabs to be a single item in
5603         the focus chain. Make movement of focus on tabs with arrow
5604         keys wrap around.
5605         
5606         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5607         CHECK_FIND_CHILD macro to give informative error messages
5608         instead of silent returns.
5609
5610         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5611         flag since we handle GdkReturn on the tabs.
5612
5613         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5614         windows rather than sending expose events directly.
5615
5616         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5617         definition for GtkNotebookPage into .c file, since it is private.
5618
5619         * gtk/testgtk.c (create_notebook): Add option for 
5620         testing borderless notebook.
5621
5622         * gtk/testgtk.c (page_switch): Removed egregious poking
5623         around in GTK+ internals.
5624
5625         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5626
5627         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5628         properly through gtk_clist_focus. Make the title headers a
5629         single item in the tab-focus chain, and make left-right wrap
5630         around.
5631
5632         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5633         focus method so that wrapping around works properly.
5634
5635         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5636         that is handled for the widget now. 
5637
5638 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5639
5640         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5641         widgets as TOPLEVEL.
5642
5643         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5644         TOPLEVEL widgets are containers.
5645
5646         * gtk/gtkinvisible.h: Remove useless include.
5647
5648 2000-12-11  Havoc Pennington  <hp@redhat.com>
5649
5650         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5651         Handle chopping off \r\n and 0x2029 in addition to \n before
5652         passing to PangoLayout
5653
5654         * gtk/gtkimcontextsimple.c
5655         (gtk_im_context_simple_get_preedit_string): 
5656         return an empty string if no match is pending
5657
5658         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5659         assertion that the returned preedit string was sane
5660
5661         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5662         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5663         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5664
5665 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5666
5667         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5668         Fix up finalizer to chain to its parent.
5669
5670 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5671
5672         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5673         Clearified the difference between the keyboard types. Wrote a note
5674         about the magic sysrq key to get out of raw mode.
5675
5676 2000-12-09  James Henstridge  <james@daa.com.au>
5677
5678         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5679         member to hold masks for detecting the start of a protocol packet.
5680         (mouse_devs): add packet start masks for ps2 and ms device types.
5681         Left the mask for fidmour blank, as I have no idea what it should
5682         be.
5683         (handle_mouse_io): skip bytes until we get to the start of a
5684         packet.  My Logitech mouse seems to be passing an extra NULL pad
5685         byte, and GPM does a similar thing here.
5686         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5687         this is the ms mouse driver.
5688         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5689         completely broken except for button1.  It was checking the wrong
5690         bit in the packet for the status of the right mouse button, and
5691         wrongly assuming right == button2 rather than 3.  I fixed that and
5692         also added support for middle button (button2).
5693
5694 2000-12-08  Havoc Pennington  <hp@redhat.com>
5695
5696         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5697         that cause a segfault on text insertion
5698
5699         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5700         warning
5701
5702         * gtk/gtktextiter.c (test_log_attrs): use
5703         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5704
5705         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5706         Get log attrs for a line, using a cache stored on the buffer
5707         
5708         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5709         reported by Jeff Franks
5710
5711 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5712
5713         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5714         /dev/ttyS0 -> /dev/mouse
5715
5716 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5717
5718         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5719         Added dummy gdk_fontset_load.
5720
5721 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5722
5723         * docs/README.linux-fb:
5724         * docs/Makefile.am:
5725         Initial GtkFB docs.
5726         
5727         * gdk/linux-fb/Makefile.am:
5728         Define GDK_DATA_PREFIX.
5729
5730         * gdk/linux-fb/gdkmain-fb.c:
5731         Fix typo.
5732         Change default display to /dev/fb0.
5733
5734         * gdk/linux-fb/gdkpango-fb.c:
5735         Add $(prefix)/share/fonts/ to font path.
5736         
5737 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5738
5739         * gdk/linux-fb/gdkkeyboard-fb.c:
5740         New file containing the abstracted keyboard driver. Most code
5741         taken from gdkinput-ps2.c
5742
5743         * gdk/linux-fb/gdkinput-ps2.c:
5744         Removed file.
5745         
5746         * gdk/linux-fb/Makefile.am:
5747         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5748
5749         * gdk/linux-fb/gdkcolor-fb.c:
5750         display->fb was renamed to display->fb_fd.
5751
5752         * gdk/linux-fb/gdkcursor-fb.c:
5753         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5754
5755         * gdk/linux-fb/gdkinput.c:
5756         Moved gdk_input_init here from gdkinput-ps2.c
5757
5758         * gdk/linux-fb/gdkmain-fb.c:
5759         display->fb was renamed to display->fb_fd.
5760         Now the tty and the console is opened here instead
5761         of in the keyboard driver. Also check GDK_VT to see what
5762         tty to open.
5763         Move gdk_beep () here from gdkinput-ps2.c
5764         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5765
5766         * gdk/linux-fb/gdkmouse-fb.c:
5767         Add header.
5768         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5769         Return correct keyboard modifiers.
5770         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5771
5772         * gdk/linux-fb/gdkprivate-fb.h:
5773         Add tty and vt info to display.
5774         Add orignal modeinfo storage to display
5775         Update global functions
5776
5777         * gdk/linux-fb/gdkwindow-fb.c:
5778         Added gdk_fb_window_find_focus().
5779         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5780
5781 2000-12-07  Havoc Pennington  <hp@pobox.com>
5782
5783         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5784         function, noticed by Alex
5785
5786 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5787
5788         * configure.in: Detect freetype properly
5789
5790         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5791         above.
5792
5793 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5794
5795         * gdk/linux-fb/Makefile.am:
5796         Add gdkmouse-fb.c
5797         
5798         * gdk/linux-fb/gdkmouse-fb.c:
5799         New file. Abstracted the mouse drivers a bit.
5800
5801         * gdk/linux-fb/gdkcursor-fb.c:
5802         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5803
5804         * gdk/linux-fb/gdkinput-ps2.c:
5805         Removed old mouse handling code. Moved cursor handling code
5806         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5807         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5808         gdk_mouse_get_info.
5809
5810         * gdk/linux-fb/gdkmain-fb.c:
5811         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5812
5813         * gdk/linux-fb/gdkprivate-fb.h:
5814         Removed public gdk_fb_find_common_ancestor, added and renamed
5815         functions for the new mouse handling code.
5816
5817         * gdk/linux-fb/gdkwindow-fb.c:
5818         Moved gdk_fb_window_send_crossing_events here. added global
5819         variable gdk_fb_window_containing_pointer. made
5820         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5821         renamed to gdk_mouse_get_info.
5822
5823 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5824
5825         * gdk/linux-fb/gdkevents-fb.c:
5826         Update to match latest gmain/gsource changes.
5827
5828         * gdk/linux-fb/gdkinput-ps2.c:
5829         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5830         it links. Will be implemented later.
5831
5832 2000-12-03  Havoc Pennington  <hp@pobox.com>
5833
5834         * gdk/Makefile.am: add gdkkeys.[hc]
5835
5836         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5837         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5838
5839         * acconfig.h, configure.in: add checks and command line options
5840         for XKB
5841
5842         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5843         
5844         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5845         and group in the key event
5846
5847         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5848         field with the low-level hardware key code, and a group
5849         field with the keyboard group
5850
5851         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5852         and declare a couple globals used for keymap handling
5853         
5854         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5855         hold down Shift-Control and type a hex number to get a Unicode 
5856         character corresponding to the hex number
5857         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5858         (return bytes not chars)
5859
5860 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5861
5862         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5863         to avoid waste on 64-bit platforms.
5864
5865 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5866
5867         * INSTALL: Fix link to PNG home, remove reference
5868         to fribidi.
5869
5870         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5871         
5872         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5873         tested.)
5874
5875         * gtk/gtkcheckmenuitem.c: Permanently turn on
5876         always_show_toggle.
5877
5878         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5879         be NULL. (Vladimir Klebanov, #26545)
5880
5881         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5882         some signed/unsigned comparison problems. (#6510,
5883         David Kaelbling)
5884
5885         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5886         return type to boolean (Oskar Liljeblad, #18648)
5887
5888 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5889
5890         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5891         Remove bogus colormap setting.
5892
5893 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5894
5895         * gdk/linux-fb/gdkcolor-fb.c:
5896         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5897
5898         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5899         Must set colormap.
5900         
5901 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5902
5903         * docs/tutorial/gtk-tut.sgml: DND updates
5904
5905 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5906
5907         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5908         Remove old debug g_warning().
5909         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5910         or an implementation, just pass the implementation to draw_drawable_2.
5911         
5912         * gdk/linux-fb/gdkprivate-fb.h:
5913         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5914
5915         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5916         clear and invalidate area when window is destroyed.
5917         (send_map_events): Remove old commented out code.
5918
5919 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5920
5921         * gdk/linux-fb/gdkpango-fb.c:
5922         Use italic instead of oblique in font aliases.
5923         
5924         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5925         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5926         other unsupported functions.
5927
5928 2000-12-04  Havoc Pennington  <hp@redhat.com>
5929
5930         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5931
5932         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5933
5934         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5935
5936         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5937         hack to avoid infinite loops (synthetic expose event) - 
5938         Owen has more appropriate fixes in a branch he'll check in later.
5939
5940         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5941         separator, CR, and CRLF as line ends
5942
5943         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5944         into lines using pango_find_paragraph_boundary(); other bits of
5945         the widget are still going to be broken if the boundary isn't '\n'
5946         though
5947
5948 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5949
5950         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5951         multiply.
5952
5953         * gdk/linux-fb/gdkpango-fb.c:
5954         Copied some 26.6 scaling macros from pango to clean up the rounding.
5955         (pango_fb_font_get_glyph_info): Correct sign on x value.
5956
5957         * gdk/linux-fb/gdkprivate-fb.h:
5958         Removed unreferenced external functions.
5959
5960         * modules/linux-fb/Makefile.am: Use ` instead of '.
5961
5962         * modules/linux-fb/basic.c:
5963         Remove dead code. In particular the dummy lang engine which broke all
5964         pango layouts in GtkFB. Don't include tables-big.i anymore.
5965
5966         * modules/linux-fb/tables-big.i:
5967         Upgrade to latest version from pango. Left for reference, basic_ranges
5968         moved to basic.c.
5969         
5970 2000-12-04  Havoc Pennington  <hp@redhat.com>
5971
5972         Fix bugs Alex found:
5973         
5974         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5975         to "draw"
5976
5977         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5978
5979         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5980
5981         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5982         implementation in here, apparently the expose() implementation was
5983         dead code.
5984
5985 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5986
5987         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5988         Return positive descent.
5989
5990 2000-12-02  Havoc Pennington  <hp@pobox.com>
5991
5992         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5993         method and signal
5994         
5995         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5996         calls gdk_window_process_updates() to push the exposes through
5997         (gtk_widget_class_init): No more draw signal, no
5998         gtk_widget_real_draw()  
5999         
6000         * gtk/gtkbin.c (gtk_bin_draw): remove
6001
6002         * gtk/gtkbox.c (gtk_box_draw): remove
6003
6004         * gtk/gtkbutton.c (gtk_button_draw): remove
6005
6006         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
6007
6008         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
6009
6010         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
6011
6012         * gtk/gtkclist.c (gtk_clist_draw): remove
6013
6014         * gtk/gtkentry.c (gtk_entry_draw): remove
6015
6016         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
6017
6018         * gtk/gtkfixed.c (gtk_fixed_draw): remove
6019
6020         * gtk/gtkframe.c (gtk_frame_draw): remove
6021
6022         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
6023
6024         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
6025
6026         * gtk/gtklayout.c (gtk_layout_draw): remove
6027
6028         * gtk/gtklist.c (gtk_list_draw): remove
6029
6030         * gtk/gtklistitem.c (gtk_list_item_draw): remove
6031
6032         * gtk/gtkmenu.c (gtk_menu_draw): remove
6033
6034         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
6035
6036         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
6037
6038         * gtk/gtknotebook.c (gtk_notebook_draw): remove
6039
6040         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
6041
6042         * gtk/gtkpacker.c (gtk_packer_draw): remove
6043
6044         * gtk/gtkrange.c (gtk_range_draw): remove
6045
6046         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
6047
6048         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
6049
6050         * gtk/gtktable.c (gtk_table_draw): remove
6051
6052         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
6053
6054         * gtk/gtktext.c (gtk_text_draw): remove
6055
6056         * gtk/gtktextview.c (gtk_text_view_draw): remove
6057
6058         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
6059
6060         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
6061
6062         * gtk/gtktree.c (gtk_tree_draw): remove
6063
6064         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
6065
6066         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6067
6068         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6069
6070         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6071
6072         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6073
6074         * gtk/gtkwindow.c (gtk_window_draw): remove
6075
6076 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6077
6078         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6079         a GtkToggleButton is both insensitive and active, it was being
6080         drawn by the GtkButton draw handler which doesn't check the
6081         state. Now it's calling gtk_toggle_button_paint instead.
6082         
6083 2000-12-01  Havoc Pennington  <hp@redhat.com>
6084
6085         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6086         dangling pointers to the appearance attributes from the 
6087         line display
6088
6089         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6090         width/height to mean "full width/height of drawable"
6091
6092         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6093         click to select word/line
6094         
6095         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6096         when getting log attrs. Get a slice, so that pixmaps and stuff
6097         are properly handled.
6098
6099         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6100         paste into the selection (replaces selection now, previously
6101         crashed or added to selection). Reveals longstanding btree bug -
6102         select multiple lines, middle-click on the selection, boom. This
6103         isn't related to my changes though.
6104
6105         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6106         PangoLogAttrs changes
6107         (gtk_entry_move_backward_word): ditto
6108
6109         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6110         functions return bool whether the iter moved onto a
6111         dereferenceable position.
6112  
6113         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6114         functions for motion in terms of display lines.
6115
6116         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6117         get the buffer a mark is inside
6118         
6119 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6120
6121         * gdk/linux-fb/Makefile.am:
6122         * modules/linux-fb/Makefile.am:
6123         Freetype 2 final uses freetype-config
6124
6125         * gdk/linux-fb/gdkpango-fb.c:
6126         Upgrade to use Freetype 2 final.
6127         More flexible support for font aliases, this also fixes a bug with
6128         GtkFontSelector, as the aliases must be visible in the font/family list,
6129         or GtkFontSelector reads uninitialized memory.
6130
6131 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6132
6133         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6134         XGetIMValues to properly terminate variable argument list, and do
6135         NULL return check for ic_values and xim_styles.
6136
6137         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6138         Restore preedit state after XmbResetIC().
6139         
6140         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6141         XvaCreateNestedList() should take XvaNestedList, but not
6142         XvaNestedList*.
6143
6144         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6145         preedit_draw_callback, preedit_caret_callback): Match
6146         "preedit-changed" signal name to "preedit_changed" to be
6147         consistent to the spec.
6148
6149         * gtk/gtkimcontextsimple.c (check_table):
6150         Match "preedit-changed" to "preedit_changed" to be consistent
6151         to the spec.
6152
6153 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6154
6155         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6156         gc->clip_region == NULL>
6157
6158 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6159
6160         Changes by Hans Breuer:
6161         
6162         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6163         Dont't use negative width and height as max_hints. This fixes
6164         Owen's recent testgtk changes for win32.
6165
6166         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6167         gdk_win32_hdc_release): These are exported and may be called with
6168         other drawable types than our GdkDrawableImplWin32 (?).
6169
6170         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6171         so always #define USE_BACKING_STORE.
6172
6173         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6174         of printf for debugging output.
6175
6176         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6177         
6178         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6179
6180         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6181         declaration.
6182
6183         * gtk/gtktexttypes.h: Ditto.
6184
6185         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6186         (GDK_VoidSymbol) also if in case of arg check failure.
6187
6188         * gtk/gtkimcontextsimple.c
6189         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6190         position to the pointer, but to the variable it points to.
6191
6192         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6193
6194         * gtk/gtk.def: Updates.
6195
6196 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6197
6198         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6199         GTK_TYPE_TREE_MODEL.
6200
6201 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6202
6203         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6204         Set the size of the font from the description.
6205         (gdk_text_width): Gross hack that calculates the width
6206         of text by text_length * size/2. This is necessary because
6207         GtkLabel does some ugly gtk_string_width call to calculate
6208         an good size.
6209         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6210
6211 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6212
6213         * docs/tutorial/gtk-tut.sgml: DND updates
6214
6215 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6216
6217         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6218         If you pass width or height == 0 to gdk_window_clear_area they
6219         should be calculated from the window size.
6220
6221 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6222
6223         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6224         a grab, but no grab-cursor, use the cursor from the grabbed
6225         window. (gdk_fb_window_send_crossing_events): Send normal
6226         enter/leave notifications if grab and owner_events == TRUE.
6227
6228 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6229
6230         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6231         Do implicit button grabs, even if the window doesn't
6232         want the event.
6233         (gdk_fb_window_send_crossing_events): If there is a
6234         grab, only the grabbed window gets normal enter/leave
6235         notifications. On ungrab go from grabbed window to current.
6236         Don't send any notification to b when propagating from c -> b.
6237         If setting a grab on window, don't set prev_window.
6238         (handle_mouse_input): Send enter/leave events to the window the
6239         mouse is over, not the grabbed one.
6240         
6241 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6242
6243         * gdk/gdkregion-generic.c: Zap warning.
6244         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6245         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6246
6247 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6248
6249         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6250         The cursor should be hidden if it is part of either the
6251         source or destination region. Not only if it is in both.
6252         (gdk_window_set_transient_for): Silence warnings.
6253
6254 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6255
6256         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6257         The default mode in X is Pie Arcs, therefore that is
6258         what Gtk+ uses.
6259
6260 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6261
6262         * gdk/linux-fb/gdkinput-ps2.c:
6263         Implement correct EnterNotify/LeaveNotify:
6264         (gdk_fb_window_send_crossing_events): New function that sends
6265         all GdkCrossingEvents from the last mouse-window to the specified
6266         destination.
6267         (gdk_fb_window_visibility_crossing): Removed function.
6268         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6269         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6270         instead of gdk_window_get_pointer() for better readability.
6271
6272         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6273         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6274
6275         * gdk/linux-fb/gdkprivate-fb.h:
6276         removed gdk_fb_window_visibility_crossing, added
6277         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6278
6279         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6280         New function that finds the least common ancestor of two windows.
6281         (gdk_window_show, gdk_window_hide):
6282         Use gdk_fb_window_send_crossing_events.
6283         (gdk_fb_window_move_resize): Send configure events to toplevel
6284         windows. Use gdk_fb_window_send_crossing_events.
6285
6286 2000-11-27  Havoc Pennington  <hp@redhat.com>
6287
6288         * gtk/gtkprivate.h (enum): Remove a trailing comma
6289
6290 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6291
6292         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6293         the "changed" callback of the adjustment.  We need to redraw the
6294         spin button's arrows when the adjustment's range changes.
6295         (adjustment_changed_cb): Draw the arrows.
6296         (gtk_spin_button_value_changed): Draw the arrows.
6297
6298 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6299
6300         * gdk/linux-fb/gdkselection-fb.c:
6301         Initial selection implementation.
6302
6303         * gtk/gtkselection.c:
6304         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6305         requestor in gtk_selection_request.
6306         
6307         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6308         Added gdk_selection_property atom.
6309
6310         * gdk/linux-fb/gdkprivate-fb.h:
6311         Export _gdk_selection_window_destroyed.
6312         Removed mask_off_x/y from GdkCursorPrivateFB.
6313         Removed hbearing, added top, left to PangoFBGlyphInfo.
6314
6315         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6316         Call _gdk_selection_window_destroyed
6317         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6318         the root window has been created.
6319         (static_dx_hack, static_dy_hack, compare_draw_rects,
6320         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6321         in region. They are already sorted. Instead just traverse them in
6322         reverse if draw_direction < 0.
6323         
6324         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6325         Double-clicks must be sent after the normal button_press.
6326         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6327         
6328         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6329         Pass _gdk_fb_screen_gc instead of NULL.
6330
6331         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6332         Initialize gdk_selection_property.
6333         (gdk_event_make): Remove unused code.
6334
6335         * gdk/linux-fb/gdkcursor-fb.c:
6336         Make the pixmap for the cursor the same size as the mask. Also remove
6337         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6338         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6339         Now the whole cursor is visible.
6340
6341         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6342         Fix bug where xdest+height instead of ydest+height was used
6343         to calculate if the source and dest overlapped. This fixes the
6344         redraw bug when the main window in testgtk was scrolled when
6345         partially covered by a tall window.
6346         Copy rectangles in region in order depending on draw_direction.
6347         Also moved the draw_direction flipping of start_y and end_y into
6348         the gc functions, as this might not be what all of them want.
6349         (gdk_fb_draw_lines): Support dashed lines.
6350         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6351         so that the text is positioned correctly (was 1 pixel high).
6352
6353         gdk/linux-fb/gdkgc-fb.c:
6354         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6355         all lines were drawn a pixel to short. Also checked the default of
6356         the rest of the values, and they're the same as X now.
6357
6358         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6359         Clean up pixel positioning of the glyphs. Just use bgy->top and
6360         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6361         to all divisions to get correct rounding behaviour.
6362
6363         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6364         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6365         Moved start_y/end_y flip into draw_drawable implementations.
6366         Flip also x rendering when draw_direction < 0.
6367         Remove unneccesary multiply with draw_direction.
6368
6369 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6370
6371         * docs/tutorial/gtk-tut.sgml:
6372           - get rid of gtk_toggle_button_toggled FUD
6373           - start DND section - needs work - based on:
6374                 http://wolfpack.twu.net/docs/gtkdnd/
6375
6376 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6377
6378         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6379         Correct calculation of font metrics. Now GtkEntrys have sane
6380         size.
6381
6382 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6383
6384         * gdk/gdktypes.h:
6385         Add new type GdkSpan
6386         
6387         * docs/reference/gdk/gdk-sections.txt,
6388         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6389         gdk/gdkregion.h:
6390         Implement and document gdk_region_spans_intersect_foreach.
6391
6392         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6393         Add new file gdkrender-fb.c which contains all core
6394         rendering code.
6395         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6396         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6397         (optimized rectangle fillers).
6398
6399         * gdk/linux-fb/gdkdrawable-fb2.c:
6400         Move all rendering code to gdkrender-fb.c.
6401         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6402         Use the new span intersection functions in gdk_fb_fill_spans.
6403         gdk_fb_draw_rectangle() clips filled rectangles and calls
6404         gc->fill_rectangle with the result.
6405         gdk_fb_fill_spans() gets extra argument "sorted".
6406
6407         * gdk/linux-fb/gdkevents-fb.c:
6408         Remove unused includes and defines.
6409         New function gdk_fb_get_time() to get correct time for events.
6410
6411         * gdk/linux-fb/gdkinput-ps2.c:
6412         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6413         Make sure to set the time of all events.
6414
6415         * gdk/linux-fb/gdkmain-fb.c:
6416         Use gdk_fb_get_time ().
6417
6418         * gdk/linux-fb/gdkprivate-fb.h:
6419         New virtual GC calls: fill_span & fill_rectangle.
6420         Export gdk_fb_get_time().
6421         gdk_fb_fill_spans() gets extra argument "sorted".
6422
6423         * gdk/linux-fb/mi*.c:
6424         Use GdkSpan instead of GdkRectangle.
6425         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6426         from XFree 4 source)
6427         
6428 2000-11-22    <jrb@redhat.com>
6429
6430         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6431         reversing the order in an if statement will do.  Doing so managed
6432         to make the treemodelsort half work.  Other half will follow after
6433         I get the insert function fully fixed.
6434
6435 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6436         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6437         more than 2 bits. Besides, I need to implement an evil hack. :)
6438
6439 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6440
6441         * docs/tutorial/gtk-tut.sgml: minor corrections
6442
6443 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6444         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6445           convert to and from relative path's and iters.
6446
6447         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6448           testing sorting functions a bit better.  Currently broken -- will
6449           fix in morning.
6450
6451 2000-11-20  Havoc Pennington  <hp@redhat.com>
6452
6453         * gtk/gtkwidget.c: Documented a bunch of functions in here
6454         (gtk_widget_realize): Warn if you try to realize
6455         a widget with no parent that isn't a toplevel
6456         (gtk_widget_intersect): return a gboolean
6457
6458 2000-11-20  Havoc Pennington  <hp@redhat.com>
6459
6460         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6461         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6462         scrolling to be implemented in GDK to finish. Also, right now
6463         we just size_allocate all children on every layout change,
6464         which is pretty lame. Test commented out of testtext.c, 
6465         until it works better.
6466
6467 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6468
6469         * gdk/linux-fb/gdkdrawable-fb2.c:
6470         Removed unused arguments from gdk_fb_drawable_get_pixel().
6471
6472         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6473         Renamed fidur specific mouse packet data in MouseDevice to
6474         generic. Used it in ps2 mouse handling code to avoid blocking
6475         reads.
6476
6477 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6478
6479         * demos/gtk-demo/main.c: Changed to have the list become
6480         non-italic when the demo window is destroyed through an external
6481         event (like a close button).  Doing so found three bugs in the
6482         widget.
6483
6484         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6485
6486         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6487         we actually set the cell.
6488
6489         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6490
6491         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6492         free a leaked path.  Thanks memprof.
6493
6494 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6495
6496         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6497         off-by-one error when destroying allocated segments
6498         on failure. (Elliot)
6499
6500 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6501
6502         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6503         memleaks found by Evan Martin.
6504
6505 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6506
6507         * Released 1.3.2
6508         
6509         * NEWS: Updates for 1.3.2
6510
6511 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6512
6513         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6514         but in general for window system specific events.
6515
6516         * gtk/gtk.def
6517         * gtk/makefile.mingw.in
6518         * gtk/makefile.msc.in: Update.
6519         
6520         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6521
6522 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6523
6524         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6525         distribute gtk.immodules.
6526
6527         * gtk/Makefile.am (install-data-local): Don't install the
6528         gtk.immodules file created for the uninstalled modules;
6529         instead run gtk-query-immodules after install
6530
6531 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6532
6533         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6534         -rpath to the right install location.
6535
6536         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6537         -export-dynamic.
6538
6539         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6540         properly.
6541
6542 2000-11-15  Havoc Pennington  <hp@pobox.com>
6543
6544         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6545         patch from Mikael Hermansson to temporarily stop blinking while
6546         the user is using the keyboard to type or navigate. 
6547
6548         Also, when blinking, stay on for longer than we stay off. Also,
6549         return from start_cursor_blink if !cursor_visible, to save
6550         checking that flag all over the place before we call
6551         start_cursor_blink.
6552
6553 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6554
6555         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6556         only contain a "fontset" line, which is now ignored.
6557
6558         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6559         double-click-to-select-word work.
6560         
6561 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6562
6563         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6564         Don't move back one char when we are actually at the end of the 
6565         paragraph.
6566
6567 2000-11-15  Robert Brady  <robert@suse.co.uk>
6568
6569         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6570         'o' < 'p'.
6571         
6572         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6573         bind_textdomain_codeset.
6574
6575         (gtk_init_check): Make the warning about translating default:LTR
6576         sterner.
6577         
6578 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6579
6580         * **/Makefile.am : remove unecessary rules for win32-specific
6581         config-substituted targets. If you want these rules, use
6582         --enable-maintainer-mode (called automatically by autogen.sh).
6583         Stops a lot of unneccessary make-time warnings.
6584
6585         * gtk/gtktext{layout,display}.c: Factor in total width as
6586         well as screen when figuring alignment for word-wrap as well as
6587         no wrap; this is necessary to handle lines that cannot be wrapped
6588         at all.
6589
6590 2000-11-15  Havoc Pennington  <hp@redhat.com>
6591
6592         * gtk/testtext.c: Implement essential color cycling feature
6593
6594 2000-11-15  Havoc Pennington  <hp@redhat.com>
6595
6596         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6597         when we invalidate the main window.
6598
6599         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6600         GtkTextView will now invalidate the side windows for us when text
6601         changes.
6602
6603 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6604
6605         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6606         unconditionally, since we may need to update the horizontal
6607         scrollbars even if the height didn't change.
6608
6609         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6610         the extra attrs, since some of them affect size.
6611
6612         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6613         x_offset correctly.
6614
6615 2000-11-15  Havoc Pennington  <hp@redhat.com>
6616
6617         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6618         don't move the first line out into the margin, instead move the
6619         whole paragraph in order to make space for the first line within 
6620         the margin
6621
6622 2000-11-15  Havoc Pennington  <hp@redhat.com>
6623
6624         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6625         xoffset in addition to yoffset, so horizontal scrolling doesn't
6626         break redraws
6627
6628 2000-11-15  Havoc Pennington  <hp@redhat.com>
6629
6630         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6631         from the cursor
6632         (render_layout_line): fix reversed test that caused weird
6633         underlines to get drawn
6634
6635 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6636
6637         * gdk/linux-fb/gdkprivate-fb.h:
6638         Fix debug macros.
6639         
6640 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6641
6642         * gdk/linux-fb/gdkprivate-fb.h:
6643         Added virtual functions set_pixel, get_color,
6644         fill_span and draw_drawable to the GC.
6645         Added global _gdk_fb_screen_gc to use instead of
6646         NULL when drawing to the screen.
6647         Added _gdk_fb_gc_calc_state() prototype.
6648
6649         * gdk/linux-fb/gdkgc-fb.c:
6650         Call _gdk_fb_gc_calc_state() on any gc state change.
6651
6652         * gdk/linux-fb/gdkglobals-fb.c:
6653         Add _gdk_fb_screen_gc
6654                 
6655         * gdk/linux-fb/gdkdrawable-fb2.c:
6656         _gdk_fb_gc_calc_state() calculates best functions
6657         for the GC state and depth.
6658         Moved bpp specialized code to separate functions.
6659         Added optimized 24 bpp AA draw_drawable.
6660
6661         * gdk/linux-fb/gdkevents-fb.c:
6662         Silence gcc warning.
6663
6664         * gdk/linux-fb/gdkimage-fb.c:
6665         Use _gdk_fb_screen_gc
6666
6667         * gdk/linux-fb/gdkwindow-fb.c:
6668         Init and use _gdk_fb_screen_gc
6669
6670         * gdk/linux-fb/mitypes.h:
6671         Remove unused types.
6672
6673 2000-11-14  Havoc Pennington  <hp@pobox.com>
6674
6675         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6676         to pixels
6677
6678 2000-11-14  Havoc Pennington  <hp@pobox.com>
6679
6680         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6681
6682         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6683         unknown char, no real reason we were using a variable. 
6684         Remove gtk_text_unknown_char variable. Fix all the text widget
6685         files accordingly.
6686
6687         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6688         since the Unicode spec seems to prefer that character for our
6689         purposes.
6690
6691 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6692
6693         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6694         value of g_getenv() isn't freeable, so g_strdup it.
6695
6696         * modules/input/inuktitut.c: Inuktitut input method.
6697
6698         * modules/input/Makefile.am: Build this.
6699         
6700 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6701
6702         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6703         of gtk programs.
6704
6705 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6706
6707         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6708         reversed > that was causing Home to go to end of previous line.
6709
6710         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6711         modified-keypresses (leave for bindings.)
6712
6713         * modules/input/Makefile.am: Remove useless -export-dynamic
6714         from module LDFLAGS.
6715
6716 2000-11-14  Havoc Pennington  <hp@redhat.com>
6717
6718         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6719         higher.
6720
6721         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6722         account. Also, render rise, underline, background, etc. for
6723         pixbufs as well as text. Also, draw underlines one pixel higher.
6724
6725         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6726         PangoAttribute for the rise, so it gets drawn properly. Also,
6727         add the GtkTextAppearance attribute for pixbuf/widget segments
6728         as well; we should go ahead and have rise, underline, background,
6729         stipple work for those
6730
6731         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6732         Pango
6733
6734 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6735
6736         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6737
6738         * gtk/gtk.def: Update.
6739
6740         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6741         included.
6742         (gtk_rc_get_im_module_file): Use run-time installation directory
6743         on Win32.
6744
6745         * gdk/win32/rc/gdk.rc: Remove.
6746         * gdk/win32/rc/gdk.rc.in: New file.
6747         * gdk/win32/rc/Makefile.am: New file
6748         * gdk/win32/Makefile.am: Corresponding changes.
6749
6750         * gtk/gtk.rc: Remove.
6751         * gtk/gtk-win32.rc.in: New file.
6752         * gtk/Makefile.am: Corresponding changes.
6753
6754         * configure.in: Corresponding changes.
6755
6756         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6757         has a built gtkcompat.h. Developers using CVS code on Win32 can
6758         hand-edit it from gtkcompat.h.in.
6759
6760         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6761         gtkcompat.h from gtkcompat.h.win32.
6762
6763 2000-11-14  Havoc Pennington  <hp@redhat.com>
6764
6765         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6766         to default to GDK_ACTION_MOVE if the drag is within a single
6767         widget. Defaults to GDK_ACTION_COPY between widgets.
6768
6769 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6770
6771         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6772
6773         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6774
6775         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6776         srcdir != builddir
6777
6778         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6779
6780         * configure.in (GTK_VERSION): Up to 1.3.2
6781
6782         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6783         gtkimcontextxim.h
6784
6785         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6786         missing doc comment.
6787
6788 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6789
6790         * modules/linux-fb/basic.c:
6791         Use the glib iconv wrappers.
6792
6793 2000-11-13  Havoc Pennington  <hp@pobox.com>
6794
6795         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6796         still more bugs.
6797
6798         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6799         scroll the GdkWindows before realization.
6800
6801 2000-11-13  Havoc Pennington  <hp@redhat.com>
6802
6803         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6804         where GC didn't always get updated properly
6805
6806         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6807         of fonts instead of setting the entire font
6808
6809         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6810         setting entire font
6811
6812         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6813
6814         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6815         a bunch of individually-settable font attributes. You can still 
6816         use the "font" and "font_desc" args, they just set all the font
6817         attributes at once.
6818
6819 2000-11-13 Elliot Lee <sopwith@redhat.com>
6820
6821         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6822
6823 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6824
6825         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6826         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6827
6828         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6829         work better.
6830
6831 2000-11-13  Havoc Pennington  <hp@redhat.com>
6832
6833         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6834         the module file.
6835
6836         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6837         dest->language
6838
6839         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6840         settings
6841
6842         * gtk/gtktextview.c: Implement object args and setters/getters for
6843         all the aspects of the GtkTextAttributes that are not set from
6844         GtkWidget attributes. This is spacing, justification, margins,
6845         etc.
6846
6847         (gtk_text_view_set_arg)
6848         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6849         args
6850         (gtk_text_view_class_init): Add args for justify, left_margin,
6851         right_margin, indent, and tabs
6852         
6853
6854         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6855         attribute properly
6856
6857         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6858         replace with indent attribute
6859
6860         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6861         PANGO_SCALE
6862
6863         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6864         rearranging code to do that
6865         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6866         i.e. don't subtract the top_margin first, just to keep
6867         all margin-futzing in one place.
6868
6869         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6870
6871         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6872         special case of last line, Pango now handles this itself.
6873         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6874         Y coordinate
6875         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6876         (find_display_line_above): wasn't moving the byte index as it
6877         iterated over lines, so always returned byte 0. Also, port to use
6878         PangoLayoutIter.
6879         (find_display_line_below): same problem as
6880         find_display_line_above. Also, port to use PangoLayoutIter.
6881
6882 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6883
6884         * gdk/linux-fb/*.[ch]:
6885         Massive reindent to gtk+ standard. My hands hurt.
6886
6887         * gdk/linux-fb/gdkcolor-fb.c:
6888         Move GdkColorPrivateFB from inherited to windowing_data
6889
6890         * gdk/linux-fb/gdkcursor-fb.c:
6891         _gdk_cursor_new_from_pixmap made static
6892
6893         * gdk/linux-fb/gdkdnd-fb.c:
6894         GdkDragContextPrivate moved to windowing_data
6895
6896         * gdk/linux-fb/gdkdrawable-fb2.c:
6897         Removed endian.h, use glib endianness macros instead
6898         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6899         and GDK_DRAWABLE_IMPL_FBDATA
6900
6901         * gdk/linux-fb/gdkfont-fb.c:
6902         Add empty gdk_font_load(). Needed for linking of Gtk+.
6903
6904         * gdk/linux-fb/gdkimage-fb.c:
6905         Removed endian.h, use glib endianness macros instead
6906         Moved GdkImagePrivateFB to windowing_data
6907         gdk_image_new_bitmap didn't always allocate enough
6908         memory.
6909
6910         * gdk/linux-fb/gdkinput-ps2.c:
6911         Added semi-working support for MS serial mice.
6912
6913         * gdk/linux-fb/gdkprivate-fb.h:
6914         s/GdkWindowPrivate/GdkWindowObject/
6915         Removed GdkWindowPrivate typedef
6916         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6917         Removed GDK_DRAWABLE_P
6918         Move GdkColorPrivateFB from inherited to windowing_data
6919         Moved GdkImagePrivateFB to windowing_data
6920
6921         * gdk/linux-fb/gdkvisual-fb.c:
6922         Removed some unused debug code.
6923
6924         * gdk/linux-fb/gdkwindow-fb.c:
6925         Use stock cursors instead of including X headers.
6926         s/GdkWindowPrivate/GdkWindowObject/
6927
6928         * gdk/linux-fb/mitypes.h:
6929         Removed unused types.
6930
6931         * modules/linux-fb/basic.c:
6932         Use the pango fribidi wrappers.
6933
6934 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6935
6936         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6937         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6938         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6939         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6940         GEqualFunc where applicable.
6941         
6942         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6943         pango_font_description_equal as changed in pango.
6944         
6945         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6946
6947         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6948
6949         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6950
6951         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6952
6953         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6954
6955         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6956
6957         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6958         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6959
6960         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6961         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6962
6963 2000-11-12  Havoc Pennington  <hp@pobox.com>
6964
6965         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6966         dir to datadir/gtk+-2.0/demo
6967
6968         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6969         sorts of text widget and Pango font bugs. Urgh.
6970
6971         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6972
6973         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6974         tree that you should double click to see the demo. Fix 
6975         types of variables to reflect changed return values from 
6976         GtkTreeStore and GtkTreeViewColumn constructors.
6977
6978         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6979         newly-created buffer to prepare for GObject semantics
6980
6981         * gtk/testtext.c: don't leak the buffer with GObject semantics
6982
6983         * gtk/testtextbuffer.c: ditto
6984         
6985 2000-11-12  Havoc Pennington  <hp@pobox.com>
6986
6987         Rename this testgtk to gtk-demo to avoid confusion, and 
6988         install it so people can use it as a supplement to 
6989         the documentation.
6990         
6991         * demos/gtk-demo: Moved from demos/testgtk
6992
6993         * demos/testgtk: Removed
6994
6995         * configure.in: make Makefile in gtk-demo
6996         
6997         * demos/gtk-demo/Makefile.am: Install sample source to 
6998         datadir/gtk-demo (maybe there's a better place?), and 
6999         rename the binary to gtk-demo
7000         
7001         * demos/gtk-demo/main.c (load_file): Load installed sample
7002         source if source isn't found in pwd.
7003
7004 2000-11-09  Havoc Pennington  <hp@pobox.com>
7005
7006         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
7007         argument to set the char displayed when visibility == FALSE
7008         (gtk_entry_create_layout): If !entry->visible, replace 
7009         all chars with the "invisible char"
7010
7011         * gtk/testgtk.c: Test the invisible_char deal
7012         
7013 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
7014
7015         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
7016         can't get a native font in the right encoding.
7017
7018 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
7019
7020         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
7021         respectively.
7022
7023 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
7024
7025         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
7026         Fix warning when moving between paragraphs.
7027
7028         * gtk/gtkentry.[ch]: Change move => move_cursor, 
7029         delete => delete_from_cursor, insert => insert_at_cursor
7030
7031 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
7032
7033         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
7034
7035         * modules/input/imthai-broken.c: A Thai input method for use if
7036         Thai keys are really generating Latin1 keysyms.
7037
7038         * modules/input/Makefile.am: Build these.
7039
7040 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
7041
7042         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
7043         g_filename_{to,from}_utf8 now takes an extra parameter.
7044
7045         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
7046         strftime into UTF-8.
7047
7048         (column_from_x, gtk_calendar_paint_day_names): Support RTL
7049         calendars.
7050
7051         (gtk_calendar_paint_day_names): Draw day names in the right 
7052         place.
7053         
7054 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
7055
7056         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
7057         problem with using result of g_get_charset() backwards -
7058         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
7059
7060         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
7061         negative min_width/height and max_width/height to
7062         mean "requisition"; this allows setting a window
7063         to be user-resizable in only one direction easily.
7064
7065         * gtk/testgtk.c (create_main_window): Remove hard-coded
7066         usize - set a default size in the vertical direction.
7067
7068 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7069
7070         * gtk/gtkrange.c: Add some missing casts. Support 
7071         2 and 3 button clicks on the arrows to mean 
7072         "move by pages" and "jump to end". (Like gtkspinbutton)
7073
7074 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7075
7076         * gdk/win32/makefile.msc : reflect build module changes
7077
7078         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7079         from GdkPixmap*, cast implementation member instead.
7080
7081         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7082         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7083         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7084         more Gdi functions return value checking. 
7085         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7086         GdkImagePrivateWin32 *.
7087
7088         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7089         menus useable again. Add #pragma message to keep reminded on this issue.
7090         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7091         windows. This allows to enable backing store on Win32!
7092
7093         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7094         in drawable is of impl type. Correct specific type checks appropriate.
7095  
7096         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7097         GDK_WINDOW_DESTROYED before allocating new resources.
7098
7099         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7100
7101         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7102         (gdk_window_foreign_new) initialize parent handle.
7103         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7104
7105         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7106         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7107         problems (e.g. main buttons in testgtk). 
7108
7109 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7110
7111         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7112         gtk_widget_activate for GDK_Return.
7113
7114         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7115         of preedit cursor position.
7116
7117 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7118
7119         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7120         static.
7121
7122 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7123
7124         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7125         out support for multiple locales; that simple doesn't
7126         work reliably with current Xlib
7127
7128         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7129         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7130         Add support for positioning the cursor within the preedit string.
7131
7132 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7133
7134         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7135         at XIM input method module.
7136
7137         * gtk/gtktextview.c: Check for bindings after passing
7138         events to im context filter.
7139
7140 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7141
7142         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7143         empty attribute lists properly.
7144
7145 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7146
7147         * gtk/queryimmodules.c (main): Return non-zero exit
7148         status if errors were encountered querying any
7149         modules.
7150
7151         * modules/input/Makefile.am (moduledir): remove
7152         leftover bin program target.
7153
7154         * docs/make-todo: Fix typo in error message.
7155
7156 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7157
7158         * configure.in: Add modules/input/Makefile
7159
7160 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7161
7162         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7163         don't include gtkthemes.h.
7164
7165         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7166         to point
7167
7168         * gtk/Makefile.am: Add new .c and .h files, build 
7169         gtk-query-immodules and use it to create a gtk.immodules
7170         file for use of test programs.
7171
7172         * gtk/gtkpreview.c: remove extra blank line.
7173
7174 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7175
7176         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7177         Add the ability to add extra tables beyond the default
7178         one, and also the ability to have compose sequences 
7179         that are prefixes of other compose sequences. 
7180
7181         * gtk/gtkimcontextsimple.c: Export a preedit string which
7182         consists of possible candidates for keystrokes that have
7183         been entered but not yet committed.
7184
7185         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7186         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7187
7188         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7189         Add a function to add input-method switching menu items
7190         to a menu.
7191
7192         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7193         when switching input methods.
7194
7195         * gtk/gtkimcontextsimple.[ch]: Change the format of
7196         the compose table to allow compose tables of different
7197         lengths / sequence.
7198
7199 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gtk/gtkimmodule.[ch]: Support routines for loading
7202         GtkIMContext implementations dynamically at runtime.
7203
7204         * modules/input/imcyrillic-translit.c: A sample input
7205         method (based on GtkIMContextSimple with an extra table),
7206         which demonstrates preedit strings and the module
7207         system for input modules
7208
7209         * gtk/queryimmodules.c: Program to query the available
7210         input modules and write the results into a file.
7211          
7212         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7213         extra config options "im_module_file" (cache file for
7214         input method modules), and "im_module_path" - path
7215         to look for modules when generating cache file.
7216
7217         This doesn't scale.
7218
7219 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7220
7221         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7222         generic code from gtkthemes into a new abstraction
7223         GtkModule which has the logic for implementing
7224         a loadable module which implements a number of 
7225         GObject types.
7226
7227 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7228
7229         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7230         a class into an interface  
7231         
7232         * gtk/gtkoldeditable.[ch]: Move the old editable
7233         implementation into here, so legacy widgets can
7234         still rely on the implemenation. GtkOldEditable
7235         exports GtkEditable. Make selection handling
7236         code use new text conversion functions (and
7237         handle UTF-8 as a side-effect). Use GtkClipboard
7238         for CLIPBOARD.
7239
7240         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7241         Adopt to match above changes.
7242
7243         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7244         avoid GtkOldEditable implementation. Restructure
7245         to reduce number of places that modify state directly.
7246         Move to GtkBindingSet. Display the preedit string.
7247         Queue recomputation of PangoLayout and scroll position
7248         to improve effiency of doing complex changes naively.
7249         Add a menu with cut/copy/paste and input method selection.
7250
7251 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7252
7253         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7254         to set preedit string and attributes; display preedit string by
7255         inserting string and attributes at cursor when creating the
7256         GtkTextLineDisplay.
7257
7258         * gtk/gtktextlayout.c: Move all conversions between byte
7259         positions in PangoLayout and GtkTextIter into new functions
7260         line_display_iter_to_index/index_to_iter that properly
7261         handle the preedit string.
7262
7263         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7264         it to return const char * (eventually will end up
7265         as GCONST char *, most likely.)
7266
7267         * gtk/gtktextview.[ch]: Handle the preedit string, call
7268         gtk_im_context_reset() as necessary, add a menu to switch
7269         input methods.
7270         
7271         * gtk/gtktextlayout.[ch]: Remove useless
7272         gtk_text_layout_get_log_attrs() function.
7273
7274 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7275
7276         * gdk/gdk.def
7277         * gtk/gtk.def: Update.
7278
7279         * gdk/win32/*.c: Add last argument to g_type_register_static()
7280         calls.
7281
7282         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7283
7284         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7285         generated by older wheel mouse drivers. Get the correct y
7286         coordinate from WM_MOUSEWHEEL messages.
7287
7288         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7289         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7290         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7291         Debugging functions.
7292
7293         * gdk/win32/gdkprivate-win32.h: Declare them.
7294
7295         * gdk/win32/gdkinput-win32.h: Add declaration for
7296         gdk_input_window_destroy().
7297
7298         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7299
7300 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7301
7302         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7303         function to help handle keeping things in sync.
7304
7305 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7306
7307         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7308         BOXED marshallers.
7309
7310         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7311         (gtk_list_store_class_init): use the new BOXED marshallers.
7312
7313         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7314         new_with_values to new_with_types.
7315         (gtk_tree_store_get_column_type): add this.
7316         (gtk_tree_store_class_init): use the new BOXED marshallers.
7317
7318         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7319         mirror some POINTER marshallers.
7320
7321 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7322
7323         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7324         allow more interesting iterators.  Also, made the lifecycle of
7325         iterators more explicit.
7326
7327         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7328
7329         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7330         types.
7331
7332 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7333
7334         * demos/testgtk/menus.c:
7335         Changes to make the new testgtk compile after
7336         gtk_menu_append was removed.
7337
7338         * gdk/linux-fb/gdkdrawable-fb2.c
7339         (gdk_fb_get_depth, gdk_fb_get_visual,
7340         gdk_drawable_impl_fb_class_init): Implement
7341         these drawable functions. Now GtkImages work again.
7342
7343         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7344
7345         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7346         
7347         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7348         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7349         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7350         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7351
7352 2000-11-08  Havoc Pennington  <hp@pobox.com>
7353
7354         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7355         visible_set args, don't know where these had gone, I thought they
7356         used to be there
7357
7358         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7359         now we can test the feature and see that it's totally broken.
7360
7361 2000-11-08  Havoc Pennington  <hp@pobox.com>
7362
7363         Make DND copy pixbufs and tags when source and target share a 
7364         tag table.
7365         
7366         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7367         in-process GTK_TEXT_BUFFER_CONTENTS target
7368         (gtk_text_view_drag_data_received): Paste from
7369         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7370
7371 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7372
7373         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7374         API changes.
7375
7376         * gtk/gtkmenu.c: Add support for scrolling menus.
7377         Remove gtk_menu_append/prepend/insert, these have been moved to
7378         gtkcompat.h as #defines.
7379
7380         * gtk/gtkcompat.h.in:
7381         Add compatibility #defines for gtk_menu_append/prepend/insert
7382
7383         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7384         GtkMenuPositionFunc gets an extra argument push_in.
7385         gtk_menu_append/prepend/insert removed.
7386         
7387         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7388         positioning behaviour to fit to scrolling menus.
7389
7390         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7391         into menuitem->submeny. That is wrong, and broke torn
7392         off submenus of torn off menus, since they were unrealized
7393         when the first menu was unrealized.
7394
7395         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7396         gtk_menu_shell_select_item() since these need to be overridden in
7397         GtkMenu.
7398
7399         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7400         positioning behaviour to fit to scrolling menus.
7401         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7402         the current item so that it is prelighted when the menu pops up.
7403         This is a workaround to the fact that the menu doesn't get the
7404         initial enter event (due to grabs).
7405
7406         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7407         s/gtk_menu_append/gtk_menu_shell_append/
7408
7409         * gtk/gtknotebook.c:
7410         s/gtk_menu_insert/gtk_menu_shell_insert/
7411
7412         * gtk/testgtk.c (create_menu, create_menus):
7413         Create the first menu with 50 items so that menu scrolling
7414         can be tested.
7415         
7416         
7417         Patch from Jonathan Blandford  <jrb@redhat.com>
7418
7419         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7420         system to handle size requests.  First, we ask what the size of
7421         the toggle is.  Then, when allocating the size, we allocate the
7422         toggle_size first.  This way we can have multiple menu-item
7423         classes w/o needing a seperate class for each.
7424
7425         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7426         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7427
7428         * gtk/gtkcheckmenuitem.c
7429         (gtk_check_menu_item_toggle_size_request): New function to handle
7430         the toggle size-request.
7431
7432 2000-11-07  Havoc Pennington  <hp@redhat.com>
7433
7434         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7435         Half-ass somewhat fix this function, so that scrolling to the
7436         insertion point works. Pango hacking is in the future to really
7437         fix it.
7438
7439         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7440         length of data, no longer used.
7441
7442         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7443         method contents in here, get rid of destroy method
7444         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7445         that were backward. Remove debug spew.
7446         (cut_or_copy): Make the clipboard work with insert_range to
7447         preserve tags and pixbufs, not just the primary selection.
7448
7449 2000-11-07  Havoc Pennington  <hp@redhat.com>
7450
7451         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7452         to gtk_text_mark_get_visible
7453
7454         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7455         bug that was generating an invalid iterator
7456
7457         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7458         ensure_char_offsets() in front of code placing the iter in an
7459         invalid state.
7460
7461         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7462         make override_location arg const
7463         (paste): Replace the selection if we paste into the 
7464         current selection
7465
7466         * gtk/gtkselection.h: Remove "GtkSelectioData"
7467         (struct _GtkSelectionData): move the definition here.
7468
7469         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7470         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7471
7472         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7473
7474         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7475         (gtk_text_buffer_insert_range_interactive): implement
7476         (gtk_text_buffer_get_tags): Remove, replaced by
7477         gtk_text_iter_get_tags()
7478
7479         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7480         limit parameter, to avoid infinite linear scan.
7481         (gtk_text_iter_backward_search): Add search limit
7482         (gtk_text_iter_forward_find_char): Add search limit
7483         (gtk_text_iter_backward_find_char): Add search limit
7484
7485 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7486
7487         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7488         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7489         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7490         gdk/linux-fb/gdkwindow-fb.c:
7491         use g_object_new() instead of g_type_create_instance() which
7492         is a private function for fundamental type implementations.
7493
7494         * gdk/linux-fb/gdkinput-ps2.c:
7495         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7496         instead just store the current modifier state. Add a (somewhat broken)
7497         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7498         Rename exported function gdk_input_ps2_get_mouseinfo to
7499         gdk_input_get_mouseinfo.
7500
7501         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7502         gdk/linux-fb/gdkwindow-fb.c:
7503         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7504         
7505
7506 2000-11-02  Havoc Pennington  <hp@redhat.com>
7507
7508         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7509         use stock buttons. Should be 100% source compatible, appropriate
7510         filesel fields now point to dialog->vbox and dialog->action_area.
7511         On the bizarre side, dialog->action_area and filesel->action_area
7512         are not the same widget.
7513         (gtk_file_selection_init): Put some padding around the selection
7514         entry, so it isn't touching the GtkDialog separator.    
7515
7516         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7517         use stock buttons, etc. Should also be source compatible.
7518         Set the dialog default title in _init not _new().
7519         
7520         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7521         Use stock buttons; don't put a button box inside the existing
7522         dialog button box. Don't bother with push/pop colormap anymore.
7523
7524         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7525         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7526         for message dialog, and necessary for the font selection and color
7527         selection with help and apply buttons.
7528         
7529         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7530         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7531         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7532         between buttons, put less padding around the action area.
7533         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7534         This will also exit the loop if the widget is hidden.
7535         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7536         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7537         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7538         special-case delete event.
7539
7540         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7541         formatting
7542         
7543 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7544
7545         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7546         button to temporarily disable position recording in the
7547         "saved position" test.
7548
7549 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7550
7551         * gtk/gtkthemes.c: added compat code that temporarily implements
7552         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7553         going to be revamped by owen's upcoming GtkModule patches, but
7554         untill then people want gtk to build, right? ;)
7555
7556 2000-11-04  Havoc Pennington  <hp@pobox.com>
7557
7558         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7559         list
7560
7561         * docs/Changes-2.0.txt: Add note about
7562         gtk_container_get_toplevels()
7563
7564         * gtk/gtktextview.h: formatting
7565         
7566         * gtk/gtktextview.c: don't start descriptions with "Returns",
7567         confuses gtk-doc
7568
7569 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7570
7571         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7572         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7573
7574 2000-11-03  Havoc Pennington  <hp@redhat.com>
7575
7576         * gtk/gtktexttagtable.c: Docs
7577         (gtk_text_tag_table_size): return a signed int
7578
7579         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7580         (gtk_text_tag_event): make the event_object a GObject
7581
7582         * gtk/gtktextview.c: Write API docs for all functions.
7583
7584         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7585         for gtk_text_view_get_window_type() called on one of the private
7586         windows.
7587
7588         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7589         directly, call get_buffer() which demand-creates a default
7590         buffer. So gtk_text_view_new() can be used to create a view with a
7591         default buffer in it, if you just want an empty text box users can
7592         put data in. Useful for GUI builders also.
7593
7594 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7595
7596         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7597         the charset encodign portion MUST be in lowercase.
7598         * gtk/gtkrc.az: added file for Azeri language
7599
7600 2000-11-03  Havoc Pennington  <hp@redhat.com>
7601
7602         Get widgets working on the btree/buffer side. Display of them 
7603         still doesn't work.
7604         
7605         * gtk/gtktextview.c: start implementing child widget stuff
7606
7607         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7608
7609         * gtk/gtktextlayout.c: handle embedded widgets
7610
7611         * gtk/gtktextdisplay.c: handle embedded widgets
7612
7613         * gtk/gtktextchild.c: Implement all the child anchor goo
7614
7615         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7616         function
7617
7618         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7619         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7620         creating a child anchor or a pixbuf segment.
7621         (gtk_text_btree_create_child_anchor): new function
7622         (gtk_text_btree_unregister_child_anchor): new function
7623
7624         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7625         allocate_child signal on GtkTextLayout
7626
7627         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7628         values
7629         (gtk_text_iter_get_child_anchor): new function
7630
7631         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7632         default handler for the changed signal, which calls
7633         gtk_text_buffer_set_modified(), instead of just always emitting
7634         changed then calling set_modified() manually. I guess this is
7635         maybe more flexible. It seems logical.
7636
7637 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7638
7639         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7640         now.
7641
7642         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7643
7644 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7645
7646         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7647         been marked static.
7648
7649 2000-11-02  Havoc Pennington  <hp@redhat.com>
7650
7651         * gtk/testgtk.c (create_labels): had a test backward
7652
7653         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7654         fields, so the dest GC ends up with the correct clip origin, 
7655         etc. Fixes a bug where colored labels didn't redraw 
7656         properly.
7657
7658 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7659
7660         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7661         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7662         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7663         Add last argument to t_type_register_static call.
7664         
7665         * gdk/linux-fb/gdkdrawable-fb2.c:
7666         Add last argument to t_type_register_static call.
7667         export the get_image drawable virtual function.
7668
7669         * gdk/linux-fb/gdkimage-fb.c:
7670         Add last argument to t_type_register_static call.
7671         rename gtk_image_get to _gdk_fb_get_image and
7672         export it for use by gdkdrawable-fb2.
7673
7674         * gdk/linux-fb/gdkprivate-fb.h:
7675         export _gdk_fb_get_image.
7676
7677         * gdk/linux-fb/gdkselection-fb.c:
7678         Add new api call stubs.
7679
7680         * gtk/Makefile.am:
7681         Missing ( in linux-fb part.
7682
7683         * modules/linux-fb/Makefile.am:
7684         Must link with gdk_pixbuf or get unresolved symbol.
7685
7686 2000-11-01  Havoc Pennington  <hp@pobox.com>
7687
7688         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7689         GTK_TYPE_TEXT_ITER and BOXED marshallers
7690
7691         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7692
7693         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7694         
7695         * gtk/gtk-boxed.defs: add GtkTextIter
7696
7697         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7698         properly use OBJECT and BOXED
7699
7700 2000-11-01  Havoc Pennington  <hp@redhat.com>
7701
7702         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7703
7704         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7705         before returning it. 
7706         
7707 2000-11-01  Havoc Pennington  <hp@redhat.com>
7708
7709         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7710         Clip the rectangle to be rendered to the drawable, since
7711         get_from_drawable() requires a region within the drawable
7712
7713 2000-11-01  Havoc Pennington  <hp@redhat.com>
7714
7715         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7716         from coordinates.
7717
7718 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7719
7720         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7721         it isn't NULL.
7722
7723 2000-11-01  Havoc Pennington  <hp@pobox.com>
7724
7725         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7726         on a label
7727         (gtk_label_finalize): unref the attr list if any.
7728
7729         * gtk/testgtk.c (create_get_image): close test on second click
7730         (make_message_dialog): close dialog if it exists
7731
7732         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7733
7734         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7735         gdk-pixbuf
7736
7737         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7738         from Pango markup format
7739         (gtk_label_set_markup_with_accel): ditto but with accelerator
7740         parsing
7741
7742         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7743
7744         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7745         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7746         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7747         call gdk_window_get_origin().
7748
7749         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7750         implement GDK_PIXBUF_ALPHA_FULL
7751         
7752 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7753
7754         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7755         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7756         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7757         multiple handlers respectively, instead of only treating the
7758         first handler found (bug reported by owen).
7759
7760 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7761
7762         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7763
7764         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7765
7766         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7767         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7768         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7769
7770         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7771         widget.  Needs writing someday.
7772
7773         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7774         the docs.
7775
7776 2000-10-30  Havoc Pennington  <hp@redhat.com>
7777
7778         * gtk/gtktextview.h, gtk/gtktextview.c:
7779         Rename delete_at_cursor delete_from_cursor, and 
7780         move to move_cursor.
7781
7782 2000-10-30  Havoc Pennington  <hp@redhat.com>
7783
7784         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7785         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7786         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7787         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7788         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7789         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7790         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7791         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7792         gtktexttypes.h, gtktextview.c, gtktextview.h:
7793
7794         Massive reindentation and reformatting. Arg alignment and comments
7795         still need fixing in various places.
7796
7797 2000-10-30  Havoc Pennington  <hp@redhat.com>
7798
7799         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7800         to be named insert_at_cursor and delete_at_cursor so C++ can
7801         handle them.
7802
7803 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7804
7805         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7806         to get a double directory separator in case the home directory
7807         ends with one. This would cause trouble especially on Windows,
7808         where the path will be confused with the syntax for an an UNC
7809         (network share) path \\server\share\path.
7810         (gtk_rc_add_initial_default_files): Ditto.
7811
7812 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7813
7814         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7815
7816         * gtk/gtktextview.c: Use correct marshallers.
7817
7818 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7819
7820         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7821         use new iter stuff, and added all the appropriate signals et al.
7822
7823         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7824         code is internal to gtk only.
7825
7826 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7827
7828         * gtk/gtk.def
7829         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7830         glib-genmarshal etc.
7831
7832 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7833
7834         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7835         parallel builds.
7836
7837 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7838
7839         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7840
7841 2000-10-27  Robert Brady  <robert@suse.co.uk>
7842
7843         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7844         en_GB (British), ia (Interlingua).
7845
7846 2000-10-26  Havoc Pennington  <hp@redhat.com>
7847
7848         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7849
7850         Fixed output of:
7851         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7852         
7853         * gtk/gtktextsegment.c (char_segment_new): rename
7854         (_char_segment_new_from_two_strings): rename
7855         (_toggle_segment_new): rename
7856         
7857         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7858         (make_clipboard_widget): make it static
7859         (text_get_func): static
7860         (text_clear_func): static
7861
7862         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7863         static
7864         (hex_changed): make it static
7865         (hsv_changed): make it static
7866         (opacity_entry_changed): make it static
7867
7868         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7869         (toggle_segment_check_func): rename with _gtk
7870
7871         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7872         (_widget_segment_new): rename
7873         (_widget_segment_add): rename
7874         (_widget_segment_remove): rename
7875         (_widget_segment_ref): rename
7876         (_widget_segment_unref): rename
7877
7878         * gtk/gtktextmark.c (_mark_segment_new): Rename
7879         _gtk_mark_segment_new   
7880
7881 2000-10-26  Havoc Pennington  <hp@redhat.com>
7882
7883         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7884         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7885         types
7886
7887         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7888         marshaller types
7889
7890         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7891         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7892         license on these files.
7893
7894         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7895         work.
7896
7897         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7898         runtime random number different for each tree, instead of 
7899         a constant I made up.
7900
7901 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7902
7903         * gtk/Makefile.am: buncha cleanups, kludged build sources
7904         dependencies with a Makefile: oldest-source-stamp dependancy
7905         for the moment. automake is really fighting us here, with
7906         intentionally not allowing user-defined rules or dependancies
7907         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7908
7909         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7910         to public headers. tehy have a comment stating that they are
7911         "semi-public" aren't included by gtk.h and if enums popup there,
7912         they can be /*< skip >*/-ed.
7913
7914         * gtk/gtktextlayout.h: 
7915         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7916         added LGPL... <SIGH>
7917
7918 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7919
7920         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7921         GtkTreeIter.  Added iterators everywhere.
7922
7923         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7924
7925         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7926
7927         * gtk/gtktreestore.c: Changed to use the iterators.
7928
7929         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7930         iterators tomorrow.
7931
7932         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7933         iterators tomorrow.
7934
7935         * gtk/treestoretest.c: Changed to use iterators.
7936
7937         * demos/testgtk/main.c: Moved to use the new iterator system.
7938
7939 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7940
7941         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7942         localization misbehaviour.
7943
7944         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7945         a useless type without copy/free.
7946
7947         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7948         of GTK_TYPE_CTREE_NODE.
7949
7950 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7951
7952         * gtk/gtksignal.c:
7953         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7954         applicable.
7955
7956         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7957         gtk_selection_data_copy and gtk_selection_data_free
7958         do GtkSelectionData work as params in signals.
7959
7960 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7961
7962         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7963         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7964         couldn't they at least give it a non-standard name?
7965         
7966         * gtk/gtktextlayout.c: arg! yet another implementation of
7967         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7968
7969         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7970         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7971         home. now i know this _is_ a conspiracy.
7972
7973         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7974         ::state-changed.
7975
7976         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7977         (gtk_accel_group_create_add): marshaller signature fixups.
7978
7979         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7980         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7981
7982         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7983         anymore.
7984
7985 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7986
7987         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7988         due to the signal system changes, it wouldn't build currently. to
7989         be fixed soon.
7990
7991         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7992
7993         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7994         so it needs gtk_marshal_VOID__ENUM() instead of
7995         gtk_marshal_NONE__UINT().
7996
7997         * gdk/gdk*.c: adapted type registration functions.
7998
7999         * gtk/gtkbindings.c:
8000         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
8001         gone.
8002
8003         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
8004
8005         * gtk/gtkobject.c:
8006         (gtk_object_destroy):
8007         (gtk_object_shutdown): fixed recursion guards. basically we have to
8008         catch the case where any of GObject.shutdown() or gtk_object_destroy()
8009         is called during ::destroy, and avoid recursion there.
8010
8011         * gtk/gtktypeutils.c:
8012         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
8013         boxed_copy/boxed_free. this needs a more general solution based on a
8014         publically installed code-generator utility.
8015
8016         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
8017         glib's gobject has support for that now.
8018         define GtkSignalMarshaller in terms of GSignalCMarshaller.
8019
8020 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
8021
8022         * gtk/gtksignal.[hc]:
8023         * gtk/gtkmarshal.[hc]:
8024         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
8025         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
8026         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
8027         care of that.
8028
8029         * *.c: marshaller name fixups.
8030
8031         * gtk/gtkmarshal.list: added a comment briefing the format.
8032
8033 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
8034
8035         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
8036         compatibility macros here now. more specifically, most of
8037         the API is preserved (yes, _most_, nonwithstanding the
8038         following exceptions listed, the API is stil lHUGE ;)
8039         things that got removed completely:
8040         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
8041         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
8042         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
8043         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
8044         gtk_signal_remove_emission_hook().
8045         non-functional functions variants:
8046         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
8047         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
8048         not supported anymore.
8049         (gtk_signal_compat_matched): new internal function to aid
8050         implementation of the compatibility macros, it  provides
8051         functionality to block/unblock/disconnect handlers based
8052         on func/data.
8053
8054         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
8055
8056         * *.c: adaptions to new type registration API signatures.
8057
8058 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
8059
8060         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
8061
8062 2000-10-25  Robert Brady  <robert@suse.co.uk>
8063
8064         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
8065         gdk_property_delete): If window == NULL, assume the root window.
8066         (restoring the behaviour that was in 1.2).
8067         
8068         * gtk/testtext.c (save_buffer): Allow creation of new files when
8069         saving.
8070
8071         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8072         calls to read().
8073
8074 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8075
8076         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8077
8078         * gdk/win32/gdkdrawable-win32.c
8079         * gdk/win32/gdkimage-win32.c
8080         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8081         X11 backend.
8082
8083         * gdk/win32/gdkcc-win32.c
8084         * gdk/win32/gdkcolor-win32.c
8085         * gdk/win32/gdkfont-win32.c
8086         * gdk/win32/gdkinput-win32.c
8087         * gdk/win32/gdkmain-win32.c
8088         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8089
8090 2000-10-24  Havoc Pennington  <hp@redhat.com>
8091
8092         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8093         it a static function
8094
8095         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8096         redraw text when a tag is applied to it.
8097
8098         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8099         (gtk_text_tag_affects_nonsize_appearance): private functions to
8100         see if a tag requires various kinds of redraw/layout to be queued
8101         up.
8102
8103         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8104
8105         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8106         at the start of the buffer, so search works by default
8107
8108         * gtk/gtktextiter.c (lines_match): init match_start always
8109
8110         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8111         function, get iter at a line + a byte index
8112
8113         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8114         to set byte position within a line
8115         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8116
8117 2000-10-23  Havoc Pennington  <hp@redhat.com>
8118
8119         * gtk/testtext.c: Re-enable the "find" dialog
8120
8121         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8122         
8123         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8124         the arguments to gdk_draw_drawable were in the wrong order
8125         (gdk_window_paint_init_bg): This function was ignoring the
8126         init_region, instead of clipping to it, so the entire backing
8127         pixmap was cleared on every begin_paint()
8128         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8129         was in here again, the loop kept using the same GtkWindowPaint
8130         over and over.
8131         (gdk_window_begin_paint_region): Fix a bug where we had two
8132         x_offset instead of x_offset and y_offset
8133
8134         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8135         before we get the image.
8136         (gdk_draw_drawable): get the composite before we draw the drawable.
8137         (gdk_drawable_real_get_composite_drawable): default
8138         get_composite_drawable implementation that returns the drawable 
8139         itself
8140
8141         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8142         get_composite_drawable virtual function
8143
8144         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8145         list-walking bug
8146
8147         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8148         make this work if the source drawable is a GdkDrawableImplX11
8149         instead of a public drawable type. This is really broken; the
8150         problem is that GdkDrawable needs a virtual method get_xid(), but
8151         of course that doesn't work in practice. Enter RTTI.
8152
8153         Also, improve mismatched depth message.
8154
8155         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8156         GdkPixmap
8157
8158         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8159         install _gdk_x11_get_image as our implementation of get_image
8160         
8161         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8162         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8163
8164         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8165         gdk_drawable_get_image
8166
8167         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8168
8169         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8170         get_image
8171
8172         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8173         trailing semicolon after for loop
8174
8175 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8176
8177         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8178         where font_desc for widget's context lagged widget's font_desc by
8179         one step.
8180
8181 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8182
8183         * gdk/win32/gdkgc-win32.c
8184         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8185
8186         * gtk/makefile.mingw.in
8187         * gtk/gtk.def: Updates.
8188
8189         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8190         library.
8191
8192         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8193
8194         * gtk/makefile.msc: Remove
8195
8196         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8197
8198         * gtk/Makefile.am: Add it.
8199
8200         * configure.in: Generate it.
8201
8202         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8203         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8204         something even if not implemented, to satisfy picky MSVC.
8205
8206         Patches by Hans Breuer:
8207         
8208         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8209         SetBkMode() and SetTextAlign() before calling
8210         pango_win32_render().
8211
8212         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8213         Set hcliprgn to NULL after destroying it.
8214         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8215
8216         * gdk/win32/gdkgeometry-win32.c
8217         (_gdk_windowing_window_queue_antiexpose): More effective
8218         implementation.
8219
8220         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8221         depth as default, not the visual's.
8222
8223         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8224         against empty title.
8225
8226         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8227         IMAGE_PRIVATE_DATA.
8228
8229         * gdk/win32/gdkimage-win32.c: Use it.
8230
8231 2000-10-22  Robert Brady  <robert@suse.co.uk>
8232
8233         * configure.in: Check for bind_textdomain_codeset
8234
8235         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8236         present, make use of it.
8237
8238         Add a translatable string "default:LTR" which, if translated
8239         to "default:RTL", will cause the default direction to be
8240         Right-to-Left.
8241
8242         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8243         direction if marked as flippable.
8244
8245         * gtk/gtkhscale.c: Mark widget as flippable.
8246         
8247 2000-10-04  Havoc Pennington  <hp@redhat.com>
8248
8249         * gtk/testgtk.c (create_buttons): create some stock buttons
8250         with the default accel group
8251         (create_image): test some new GtkImage features
8252         (make_message_dialog): test GtkMessageDialog
8253         (create_modal_window): fix someone's bizzarro indentation
8254
8255         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8256         GTK_WIN_POS_CENTER_ON_PARENT. 
8257         Add "destroy with parent" setting, which means the window goes
8258         away with its transient parent.
8259         (gtk_window_get_default_accel_group): get the default accel group
8260         for the window.
8261         (gtk_window_set_destroy_with_parent): set/unset destroy with
8262         parent flag
8263         (gtk_window_read_rcfiles): invalidate icon set caches
8264         after reloading rcfiles 
8265
8266         * gtk/gtkenums.h (GtkWindowPosition): add
8267         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8268         on its parent window when the dialog is mapped for the first time.
8269
8270         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8271         a simple message dialog class
8272         
8273         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8274         handler to emit response signal, and maybe later it would
8275         honor a hide_on_delete flag - though that isn't there yet.
8276         Set border width on the vbox to 2, so we get some padding.      
8277         Use a button box for the action area.
8278         (gtk_dialog_key_press): synthesize a delete event if Esc
8279         is pressed and the GtkWidget key press handler didn't 
8280         handle the escape key.
8281         (gtk_dialog_new_with_buttons): new function creates a dialog
8282         with some default buttons in it.
8283         (gtk_dialog_add_action_widget): add an activatable widget
8284         as a button in the dialog - you can also add a non-activatable
8285         widget by accessing the action area directly.
8286         (gtk_dialog_add_button): add a simple button - stock ID or 
8287         label - to the action area
8288         (gtk_dialog_response): emit response signal
8289         (gtk_dialog_run): block waiting for the dialog, return 
8290         the response. Override normal delete_event behavior, so that 
8291         delete_event does nothing inside gtk_dialog_run().
8292
8293         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8294         emitted when an action widget is clicked or the dialog gets
8295         delete_event
8296
8297         * gtk/gtk.h: add gtkmessagedialog.h
8298
8299         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8300
8301 2000-10-18  Havoc Pennington  <hp@redhat.com>
8302
8303         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8304         where any number of empty lines would get skipped
8305
8306         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8307         edge.
8308
8309         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8310         warning about invalid iterators (explain more thoroughly)
8311         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8312
8313         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8314         big
8315
8316         * demos/*.c: Add error handling
8317
8318         * gtk/gtktextbuffer.c: don't modify const iterators
8319
8320         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8321
8322         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8323         on file load
8324
8325         * gtk/gtkiconfactory.c: Update to reflect addition of error
8326         handling to gdk-pixbuf loaders
8327
8328 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8329
8330         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8331         move to new modularized testgtk.
8332
8333 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8334
8335         * gtk/gtktreeview.c: Draw the arrows correctly.
8336
8337         * gtk/gtktreemodel.c: Added user docs.
8338
8339         * gtk/gtk.h: remove gtktreedatalist.h.
8340
8341         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8342         parent when generating my type.
8343
8344         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8345         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8346
8347 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8348
8349         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8350         GtkTreeModel from object to interface.
8351
8352 2000-10-16  Havoc Pennington  <hp@redhat.com>
8353
8354         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8355         compilation
8356
8357 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8358
8359         * gtk/gtktreeselection.c: Add API documentation to all public
8360         functions.
8361
8362         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8363         functions.
8364
8365 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8366
8367         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8368         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8369         docs to all public functions.
8370
8371         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8372         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8373         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8374         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8375         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8376         issue.
8377
8378 2000-10-14  Robert Brady  <robert@suse.co.uk>
8379
8380         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8381
8382 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8383
8384         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8385         values other then G_TYPE_STRING.
8386         * gtk/gtktreeselection.c: Minor commenting updates.
8387         * gtk/gtktreeview.c: Format updates.
8388
8389 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8390
8391         * README.win32: Update.
8392
8393         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8394         lines that had been deleted by mistake (?).
8395
8396         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8397         also the case fg==white and bg==black (but still not randomly
8398         coloured cursors). Thanks to Wolfgang Sourdeau.
8399
8400         * gdk/win32/*.c: Silence gcc -Wall.
8401
8402         * gtk/gtk.def: Add missing entry points.
8403
8404         Fixes by Hans Breuer:
8405
8406         * gdk/makefile.msc
8407         * gdk/win32/makefile.msc: Update.
8408
8409         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8410         some MSVC thing, presumably), cause breakpoint on failures. Add
8411         GDK_NOR case. Call g_log_set_always_fatal.
8412
8413         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8414         should be pased by reference.
8415         
8416         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8417         
8418         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8419
8420         * gdk/win32/gdkevents-win32.c
8421         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8422
8423         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8424         implementation object.
8425
8426         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8427         not just windows.
8428         
8429         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8430         Use the wrapper object.
8431         
8432 2000-10-06  Havoc Pennington  <hp@redhat.com>
8433
8434         * Makefile.am (SRC_SUBDIRS): contrib subdir
8435
8436         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8437         so it can be used in Xlib version
8438
8439         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8440         tree
8441
8442         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8443         change from 1.0 tree that returns first frame of animation
8444         if the loaded file is an animation.
8445
8446         * contrib: add new directory to hold stuff that comes with GTK+
8447         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8448         
8449         * configure.in: add contrib/*
8450
8451 2000-10-05  Havoc Pennington  <hp@redhat.com>
8452
8453         * demos/testpixbuf-save.c: add pixbuf save test
8454
8455         * demos/Makefile.am: add testpixbuf-save.c
8456
8457 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8458
8459         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8460         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8461         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8462         * gtk/gtktreeselection.[ch]: Replaced
8463         "node_selected"/"node_unselected" signal with "selection_changed"
8464         signal.
8465
8466 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8467
8468         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8469         tree widget.
8470
8471 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8472
8473         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8474         drawing.
8475
8476 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8477
8478         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8479         Move list pointer forwards before removing item from
8480         list. (Crash reported by Salmaso Raffaele)
8481
8482         * gdk/gdkwindow.h: Remove spurious trailing ,
8483
8484         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8485         dependencies on uninstalled libraries, sorry folks.
8486
8487 2000-10-04  Havoc Pennington  <hp@redhat.com>
8488
8489         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8490         gtk/gtkiconfactory.c: Fix copyrights    
8491
8492         * demos/testpixbuf.c: add inline pixbuf test
8493         
8494 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8495
8496         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8497         Add gdk_window_iconify.
8498
8499         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8500         (gdk_window_set_geometry_hints): Add win_gravity
8501         to geometry structure.
8502
8503         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8504         Implement _NET_WM_PING.
8505
8506         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8507         Set _NET_WM_PID on the client leader.
8508
8509         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8510         Handle UTF-8 better.
8511
8512         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8513         UTF-8 better, set _NET_WM_NAME as well. Only set
8514         icon name if it hasn't previously been explicitely 
8515         set.
8516
8517 2000-10-03  Havoc Pennington  <hp@redhat.com>
8518
8519         * gtk/testtextbuffer.c: clean up trailing whitespace,
8520         add extensive tests for tag toggle iteration.
8521         
8522         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8523         distance
8524
8525         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8526         optimize case where the tag root is on level 1
8527         (gtk_text_line_previous_could_contain_tag): attempt to implement
8528         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8529         functionality
8530
8531         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8532         Implement this, though not very efficiently.
8533
8534         * gtk/gtktextiterprivate.h: reformat
8535
8536         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8537         iterator
8538
8539         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8540         this to properly revalidate the iterators.
8541
8542         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8543         properly at the end of the line (and therefore on empty lines)
8544
8545         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8546         maybe we should return a value...
8547
8548 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8549
8550         * config.h.win32: Guard definition of alloca(). glib.h now handles
8551         that.
8552
8553         * gdk/gdk.def
8554         * gtk/gtk.def: Add new entry points.
8555
8556         Changes just to make GTK+ build without errors on Win32. No hope
8557         of it working in its current state, though...:
8558         
8559         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8560         some functions from the X11 backend, just to make GTK+ build.
8561
8562         * gdk/makefile.mingw.in
8563         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8564         number. Add new object files.
8565
8566         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8567         GetMessageTime to get timestamp (where on X11 uses
8568         gdk_x11_get_server_time()).
8569
8570 2000-10-02  Havoc Pennington  <hp@pobox.com>
8571
8572         * gtk/gtktextview.c: text_window_* weren't static and should have
8573         been.
8574         Start work on child widgets; not yet complete, syncing to 
8575         office computer.
8576
8577         * gtk/gtktextchild.h: change this to contain a public interface,
8578         starting work on child interfaces.
8579         * gtk/gtktextchildprivate.h: move private interfaces here
8580
8581         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8582
8583         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8584         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8585         gtk/gtktextmark.c: copyright notices
8586
8587         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8588         internal functions      
8589
8590         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8591         internal function
8592
8593         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8594         Reformatting    
8595
8596 2000-09-30  Havoc Pennington  <hp@pobox.com>
8597
8598         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8599         NULL start/end pointers
8600
8601         * gtk/gtktextbuffer.c: Write some docs
8602         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8603         NULL, so you can just check whether there's a selection.        
8604
8605         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8606         cleanup_line or segments_changed ourselves, it gets done 
8607         in unlink_segment
8608
8609         * gtk/gtktextmark.h:
8610         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8611         
8612         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8613
8614         * gtk/gtktextmark.c: delete some more old Tk cruft
8615
8616         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8617         mark before removing it, so we can emit MARK_DELETED with a valid
8618         pointer.
8619         (gtk_text_buffer_mark_set): hold ref across signal emission
8620
8621         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8622         whining about attempts to delete special marks
8623
8624         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8625         underscore, since it's internal.
8626
8627         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8628         now implemented in terms of iterators in gtktextiter.h
8629
8630         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8631         New function, destructively sets contents of buffer. Also 
8632         a convenient way to clear the buffer by setting text to ""
8633
8634         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8635         multiline string literal
8636
8637         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8638         text changes.
8639
8640         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8641         is not dereferenceable
8642         (gtk_text_iter_forward_lines): fix return value
8643
8644 2000-09-29  Havoc Pennington  <hp@redhat.com>
8645
8646         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8647
8648         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8649         that set border window size to have nicer name
8650         (gtk_text_view_mark_set_handler):  Fix this to have the 
8651         right signature.
8652
8653         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8654
8655         * gtk/testtext.c: Update with API changes, put line numbers on 
8656         both sides.
8657         
8658         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8659         with this
8660
8661         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8662         pixbuf; delete a big block of #if 0 Tk code
8663
8664         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8665         insert_pixmap with insert_pixbuf
8666
8667 2000-09-29  Martin Baulig  <baulig@suse.de>
8668
8669         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8670         confusion with the GdkPixbuf of the GNOME 1.x platform.
8671
8672 2000-09-29  Havoc Pennington  <hp@pobox.com>
8673
8674         * gtk/gtktextview.c: Implement the side windows.
8675
8676         * gtk/testtext.c: Implement simple line numbering in the 
8677         left side window; seems to make scrolling sloooow. Oops.
8678         Also, cursor blink is for some reason causing redraws
8679         of the line numbers. Should investigate...
8680
8681 2000-09-28  Havoc Pennington  <hp@redhat.com>
8682
8683         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8684         scrolling child windows, and draw focus rectangle properly.
8685         
8686         (gtk_text_view_buffer_to_window_coords):
8687         Coordinate transformation to deal with all these freaking windows
8688         and offsets
8689         (gtk_text_view_window_to_buffer_coords): transform the other way
8690
8691         * gtk/testtext.c (create_buffer): Update to match Pango API change
8692
8693         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8694         anonymous tags
8695         (foreach_unref): don't emit remove signal from finalize, just
8696         set tag's parent to NULL
8697
8698 2000-09-26  Havoc Pennington  <hp@redhat.com>
8699
8700         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8701         Fix some warnings       
8702
8703 2000-09-26  Havoc Pennington  <hp@redhat.com>
8704
8705         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8706         headers into the private header list
8707
8708         * Makefile.am (pkgconfig_DATA): install pkg-config files
8709
8710         * configure.in: add pkg-config files
8711
8712         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8713
8714         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8715         outstanding icon caches on theme change.
8716
8717         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8718         important types:
8719
8720         (GtkIconSource): Specification for creating a pixbuf 
8721         appropriate for a direction/state/size triplet from 
8722         a source pixbuf or filename
8723
8724         (GtkIconSet): List of GtkIconSource objects that are used to
8725         create the "same" icon (e.g. an OK button icon), and cache for
8726         rendered icons
8727
8728         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8729         up the icon set for a given stock ID.  GTK maintains a stack of
8730         GtkIconFactory to search, and applications or libraries can add
8731         additional icon factories on top of the stack
8732         
8733         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8734         the set of GtkIconSource specified for a given stock ID into 
8735         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8736         RcStyle, under the specified stock ID.
8737
8738         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8739         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8740         This allows people to theme how prelight, insensitive, etc. are
8741         done.
8742
8743         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8744         icon factories for a style, and return the resulting 
8745         icon set if any.
8746
8747         (gtk_style_render_icon): Render an icon using the render_icon 
8748         method in the GtkStyleClass.
8749
8750         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8751         Use the style for a given widget to look up a stock ID, get the
8752         icon set, and render an icon using the render_icon method 
8753         of the style
8754
8755         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8756         (contains information about a stock item), the built-in stock item
8757         IDs, and functions to add/lookup stock items.
8758
8759         * gtk/stock-icons/*: Stock icons that come with GTK
8760
8761         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8762         a button based on a GtkStockItem
8763         (gtk_button_new_accel): Takes a uline string and accel group, and
8764         installs the accelerator.
8765
8766         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8767         image-display widget.
8768
8769 2000-09-25  Havoc Pennington  <hp@redhat.com>
8770
8771         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8772
8773         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8774         Fix a bug when removing node data, we didn't properly 
8775         re-splice the linked list after removing the data.
8776
8777         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8778         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8779
8780         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8781
8782         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8783         for the layout from the GtkTextTag.
8784
8785         * gtk/gtktexttypes.h: delete tab and search cruft, 
8786         remove g_convert() in favor of GLib version
8787
8788         * gtk/gtktexttypes.c: remove tab implementation from here,
8789         move to Pango
8790
8791         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8792         tab stuff using new PangoTabArray from Pango
8793
8794         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8795         unused border_width stuff
8796
8797 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8798
8799         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8800         glib) and now useless utf_to_latin1() latin1_to_utf()
8801
8802         * gtk/gtktextview.[ch]: Change ::move_insert and
8803         ::delete_text action signals to ::move and ::delete;
8804         create the signals with the right enumeration type,
8805         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8806         C-v bindings, change Home, End to move to beginning/end
8807         of line, Add C-Home C-End to move to beginning/end
8808         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8809         combine ::scroll_text into ::move; use new GtkSelectionData
8810         functions to simplify DND text handling.
8811         
8812         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8813         deletion enumerations here, rename enumeration values to 
8814         be consistently plural.
8815
8816         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8817         for cut/copy/paste and primary selection.
8818
8819         * gtk/gtktextbuffer.[ch]: Remove excess time and
8820         'interactive' arguments from cut/copy/paste;
8821         rename cut to cut_clipboard, etc; remove
8822         gtk_text_buffer_get_clipboard_contents().
8823
8824         * gtk/gtktextlayout.[ch]: Add 
8825         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8826         line ends.
8827
8828         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8829         Functions to set or get a UTF-8 string on the selection
8830         data.
8831
8832         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8833         interfaces.
8834
8835         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8836         created widgets - one of these is useless if we don't.
8837
8838         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8839         a public function clear all targets registered for the
8840         widget.
8841
8842         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8843         Never call gtk_widget_realize() - that was just asking
8844         for bizarre side-effects.
8845
8846         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8847         gdk_selection_owner_set even if the widget is the
8848         same so that we reliably update the timestamp on
8849         the server.
8850
8851         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8852         gdk_x11_get_server_time() function.
8853         
8854         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8855         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8856         Add some tricky filtering on serial numbers for
8857         selection clear events to fix up long-standard
8858         race condition FIXME's in gtkselection.c.
8859
8860         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8861         routines to convert from utf8 to compound text or
8862         STRING and from a text property to UTF-8.
8863
8864         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8865         a convenience function gdk_get_current_event_time().
8866
8867         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8868         and free selection_data->data properly
8869
8870 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8871
8872         * gtk/gtkthemes.c: Remove some unecessary includes.
8873
8874 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8875
8876         * gtk/gtktextdisplay.c
8877         * gtk/gtktextlayout.c
8878         * gtk/gtktexttag.c
8879         * gtk/gtktexttag.h
8880         * gtk/testtext.c: Change the overstrike property to strikethrough,
8881         to closer match pango.
8882
8883 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8884
8885         * gtk/gtktextview.c: Fix up visibility so that focus,
8886         cursor_visible and blink interact properly.  Reenable cursor blink
8887         which had been roughly disabled. Make blink and focus
8888         properly per-view.
8889
8890         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8891         Add a flag for whether to display insertion cursor and
8892         a function to set the flag.
8893
8894         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8895         get_line_y() to get_line_yrange(), to be a bit more generally
8896         useful.
8897
8898 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8899
8900         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8901           do stop_navigating_submenu, to clear last timeout properly.
8902           Also in gtk_menu_motion_notify move ignore_enter above
8903           the conditional to make it always happen as suggested by Owen
8904
8905 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8906
8907         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8908
8909         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8910         w32api headers.
8911
8912         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8913         declarations.
8914
8915         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8916         (gdk_win32_get_colormap): A line had been deleted by mistake.
8917
8918         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8919         (gdk_event_translate): Handle more virtual keycodes to be able to
8920         generate GDK events for Control-comma, Control-period, etc.
8921
8922         * gtk/gtk.def: Add some missing entry points.
8923
8924 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8925
8926         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8927         Doc comment fixing. (Mostly non-matching parameter names.)
8928
8929         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8930         comments a little to avoid looking like a doc comment.
8931
8932         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8933         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8934         conversions be changed to GError?)
8935
8936         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8937         Move private #defines into .c file.
8938
8939         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8940         order of argument addition, remove duplicates.
8941
8942         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8943         parent class is FrameClass, not BinClass.
8944
8945         * gtk/gtk.h: Add gtkinvisible, which was missing.
8946         (It's occasionalyl useful for client apps, if seldom.)
8947
8948         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8949         #define.
8950
8951 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8952
8953         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8954         coordinates when creating window, instead of GDK-space
8955         coordinates. (Avoid BadValue on too large windows.)
8956
8957 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8958
8959         * configure.in (use_mmx_asm): Remove conftest* after use along the
8960         lines of AC_TRY_COMPILE.        
8961         
8962         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8963         of g_dirname, which is deprecated.
8964         (gtk_rc_parse_any): Removed calls to
8965         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8966
8967         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8968         Removed calls to g_hash_table_{freeze,thaw}, as they are
8969         deprecated now.
8970
8971         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8972         instead of g_basename.
8973         
8974 2000-09-04 Elliot Lee <sopwith@redhat.com>
8975         
8976         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8977         ANSI warning.
8978
8979 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8980
8981         * gtk/gtkwidget.h:  Add some documenting comments about 
8982           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8983           just as owen said on irc.
8984
8985         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8986           set HAS_DEFAULT.  Only set it if there isn't another window
8987           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8988           it if the widget is not the focused window with RECEIVES_DEFAULT.
8989           This fixes weird double default bugs in dialogs which has things
8990           call gtk_window_set_default at times.
8991
8992 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8993
8994         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8995         Nils Barth and David Santiago to improve submenu
8996         navigation. The patch does this by creating a triangular
8997         region from the point where the pointer leaves the
8998         menu to the submenu.  While the pointer is in
8999         that region and a timeout has not expired, events 
9000         that would cause the active submenu to change are
9001         ignored.
9002
9003 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
9004
9005         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
9006         moving a toplevel window immediately after sizing it would
9007         result in it being sized back to the old size since 
9008         impl->width, impl->height aren't updated until we hear
9009         back from the server. There is still a (longstanding) bug
9010         here that gdk_window_get_size() will give the wrong size
9011         until we do hear back.
9012
9013 2000-08-31  Havoc Pennington  <hp@redhat.com>
9014
9015         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
9016         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
9017         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
9018         Rename GtkTextStyleValues to GtkTextAttributes
9019
9020 2000-08-31  Havoc Pennington  <hp@pobox.com>
9021
9022         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
9023         for rapid testing whether an iterator is the end iterator
9024         (gtk_text_btree_new): init end line cache
9025         (gtk_text_line_is_last): use fast cached line to 
9026         see if we're the last line.
9027         (get_last_line): use cached line here too, should 
9028         speed up some random unrelated code.
9029         
9030 2000-08-30  Havoc Pennington  <hp@pobox.com>
9031
9032         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
9033         signals.
9034
9035         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
9036         delete_text signals. This allows the signals to be used for
9037         implementing undo.
9038
9039         * gtk/gtktextbuffer.c: Change signal handler signatures; 
9040         provide "interactive" argument when emitting insert_text or
9041         delete_text signal.
9042         
9043 2000-08-30  Havoc Pennington  <hp@pobox.com>
9044
9045         * gtk/gtktextbuffer.c: Docs
9046
9047 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
9048
9049         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
9050         from switch statements, since Tor removed the enumeration
9051         value.
9052         
9053         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9054         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
9055
9056 2000-08-29 Elliot Lee <sopwith@redhat.com>
9057         * */*.h: Use G_GNUC_CONST.
9058
9059 2000-08-27  Havoc Pennington  <hp@pobox.com>
9060
9061         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
9062         minor indentation fixes, inserted some FIXME about stuff I
9063         realized was broken while documenting it.
9064         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
9065         GTK convention  
9066
9067 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9068
9069         * gtk/testgtk.c (create_styles): Fix double free of
9070         font desc.
9071
9072 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9073
9074         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9075         
9076         * gtk/testgtk.c (create_styles): Add a test for modifying
9077         the style through gtk_widget_modify_*.
9078
9079         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9080         a function to get the current modifier style.
9081
9082         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9083         of the passed in GtkRcStyle instead of ref'ing it.
9084
9085         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9086
9087 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9088
9089         * gdk/gdkimage.h
9090         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9091         shared memory image+pixmap GdkImage type, or
9092         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9093         I am dropping that.
9094
9095         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9096         actually call gtk_init_abi_check(), passing also
9097         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9098
9099         * gtk/gtk.def
9100         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9101         New functions, used to check that the GTK+-using code has been
9102         compiled using the correct compiler and switches. In particular,
9103         with gcc one has to use the -fnative-struct switch as GTK+ is
9104         compiled with that.
9105
9106 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9107
9108         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9109         ->prev fields when merging lists. (Found simultaneously
9110         by Pawel Salek and Jakub Jelinek)
9111
9112 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9113
9114         * gdk/gdk.def
9115         * gtk/gtk.def: Add missing entries.
9116
9117         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9118         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9119
9120         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9121         function. Dummy implementation at this point.
9122
9123         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9124         rules. Undefine GTK_COMPILATION when compiling the test programs.
9125         
9126         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9127
9128 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9129
9130         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9131         to convert back and forth from UTF-8 and the "system" (or "current
9132         locale") charset when necessary. Indentation/spacing cleanup.
9133
9134 2000-08-10  Havoc Pennington  <hp@redhat.com>
9135
9136         * Makefile.am (snapshot): Change the format of the snapshot
9137         version to match glib
9138
9139         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9140         from EXTRA_DIST since it doesn't seem to exist
9141
9142 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9143
9144         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9145         version of the directory name (not the UTF-8 one) when building
9146         the path name to stat().
9147
9148 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9149
9150         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9151         PANGO_ATTR_SHAPE set.
9152
9153 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9154
9155         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9156         Peter Osterlund to simplify the code while keeping the
9157         functionality the same.
9158
9159 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9162         is_viewable() test further inside the function, since removing the 
9163         window from the redraw list without clearing ->update_area
9164         was also very broken.
9165
9166 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9167
9168         * configure.in: Check for <unistd.h>.
9169
9170 2000-08-01  Martin Baulig  <baulig@suse.de>
9171
9172         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9173         to display the message that this is a development version of GTK+.
9174
9175 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9176
9177         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9178         was depending on widget->allocation instead of the width of text_area,
9179         which was incorrect for subclasses like GtkSpinButton.
9180
9181         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9182         with width == 1 tests that should be width == -1.
9183
9184 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9185
9186         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9187         (broken, Elliot, every single window blank on X) custom code with call
9188         to gdk_window_is_viewable() which a) prevents code duplicate and
9189         b) works. 
9190
9191 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9192
9193         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9194         to get the GDK_PARENT_ROOT() macro to work.
9195         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9196         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9197         of, windows that aren't shown.
9198         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9199         pointer grab stuff.
9200
9201 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9202
9203         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9204           s/gtk_main_iteration/g_main_iteration/
9205
9206           Did this already in change:
9207                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9208           don't know how it got reverted.
9209
9210 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9211
9212         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9213         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9214
9215         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9216         not gdk_pixbuf.
9217
9218 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9219
9220         * configure.in,po/{sp,sr}.po: Added Serbian files
9221
9222 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9223
9224         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9225
9226         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9227         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9228         GIOChannel implementation.
9229
9230         * gdk/win32/gdkinput.c
9231         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9232
9233         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9234         definition to match prototype.
9235
9236         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9237
9238 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9239
9240         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9241         function, to allow handling image formats that cannot be detected
9242         by looking at content alone.
9243
9244 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9245
9246         * docs/tutorial/*.gif *.jpg *.eps
9247           Update these to the same look-n-feel.
9248           Why does including images in DocBook suck so badly?
9249
9250 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9251
9252         * gtk/gtktable.c: applied patch from Phil Thompson
9253         <phil@river-bank.demon.co.uk> that enables space settings for
9254         the last row/columns as well.
9255
9256 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9257
9258         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9259         updates the license headers to the GNU Lesser General Public License,
9260         as well as updating the copyright year to 2000.
9261
9262 2000-07-26  Robert Brady  <rwb197@zepler.org>
9263
9264         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9265           and po/Makefile, was installing and looking for them under gtk20
9266           and gtk2 respectively.
9267
9268 2000-07-25  Havoc Pennington  <hp@redhat.com>
9269
9270         * gtk/testtext.c: Comment out some stuff that depends on the rest
9271         of my patches.
9272
9273 2000-07-25  Havoc Pennington  <hp@redhat.com>
9274
9275         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9276         buffer
9277
9278 2000-07-25  Havoc Pennington  <hp@redhat.com>
9279
9280         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9281         widget changes.
9282
9283         * gtk/gtktextview.h: To be consistent with usage of "line"
9284         throughout the API to mean "newline-terminated thingy", change
9285         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9286         to MOVEMENT_LINE.
9287
9288         (GtkTextView): Add flags for default editability, and whether to
9289         show the cursor. Add functions to get/set that. Add 
9290
9291         (gtk_text_view_get_iter_location): new function
9292
9293         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9294         gtktextlayout.h
9295         (g_convert): Add g_convert temporarily, will go in glib in a bit
9296         
9297         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9298         GtkTextTagTableForeach instead of brokenly using GHFunc.
9299         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9300
9301         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9302         moved to public header.
9303
9304         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9305         "invisible", since "elide" was a bad name.
9306         (gtk_text_tag_get_priority): Added
9307
9308         (GtkTextStyleValues): put this in public header, along with
9309         functions to use it.
9310
9311         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9312         longer include gtktextbtree.h.
9313
9314         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9315         gtk_text_mark_deleted
9316
9317         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9318         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9319         to make this possible. Now we only need to install
9320         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9321         (However the Makefile.am isn't changed yet because of the
9322         logistics of merging gtk-hp-patches piecemeal)
9323
9324         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9325         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9326         gtk_text_iter_get_line is now used in the public API for a
9327         different purpose.
9328
9329         * gtk/gtktextiter.h: Clean up function names to be more
9330         consistent. Always call char offset "offset" and byte index
9331         "index". A "line" is always a line number. 
9332
9333         (gtk_text_iter_is_last): new function, more efficient than 
9334         the existing way to check
9335         (gtk_text_iter_is_first): new function, also more efficient
9336
9337         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9338
9339         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9340         gtk_text_iter_forward_char, etc.
9341
9342         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9343         forward_find_tag_toggle, since this isn't a linear search
9344
9345         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9346
9347         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9348         New functions, search for a buffer substring.
9349
9350         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9351         interactive and default editable (since we need to store that info
9352         until we receive the selection data).
9353
9354         Remove all the _at_char and at_line etc. versions of functions;
9355         only have iterator versions.
9356
9357         Add _interactive() versions of functions, that consider the
9358         editability of text. (FIXME add interactive flag to the 
9359         insert/delete signals per Darin's suggestion)
9360
9361         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9362         tag table if necessary
9363
9364         Remove declaration of gtk_text_buffer_get_iter_from_string
9365
9366         (_gtk_text_buffer_get_btree): private/internal function, added.
9367         
9368
9369         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9370         (gtk_text_line_is_last): new function
9371
9372 2000-07-25  Havoc Pennington  <hp@redhat.com>
9373
9374         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9375         using GtkProgressBar. See Changes-2.0.txt for details.
9376
9377         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9378         "pulse_step" which are the equivalent of
9379         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9380         Implement new API.
9381         
9382         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9383         (use_text_format) to mark whether text set on the progress bar is
9384         a format string. Deprecate entire GtkProgress interface.
9385
9386         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9387         (gtk_progress_build_string): make this a no-op if use_text_format
9388         is FALSE
9389
9390         * docs/Changes-2.0.txt: Describe progress bar changes.
9391
9392 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9393
9394         * Makefile.am: Include the build directory.
9395
9396         * configure.in: Generate build/Makefile, build/win32/Makefile,
9397         gdk/, gdk/win32/, and gtk/makefile.mingw.
9398
9399         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9400         Add GETTEXT_PACKAGE.
9401         
9402         * gdk/gdk.def
9403         * gtk/gtk.def: Updates.
9404
9405         * gdk/gdkfont.h
9406         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9407         need them any longer.
9408
9409         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9410
9411         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9412         PANGOWIN32_LIBS and gdk_pixbuf.
9413
9414         * gdk/win32: Compiles, but no doubt doesn't work at all.
9415
9416         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9417
9418         * gdk/win32/gdkinput.c: New file, temporarily.
9419         
9420         * gdk/win32/gdkinput-win32.h: New file
9421
9422         * gdk/win32/gdkinputprivate.h: Remove.
9423
9424         * gdk/win32/gdkpango-win32.c: New file.
9425
9426         * gtk/makefile.mingw.in: New file
9427
9428         * gtk/makefile.cygwin: Removed
9429         
9430         * gtk/Makefile.am: Update accordingly.
9431
9432         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9433         made externally visible.
9434
9435         * gtk/gtkmain.c: Use it.
9436         
9437         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9438         is enough.
9439
9440         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9441
9442 2000-07-24 Elliot Lee <sopwith@redhat.com>
9443         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9444         individual backends already.
9445         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9446         again. Yes, there really is a good reason for this, if you are using the gdkregion
9447         internals, and if you're not, why do you care?
9448         * gdk/gdkwindow.c: Fix inverted condition
9449         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9450         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9451         * gtk/gtkrange.c: Redraw trough when moving.
9452         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9453         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9454
9455 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9456
9457         * configure.in: Check for mkstemp and sigsetjmp. Output
9458         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9459
9460         More work on GDK for Win32. Still in an intermediate state.
9461
9462         * gdk/makefile.cygwin
9463         * gdk/win32/makefile.cygwin: Removed.
9464         
9465         * gdk/makefile.mingw.in
9466         * gdk/win32/makefile.mingw.in: New files.
9467
9468         * gdk/Makefile.am
9469         * gdk/win32/Makefile.am: Generate and distribute them.
9470
9471         * gdk/win32/gdkwindow-win32.h
9472         * gdk/win32/gdkdrawable-win32.h
9473         * gdk/win32/gdkpixmap-win32.h: New files.
9474
9475         * gdk/win32/gdkcolor-win32.c
9476         * gdk/win32/gdkcursor-win32.c
9477         * gdk/win32/gdkdrawable-win32.c
9478         * gdk/win32/gdkgc-win32.c
9479         * gdk/win32/gdkimage-win32.c
9480         * gdk/win32/gdkprivate-win32.h
9481         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9482         Rename fields and variables called xcursor, xid, etc (these names
9483         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9484
9485 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9486
9487         * gtk/gtkentry.[ch]: Fix some problems with vertical
9488         alignment.
9489
9490         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9491         char/byte confusion.
9492
9493 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9494
9495         * gtk/gtktextview.c (changed_handler): Fix bug where
9496         redraw wasn't being done properly when height of
9497         dirty region changed.
9498
9499         * demos/Makefile.am: Remove various references to
9500         -lgmodule
9501
9502 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9503
9504         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9505         PangoAttrShape to reserve space for pixmaps, add 
9506         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9507         in the display functions.
9508         
9509         * gtk/testgtk.c (create_layout): Set some more exotic
9510         scrolled window options
9511
9512         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9513         Add function to set the shadow type of a window, to allow
9514         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9515         which don't draw their own frame.
9516
9517 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9518
9519         * docs/tutorial/package-db-tutorial.sh: New file for
9520           packaging DocBook format tutorial
9521
9522 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9523
9524         * docs/tutorial/gtk-tut.sgml: Minor updates
9525
9526         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9527
9528 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9529
9530         * gtk/gtksignal.c: Fix C++ comment.
9531
9532         * gtk/gtkimmulticontext.c
9533         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9534         don't return value from void functions.
9535
9536         * gtk/gtk.def: Add gtk_rc_style_unref.
9537
9538 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9539
9540         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9541         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9542         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9543         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9544         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9545         gtk/gtktypeutils.h: Include files outside of the extern "C"
9546         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9547         <vakatov@peony.nlm.nih.gov>.
9548
9549 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9550
9551         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9552           Completes first pass. Hurrah!
9553
9554 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9555
9556         * docs/tutorial/gtk-tut.sgml: More clean ups.
9557
9558 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9559
9560         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9561         paint the background of the text area which was accidentally
9562         removed at some point.
9563
9564         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9565           
9566          - Move most of the functionality from the theme vtable
9567            into GtkRcStyleClass and GtkStyleClass. The moved
9568            vtable functions were changed a bit in the move to
9569            work better in their new home.
9570
9571          - Get rid of the engine and engine_data fields from
9572            GtkRcStyle and GtkStyle; instead the theme
9573            engine derives theme-specific subclasses of GtkRcStyle
9574            and GtkStyle
9575
9576          - Add extra dlsym() found entry point to themes,
9577            theme_create_rc_style().
9578
9579         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9580         in gtk_style_real_copy.
9581
9582         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9583         to register a type associated with an engine. (The engine
9584         won't be unloaded as there is an instance of the type.)
9585
9586
9587 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9588
9589         * docs/tutorial/gtk-tut.sgml: Clean ups.
9590
9591 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9592
9593         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9594           of cleaning up to do.
9595
9596 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9597
9598         * gdk/testgdk.c: New file, quick hack to test backends for
9599         pixel-by-pixel correctness of the most simple graphic operations.
9600
9601 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9602
9603         * Really release 1.3.1
9604         
9605         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9606         include structure.
9607
9608 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9609
9610         * Released 1.3.1
9611
9612 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9613
9614         * gtk/gtktextlayout.c: use FALSE for size_only most
9615         of the time when calling gtk_text_layout_get_line_display()
9616         to avoid causing double reshapes when a redraw follows
9617         immediately after.
9618
9619 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9620
9621         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9622         appropriate region and gdk_window_process_updates() so trough
9623         updating doesn't lag behind the window being scrolled.
9624
9625         * gdk/gdkgc.c: Make parent_class pointer static.
9626          
9627 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9628
9629         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9630         include <string.h>.
9631          
9632         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9633         cut-and-paste error in computing memory offset for 4 channels.
9634
9635 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9636
9637         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9638         gtk_rc_append_default_pixmap_path(), since it wasn't
9639         adding an interesting path and we don't have a meaningful
9640         default for this value.
9641
9642 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9643
9644         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9645         gtk-config to gtk-config-2.0 move gtk_.m4 to
9646         gtk-2.0.m4
9647
9648         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9649         gdk/Makefile.am demos/Makefile.am: Change 
9650         library names to libgtk-1.3.la, etc, so that we
9651         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9652
9653         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9654         gdk/Makefile.am gdk/x11/Makfile.am
9655         Move include files into /usr/include/gtk-2.0, 
9656         /usr/lib/gtk-2.0/include/
9657          
9658         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9659         gtk/gtkintl.h: Change package for gettext from 
9660         gtk+ to gtk20. Put hack in autogen.sh to modify
9661         po/Makefile.in.in after gettextize to make this
9662         possible.
9663
9664         * gtk+.spec: Some updates, not tested.
9665
9666         * gdk-pixbuf/Makefile.am: Move loaders into
9667         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9668
9669         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9670         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9671         to THEMENAME/gtk-2.0/. Move engine directory  to
9672         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9673         
9674 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9675
9676         Win32 changes, still doesn't build though.
9677
9678         * gdk/makefile.cygwin
9679         * gdk/win32/makefile.cygwin
9680         * gtk/makefile.cygwin: Updates.
9681
9682         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9683         default values for fg and bg pixel as X11 does (0 and 1), not
9684         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9685         Use 0 for pen width by default (treated as 1 anyway later, but for
9686         apps that might check the value in the GdkGC).
9687         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9688         interface to gdk_gc_predraw and _postdraw.
9689
9690         * gdk/win32/gdkwin32.h
9691         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9692
9693         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9694         extraneous semicolon.
9695
9696         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9697
9698         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9699         not the Win32 bitspixel value.
9700
9701         * gdk/win32/gdkcc-win32.c:
9702         * gdk/win32/gdkcolor-win32.c 
9703         * gdk/win32/gdkprivate-win32.h
9704         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9705         GDK object structure.
9706
9707 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9708
9709         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9710         * docs/tutorial/gtk_tut_it.sgml (name): 
9711         * docs/tutorial/gtk_tut_fr.sgml (name): 
9712         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9713         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9714
9715 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9716
9717         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9718           small changes.
9719
9720 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9721
9722         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9723         a bug here, never been here and never fixed anything ;(
9724         (don't segfault if tree->root_tree is NULL, which happens prior
9725         to widget realization, but puke instead).
9726
9727 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9728
9729         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9730         add the necessary tokens.
9731
9732         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9733         (gtk_rc_style_to_style): copy thicknesses.
9734         (gtk_rc_init_style): apply thicknesses.
9735         (gtk_rc_parse_style): parse xthickness and ythickness.
9736
9737         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9738
9739         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9740         (gdk_window_new): 
9741         (_gdk_windowing_window_init): 
9742         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9743         (gdk_pixmap_create_from_data): 
9744         (gdk_bitmap_create_from_data): 
9745         (gdk_pixmap_new): 
9746         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9747         (gdk_image_new): 
9748         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9749         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9750         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9751         (gdk_colormap_get_system): 
9752         (gdk_colormap_new): 
9753         * gdk/gdkwindow.c (gdk_window_init): 
9754         * gtk/gtkstyle.c (gtk_style_new):
9755         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9756         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9757         * gtk/gtkrc.c (gtk_rc_style_new):
9758         use g_object_new() instead of g_type_create_instance() which
9759         is a private function for fundamental type implementations.
9760
9761 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9762
9763         * configure.in: Add check for db2html
9764
9765 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9766
9767         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9768         hack to set glib_debug_objects based on gtk_debug_flags.
9769
9770 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9771
9772         * INSTALL.in: Update the Prerequisites section.
9773
9774         * Makefile.am demos/Makefile.am docs/Makefile.am
9775         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9776         gdk/linux-fb/Makefile.am: Dist fixes
9777
9778 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9779
9780         * NEWS: 10,000 foot view of 1.3.1 changes.
9781
9782 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9783
9784         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9785         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9786         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9787         gdk/x11/gdkmain-x11.c: 
9788
9789         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9790         as a return value of gdk_*_grab(). Previously, we just
9791         returned the X11 values directly.
9792
9793 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9794
9795         * gdk/x11/Makefile.am: Patch from George Lebl to 
9796         install all the headers in the right place.
9797
9798 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9799
9800         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9801           initial conversion to DocBook.
9802
9803 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9804
9805         * README.win32: Improve a bit.
9806
9807         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9808         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9809         Alt+0nnn on the numpad (used to enter characters by numeric code
9810         from current DOS or ANSI codepage) working correctly, as in other
9811         Windows apps.
9812
9813         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9814         same argument validity tests as in X11 version.
9815         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9816
9817         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9818         definitions in case missing from headers.
9819
9820         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9821         destroy the window-specific cursor.
9822         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9823         calling GetModuleHandle(NULL).
9824         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9825         with CopyCursor before setting it as the window-specific
9826         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9827         also its Windows cursor) after calling this function. Destroy any
9828         previous window-specific cursor.
9829
9830 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9831
9832         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9833         font charset is iso8859-1, not iso-8859-1.
9834
9835 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9836
9837         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9838         Use g_get_charset() instead of g_get_codeset().
9839
9840         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9841         Comment out some strdup'ing functions to keep timj
9842         happy until we finish fighting this out.
9843
9844 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9845
9846         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9847         <= width or height.
9848
9849         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9850         from 1.2 for parent/child states.
9851
9852         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9853         of typos.
9854
9855         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9856         event structures, replace with a generic axes field. Replace 
9857         deviceid/sourec with GdkDevice *device.
9858
9859         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9860         to extract particular axis use value from event. (Also
9861         can be used for normal X/Y.)
9862
9863         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9864         allow for arbitrary number of axes, namespace everything
9865         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9866         everywhere.
9867
9868         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9869         Get rid of the gdk_input_vtable setup if favor of simply
9870         defining the functions in gdkinput-none/gxi/xfree.c in
9871         a similar fashion to the way that the port structure is 
9872         done.
9873
9874         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9875         for new event structures. 
9876
9877         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9878         new device interfaces.
9879
9880 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9881
9882         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9883         set the initial text.
9884
9885         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9886         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9887         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9888         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9889
9890         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9891         pango_layout_set_font_description to simplify.
9892
9893 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9894
9895         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9896         pango_layout_set_font_description to simplify.
9897
9898 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9899
9900         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9901         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9902         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9903
9904         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9905         PANGO_PIXELS() macro.
9906
9907 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9908
9909         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9910         that returns a PangoContext owned by the widget and updated to
9911         match future changes in the widget. Also, make 
9912         gtk_widget_create_pango_layout() use this context. If we ever
9913         add a ::changed signal to PangoContext, this will make things
9914         much more convenient. 
9915
9916         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9917         in the appropriate places instead of destroying the layouts and
9918         creating new ones.
9919
9920         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9921         in a few strategic places.
9922
9923 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9924
9925         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9926         gtk_widget_size_request() on reparented child, if one. Otherwise,
9927         queue_resize() on the child never results in it getting size-requested
9928         at all.
9929
9930         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9931         in option menus, so that (with luck) people won't copy it into
9932         their apps in the future.
9933
9934         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9935         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9936         a lot of problems with changing the size of the menu's menu
9937         items after adding it to the option menu.
9938
9939         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9940
9941         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9942         the text direction for a widget changes.
9943
9944         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9945         ::direction_changed to get rid of various hacks.
9946
9947 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9948
9949         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9950         name.
9951
9952 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9953
9954         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9955         flag to the structure. Do not call XFreePixmap on pixmaps created
9956         by gdk_pixmap_foreign_new().
9957
9958 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9959
9960         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9961         value using GdkRGB functionality given GdkColormap and GdkColor.
9962         (name not final, waiting for inspiration.)
9963         
9964         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9965         set the foreground/background of a GC using the GC's colormap
9966         and GdkRGB. (name not final, waiting for inspiration.)
9967
9968         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9969         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9970
9971         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9972         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9973         purely a function of the corresponding colormap. Make
9974         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9975
9976         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9977         gdk_pixbuf_*create_from_xpm_* in terms of
9978         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9979         code.
9980
9981         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9982         advantage of the new draw_rgb_32_image_dithalign.
9983
9984         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9985
9986         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9987         on each created GC.
9988
9989         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9990
9991         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9992         which we initialize from the drawable when the GC is created,
9993         if the drawable has a colormap.
9994
9995         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9996
9997         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9998
9999         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
10000
10001 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
10002
10003         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
10004         actually returning expose events, make sure to set
10005         the count field properly.
10006
10007         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
10008         accidentally reintroced bug which always cleared
10009         the graphics_exposures value. 
10010
10011 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
10012
10013         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
10014
10015 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
10016
10017         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
10018
10019 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
10020
10021         * docs/faq/gtk-faq.sgml: Start of Section 6.
10022
10023 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
10024
10025         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
10026         
10027         (Fixes problem with drawing childless frames. Pointed out
10028         by and a first patch from Anders)
10029         
10030         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
10031         compute a child_allocation, even if we don't have a child.
10032
10033         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
10034         Always chain to the parent's impl, even if we don't have a child.
10035
10036 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gdk/gdkrgb.c: If possible, create only a single shm segment and
10039         use multiple parts of it instead of creating a bunch of separate
10040         segments, since the maximum number of segments per system is not
10041         large. (This might be worth backporting to GTK+-1.2.x if we make a
10042         new release )
10043
10044         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
10045         structure in preparation for per-colormap GdkRGB.
10046
10047         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
10048         to False when we get EINVAL from shmget so that the caller of
10049         gdk_image_new can retry with a smaller segment size.
10050
10051 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
10052
10053         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
10054
10055 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
10056
10057         * configure.in: make the current version number 1.3.1 (binary age 0,
10058         interface age 0).
10059         
10060         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
10061         gtkcompat.h is all we want.
10062
10063         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
10064         GLib primitive types. fixed g_type_register_fundamental() argument
10065         ordering.
10066
10067         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10068         compiles.
10069
10070         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10071         object code cleanup, comment trigraph fixes, etc...
10072
10073 2000-06-23  Havoc Pennington  <hp@redhat.com>
10074
10075         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10076         instead of making up a bogus name for first_para_mark
10077
10078         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10079         0 as a context ID
10080
10081 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10082
10083         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10084
10085 2000-06-21  Havoc Pennington  <hp@pobox.com>
10086
10087         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10088         we didn't check window->bg_pixmap != GDK_NO_BG.
10089
10090         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10091         gdk-pixbuf
10092
10093 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10094
10095         * docs/faq/gtk-faq.sgm: Move file to here.
10096           TODO: Update Makfile.am 
10097
10098 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10099
10100         * docs/gtk-faq.sgm: Add Section 2
10101
10102 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10103
10104         * docs/gtk-faq.sgm: New file. Start of DocBook
10105           version of the FAQ.
10106
10107 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10108
10109         * configure.in (GDK_PIXBUF_MAJOR): Define version
10110         numbers for GDK_PIXBUF_*, as they get substituted
10111         into a header file. Need to consider versioning
10112         for gdk-pixbuf more carefully later.
10113
10114 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10115
10116         Work with srcdir != builddir.   
10117         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10118         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10119         * demos/testpixbuf.c: Likewise.
10120         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10121         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10122         <gdk/x11/gdkx.h>.
10123         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10124         "gdk-pixbuf.h".
10125         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10126
10127 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10128
10129         * TODO.xml: Change 1.4 version numbers to 2.0.
10130
10131 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10132
10133         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10134         fixups to GTK+ standard.
10135
10136 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10137
10138         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10139         gdk-pixbuf.
10140
10141         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10142         fixups for GObject.
10143
10144         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10145         gdk-pixbuf with GDK dependencies moved into GDK.
10146         
10147         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10148         move gdk-pixbuf-loader here until GObject has signals.
10149
10150         * demos/: New directory of demos. Move demos from
10151         gdk-pixbuf here.
10152
10153         * demos/pixbuf-init.c: Small bit of code to check for
10154         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10155         set GDK_PIXBUF_MODULEDIR appropriately.
10156
10157         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10158         define which no longer makes sense.
10159
10160 2000-06-21  Havoc Pennington  <hp@redhat.com>
10161
10162         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10163         gtk_get_default_language
10164
10165         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10166         new function to get the default language
10167
10168         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10169         s/gtk_text_view_style_values/gtk_text_style_values/
10170
10171         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10172         Add a "language" field to tags.
10173
10174         (gtk_text_tag_set_arg): Fix bug in setting
10175         "bg_full_height_set" tag.
10176
10177 2000-06-21  Havoc Pennington  <hp@redhat.com>
10178
10179         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10180         in the interfaces
10181
10182         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10183         stuff instead when possible.
10184
10185         * gtk/gtktexttypes.h: Delete some unused constants
10186
10187         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10188         testtextbuffer.c: use glib instead of custom unicode routines
10189
10190 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10191
10192         * docs/es/: Removed mistakenly added generated sgml
10193
10194         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10195         Remove outdated info files.
10196
10197         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10198         Moved tutorial files into subdir
10199
10200         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10201         subdir.
10202
10203         * docs/man/gtk_button.pod: Remove. (contents will be
10204         integrated into gtk-reference button page.)
10205
10206         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10207         docs/faq/Makefile.am: Adjust for new organization
10208
10209 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10210
10211         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10212         not $(MKINSTALLDIRS)
10213
10214 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10215
10216         * gtk/testgtk.c (create_text): Finish the job Elliot started
10217         of removing font setting test for text widget. (Since text widget
10218         and GdkFont are not deprecated, and cause portability problems.)
10219
10220 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10221
10222         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10223         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10224         Remove use of libunicode in favor of new GLib functions.
10225
10226         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10227         nano-x, framebuffer. The X11 include is just a hack until we get
10228         the necessary functions in gdkcolor.h, so there is no reason to
10229         add other includes of platforms.
10230
10231         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10232         window bigger than the screen change.
10233
10234         * gtk/testgtk.c: Revert some random changes from Elliot
10235         that had no particular point and were causing testgtkrc
10236         not to function correctly.
10237         
10238         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10239         because GdkSegment and GdkRegionBox have the same fields,
10240         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10241         results in clearer code.
10242
10243         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10244         gdk_input_translate_coordinates): Fix missed GdkObjectification
10245
10246 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10247
10248         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10249         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10250
10251 2000-06-20  Havoc Pennington  <hp@redhat.com>
10252
10253         * modules/linux-fb/Makefile.am: Make this compile
10254         without framebuffer enabled
10255
10256         * gdk/linux-fb/Makefile.am: Add conditional to not build
10257         framebuffer unless specified in configure
10258
10259         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10260         the size of the target instead of source if -1 was passed for
10261         width/height
10262
10263         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10264         width/height confusion.
10265
10266 2000-06-19  Havoc Pennington  <hp@redhat.com>
10267
10268         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10269         GDK_DRAWABLE_XID. In the future, we probably want to make it
10270         faster with G_DISABLE_CHECKS turned on.
10271
10272 2000-06-14  Havoc Pennington  <hp@redhat.com>
10273
10274         * gdk/Makefile.am: add gdkpixmap.c
10275
10276         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10277         s/gdk_image_init/_gdk_windowing_image_init
10278
10279         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10280         ref/unref
10281
10282         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10283
10284         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10285         GdkWindowType is now non-deprecated; 
10286         change gdk_window_get_type() compat to be
10287         gdk_window_get_window_type().
10288
10289         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10290
10291         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10292         virtual GObject. Make all functions call into the vtable.
10293         Move gdk_image_put() guts in here. Remove GdkDrawableType
10294         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10295         draw_image, get_depth, get_size, set_colormap, get_colormap,
10296         get_visual added to the vtable.
10297         
10298         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10299         GObject. Virtualize everything. 
10300         (gdk_gc_new_with_values): remove check for destroyed window,
10301         because now GdkWindow::create_gc will check this.
10302         (gdk_gc_set_values): New function to set GC values, this 
10303         was already implemented but wasn't in the header
10304
10305         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10306
10307         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10308         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10309         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10310         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10311         _gdk_windowing_window_init, rename gdk_image_init to
10312         _gdk_windowing_image_init.
10313         
10314         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10315         (gdk_draw_layout): Remove check for destroyed window, 
10316         because all the drawable methods already check it.
10317         
10318         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10319         Add gdkpixmap.c which contains implementation of GdkDrawable
10320         virtual table (by chaining to a platform-specific implementation
10321         object).
10322         
10323         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10324         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10325         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10326         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10327         GdkColormapPrivate. 
10328
10329         * gdk/gdktypes.h: #include <glib-object.h>
10330
10331         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10332         Move most functionality to platform-specific implementation
10333         object. GdkWindow itself now handles the backing store, then
10334         chains to the platform-specific implementation.
10335         (gdk_window_get_window_type): return GdkWindowType of the window.
10336         (gdk_window_peek_children): New routine, returns the children of 
10337         a GdkWindow
10338         (gdk_window_get_children): Was in X11-specific code and did 
10339         XQueryTree. Changed to simply return a copy of window->children; 
10340         so it can go in cross-platform code.
10341         
10342         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10343
10344         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10345         GdkColormap; just changed to use the new private data instead
10346         of casting to GdkColormapPrivate.
10347
10348         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10349         gdk_cursor_new().
10350
10351         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10352         (private data member in the GObject). 
10353         (xdnd_manager_source_filter): Function had broken 
10354         error handling, fix it (use gdk_error_trap_push).
10355
10356         * gdk/x11/gdkdrawable-x11.c: This file now implements
10357         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10358         base class is purely for the convenience of the X port,
10359         and not part of the interface to cross-platform GDK.
10360
10361         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10362         
10363         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10364         specific to X, and returned by the create_gc virtual method
10365         of GdkDrawableImplX11. 
10366         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10367         rather than gchar, this was also changed in the GdkGC vtable.
10368         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10369         mask is 0, return immediately, instead of checking every flag.
10370         This is faster, and keeps us from segfaulting if values is NULL
10371         and the mask contains some nonzero flags.
10372
10373         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10374         GdkWindow.
10375
10376         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10377         GdkWindowPrivate is gone.
10378
10379         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10380
10381         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10382         remove the image_put stuff that got transferred to GdkDrawable.
10383         
10384         * gdk/x11/gdkinput.c: renamings
10385
10386         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10387
10388         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10389
10390         * gdk/x11/gdkprivate-x11.h: indentation fixes
10391
10392         * gdk/x11/gdkproperty-x11.c: renamings
10393
10394         * gdk/x11/gdkselection-x11.c: renamings
10395
10396         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10397         implements the platform-specific "impl" object.
10398         Moved gdk_window_get_children to gdk/gdkwindow.c
10399
10400         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10401         that no longer exist. Add declaration of GdkGCX11 object here.
10402         Fix all the macros to still work. 
10403
10404         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10405         GdkDragContext from the boxed types since they are now GObjects.
10406
10407         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10408         moved xthickness/ythickness into the instance. GtkStyleClass
10409         functions are now in the standard vtable for GtkStyle, so you have
10410         to create a GObject subclass to write a theme engine.
10411         (gtk_style_copy): fixed a leaked PangoFontDescription
10412         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10413         can be the standard GObject function.
10414         
10415         * Throughout GTK:
10416         s/style->klass->[xy]thickness/style->[xy]thickness
10417         s/pango_layout_unref/g_object_unref/
10418
10419         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10420         
10421         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10422         accessing GDK internals.
10423
10424         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10425         accessing GDK internals.
10426
10427 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10428
10429         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10430
10431         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10432         problem by calculating event position relative to the trough
10433         rather than the slider.
10434         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10435
10436         * gdk/gdkgc.h: Add GDK_NOR.
10437
10438         * configure.in, Makefile.am: Add modules top level dir
10439         * configure.in: Only use pangox library if building x11 target.
10440         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10441
10442 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10443
10444         * gtk/gtkcolorsel.c: Change private class member to be named
10445         private_data throughout the file.
10446
10447         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10448         private_data to avoid clashing with keyword.
10449
10450 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10451
10452         * gdk/gdkdnd.h: Add comment to remove warning.
10453
10454 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10455
10456         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10457         Byelorussian language; changed the Makefile and file names 
10458         to reflect that.
10459
10460 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10461
10462         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10463         rather than gdk_window_hide; this makes things work
10464         correctly if the window is programmatically hidden while
10465         iconified.
10466
10467 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10468
10469         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10470         cut and paste typo where wrong pixmap was being
10471         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10472
10473 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10474
10475         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10476         Add helper function to compute format / bytes 
10477         relationship. Use in a couple places to fix up
10478         errors which assume 8 * format.
10479
10480         * gtk/gtkselection.c (gtk_selection_request): Use 32
10481         rather than 8 * sizeof (GdkAtom), to work correctly
10482         on Alpha.
10483
10484 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10485
10486         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10487         libgtk.la
10488         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10489         versions
10490
10491         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10492         checking macros return NULL since the function has a return value.
10493
10494 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10495
10496         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10497         GTK+ from building at all.
10498
10499         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10500
10501 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10502
10503         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10504         gtk/Makefile.am: make it possible to configure gtk for different
10505         targets on the same platform. The library name is now 
10506         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10507         flag. Only the x11 target compiles right now.
10508         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10509         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10510         * gdk/nanox/gdk*generic*: delete generic region code.
10511         * gdk/linux-fb/gdk*generic*: delete generic region code.
10512         * README.nanox: update information.
10513         
10514 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10515
10516         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10517         prepend not append. (Pointed out by Brett Hall.)
10518
10519 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10520
10521         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10522
10523 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10524
10525         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10526         need this later, and this makes sure that the atexit for
10527         glib gets called after that for GDK, so atexits are
10528         properly ordered for object leak checking.
10529
10530         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10531
10532         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10533         pango_x_shutdown_display()
10534
10535         * gtk/simple.c (main): Close window on destroy.
10536
10537 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10538
10539         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10540         to treat initial creation different from setting with 
10541         regards to the graphics-exposures parameter, so add a parameter
10542         indicating whether this is initial or not.
10543
10544 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10545
10546         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10547         to sort of work by adding an extra return_exposes arg
10548         to gdk_event_translate() - it might be better to simply
10549         deprecate the function altogether and force people to rewrite
10550         without it. gdk_window_scroll() handles most of it, and where
10551         gdk_window_scroll() doesn't work, simply redrawing more does.
10552
10553         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10554         assertion.
10555
10556         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10557
10558         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10559         bunch of pretty much useless /* Print debugging info */ comments 
10560         which had drifted away from the code they were commenting.
10561
10562 2000-06-02  Havoc Pennington  <hp@pobox.com>
10563
10564         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10565         is in working order.
10566         
10567         * gtk/testtext.c: Change to reflect anonymous mark API
10568
10569         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10570
10571         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10572         field, which was unused.
10573
10574         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10575         saves some typing.
10576
10577         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10578
10579         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10580         flag on the insertion point and selection bound
10581
10582         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10583         make mark-manipulation functions take a GtkTextMark* instead of a
10584         mark name.
10585         
10586         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10587         GtkTextMarkBody; will be used to detect attempts to delete
10588         the permanent marks (insert and selection bound)
10589
10590         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10591
10592 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10593
10594         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10595         flag to on.
10596
10597         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10598         Honor DOUBLE_BUFFRED_FLAG
10599
10600         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10601         function to set the DOUBLE_BUFFERED flag.
10602
10603         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10604         or not exposes done on the widget should be double-buffered.
10605
10606         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10607         to be what would be expected. (Fixes problem with a
10608         g_return_if_fail() validating a TextDirection enumeration)
10609
10610 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10611
10612         * gtk/gtkwidget.c: Remove all references to 
10613         offscreen flag which was no longer used.
10614
10615         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10616
10617         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10618         for non-null label_widget->parent.
10619
10620         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10621         which no longer was used.
10622
10623         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10624
10625         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10626         for null arguments.
10627
10628         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10629         check for destroyed windows.
10630
10631 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10632
10633         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10634         the slave context there.
10635
10636         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10637         identical to GtkWindow.
10638
10639 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10640
10641         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10642         pangox to here, so we can write them independent of rendering
10643         system, using GDK primitives.
10644
10645         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10646         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10647         since we have a rendering-system independent implementation in
10648         terms of draw_glyphs().
10649         
10650         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10651         function to render a single line.
10652
10653         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10654         into ../gdkpango.c, which simplifies things, since we
10655         don't have to deal with raw X gc's.
10656
10657 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10658
10659         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10660         get the logical attributes for a given GtkTextLine.
10661
10662 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10663
10664         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10665         g_locale_get_codeset() to g_get_codeset() change.
10666
10667 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10668
10669         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10670         descriptions.
10671
10672         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10673         the entry.
10674
10675         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10676         redoing (vastly simplifying) for Pango. Still needs quite
10677         a bit of work. (Size selection is currently poor. List of 
10678         predefined sizes is not a good idea, since all of these
10679         sizes won't necessarily be distinct.)
10680
10681 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10682
10683         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10684         CODESET results for LANG=C.
10685
10686 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10689         which takes a stringized pango font description;
10690         ignore the older 'font' and 'fontset' declarations.
10691
10692         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10693         field with a GdkFont derived via gdk_font_from_description(),
10694         for compatibility. (Should we just remove it entirely?
10695         Probably too much compatibility breakage, but people
10696         should be migrating to the new Pango stuff as quickly
10697         as possible.)
10698
10699 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10700
10701         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10702
10703 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10704
10705         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10706         redoing; there are some bugs in size allocation right
10707         now, the semi-existant distinction between header / day
10708         fonts was removed, but, with Pango, could actually
10709         be made functional in a nice way.
10710         
10711         * gtk/testcalender: Move calender from examples into this
10712         directory as a test program. (We really need to restrcture
10713         testgtk into a whole directory full of tests for every
10714         widget or functionality group, separated into multiple .c
10715         files.)
10716
10717 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gtk/testgtk.c (file_exists): Fix stupid typo that
10720         was keeping RC file from being loaded.
10721
10722         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10723         RC file font code.
10724
10725 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10728         Add function to load a GdkFont from a PangoFontDescription.
10729
10730 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10731
10732         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10733         variable should be of type GdkEventPrivate.
10734
10735 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10736
10737         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10738         to have any widget for the label, use a GtkLabel widget
10739         to display the text. (Based partially on a patch from
10740         Anders Carlson.)
10741
10742         (Quite a bit of code reorganization - strip 90% of the
10743         guts out of gtkaspectframe and add a single virtual
10744         func to GtkFrameClass - compute_child_allocation.)
10745
10746 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10747
10748         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10749         (Removed clist->row_center_offset field because caching
10750         it wasn't saving time or code, added private function
10751         _gtk_clist_create_cell_layout()).
10752
10753 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10754
10755         * gtk/gtkaccellabel.c: Pangoized.
10756
10757         * gtk/[hv]ruler.c: Pangoized
10758
10759 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10760
10761         * gtk/gtkfilesel.c (gtk_file_selection_init):
10762         Use gtk_clist_set_column_auto_resize() to remove need
10763         need for manual column width computations.
10764
10765 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10766
10767         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10768         ensuring Pango correctness, and considerably simplifying the
10769         code.
10770         
10771         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10772
10773         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10774         getting of numbers of lines.
10775
10776         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10777         to the actual requested width of the lable, not to the wrap
10778         width we set.
10779
10780         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10781
10782         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10783           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10784
10785         * gtk/gtktextview.c: Fix structure inheritance.
10786
10787         * gtk/gtkprogressbar.c: Pangoize.
10788
10789 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10790
10791         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10792         in a function.
10793
10794         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10795         bug with computing line tops.
10796
10797         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10798
10799 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10800
10801         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10802         and y_offset coordinates to do what we need now. (The offset between
10803         buffer and layout coordinates has been reintroduced, but is a 
10804         bit different than before.)
10805
10806         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10807         handle the adjustments ourselves, and scroll as necessary using
10808         the new gdk_window_scroll().
10809         
10810         The advantage of this is that when we are incrementally revalidating,
10811         we are essentially rearranging things around the visible portion
10812         of the screen. With the old setup, the visible portion of the
10813         screen was moved around in the layout, so scrolling and redrawing
10814         to track that caused jumping of the display. Since we now
10815         control the scrolling ourselves, we can suppress this and
10816         only redraw when things actually change.
10817
10818 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10819
10820         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10821         the region not just redisplay it after-all, since we store the
10822         cursors in the LineDisplay. (Ugly interactions here between
10823         GtkLayout and GtkTextBTree here.)
10824         
10825         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10826
10827 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10828
10829         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10830         Added function to scroll contents of a window while keeping the
10831         window constant. Works by XCopyArea or guffaw-scrolling depending
10832         on the details of how the window is set up. (guffaw-scrolling
10833         still needs to be filled in.)
10834
10835 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10836
10837         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10838         move the debugging that was tied to a global variable
10839         to that.
10840
10841         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10842
10843         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10844         validated flag, in line data instead of setting height/width to
10845         -1. This allows us to perform operations with partially invalid
10846         buffer (using the old size for invalid lines) and thus to do
10847         incremental vaidation. Keep height/width aggregates up to date
10848         when deleting text and rebalancing the tree.
10849
10850         * gtk/gtktextbtree.[ch]: Add functions validate a line
10851         (gtk_text_btree_validate_line), and to validate up
10852         to a number of pixels (gtk_text_btree_validate).
10853
10854         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10855         that indicates that something is changed and a revalidation
10856         pass is needed. Change ::need_repaint to ::changed, and
10857         make it take old and new yranges instead of a rectangle.
10858
10859         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10860         the line_data_destroy() function from 
10861         gtk_text_btree_add_view() to a virtual function in 
10862         GtkTextLayout
10863
10864         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10865         since we are handling partial repaints in a different fashion
10866         now.
10867
10868         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10869         of the selection instead of queueing a repaint on the
10870         entire widget.
10871
10872         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10873         get_selection_bounds() down to btree, make the function
10874         in buffer a wrapper around the btree function.
10875
10876         * gtk/gtktextlayout.[ch]: Add functions to check if the
10877         layout is valid and to recompute either a range of pixels
10878         aroudn a line or a certain total number of pixels.
10879
10880         * gtk/gtktextlayout.[ch]: Cache a single line display;
10881         now that we only redraw the needed portions, the hit rate
10882         for this cache is quite high.
10883         
10884         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10885         on the screen so that when re-laying-out the buffer, we can
10886         keep the same place. This requires connecting to ::value_changed
10887         on the adjustments
10888
10889         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10890         the buffer after we receive an ::invalidated signal.
10891         
10892 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10893
10894         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10895         to max of allocation and layout size, not just to the
10896         layout size.
10897
10898         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10899         Invalidate window so it gets redrawn properly.
10900
10901         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10902         to mean the entire window.
10903
10904         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10905         into public header.
10906
10907 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10908
10909         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10910         to get the name of a mark.
10911
10912         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10913         to find the paragraph from a y position.
10914
10915 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10916
10917         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10918         nodes have width/height >= 0, not > 0.
10919
10920 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10921
10922         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10923         Add a size_only flag, so when we only need the size, we don't create
10924         useless appearance attributes.
10925
10926         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10927         duplicate setting of font description.
10928
10929         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10930
10931 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10932
10933         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10934         EXTRA_DIST. It does not work well when the file that
10935         everything depends on is not in the tarball.
10936
10937 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10938
10939         * gtk/testgtk.c: Some hacks and fixes so that it basically
10940         works when not sitting in the GTK+ build tree.
10941
10942 2000-05-03  Havoc Pennington  <hp@redhat.com>
10943
10944         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10945         Properly determine the ordering of the tag root and the current
10946         line within the tree. Previous algorithm only worked if the tag
10947         root's immediate parent was the common root of both the current
10948         line and the tag root.
10949
10950 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10951
10952         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10953         alignment.
10954
10955         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10956         the widget text directional dynamically.
10957
10958         * gtk/gtktextview.[ch]: Added functions to get and set default
10959         wrap mode.
10960
10961 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10962
10963         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10964         in cursor location computation.
10965
10966 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10967
10968         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10969         vadjusment values properly when layout gets smaller.
10970
10971         * gtk/gtktextview.c (need_repaint_handler): Areas being
10972         passed in are far completely inaccurate, and sometimes
10973         too small, so, for now, just queue a redraw on the
10974         whole visible region.
10975
10976 2000-04-25  Havoc Pennington  <hp@redhat.com>
10977
10978         * gtk/gtktextbtree.c (summary_destroy): new function to 
10979         destroy tag summary nodes
10980         (gtk_text_line_next_could_contain_tag): this function was 
10981         totally broken if the line passed in wasn't below the tag
10982         root. Fix it.
10983         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10984         "wildcard" case, we have to do a linear scan. Blah.
10985         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10986         we have to do the linear scan
10987         (tag_removed_cb): When a tag is removed from the tag table, 
10988         remove the GtkTextTagInfo node from the btree.
10989         (gtk_text_btree_spew): Implement the spew function, for 
10990         our debugging pleasure.
10991
10992 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10993
10994         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10995         a problem with referring to the wrong buffer.
10996
10997         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10998
10999         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
11000         font description to gtk_style_new() - otherwise things
11001         don't work without a .gtkrc file.
11002
11003         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
11004         tags table if we create it ourself, too.
11005
11006         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
11007         it was conflicting with XKB modifiers.
11008
11009         * gtk/gtktextview.[ch]: Add simple support for 
11010         GtkIMContext.
11011
11012 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
11013
11014         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
11015         with deletion from last commit.
11016
11017 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
11018
11019         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
11020         in the context from the current locale.
11021         
11022         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
11023         context, not hardcoded value.
11024
11025         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
11026         not logical.
11027
11028 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11029
11030         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
11031         attributes - that doesn't handle partial-glyph selection
11032         properly. Instead use new pango_layout_line_get_x_ranges()
11033         functionality to draw the selection.
11034
11035         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
11036         now properly handles out-of-range coordinates.
11037
11038         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
11039
11040         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
11041         public.
11042
11043         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
11044         for paragraphs opposite to the base direction of the widget.
11045
11046         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
11047
11048         * gtk/gtktextlayout.c: Don't split segments on marks, since that
11049         causes Arabic words to reshape as you cursor through.
11050
11051         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
11052         cursor position when moving vertically with the arrow keys and
11053         scrolling with page-up/page-down. (Arrow keys save only the X,
11054         scrolling saves both X and Y.)
11055
11056         This means you can line-up / line-down or page-up / page-down
11057         without losing your place, and also that moving vertically
11058         with the cursor keys keeps the same X position, not the same
11059         character count:
11060
11061         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
11062         arrow keys move by display lines, not paragraphs.
11063
11064 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11065
11066         * gtk/gtklayout.c: Make sure that the bin window is at least
11067         as big as the allocation. (Should we also make sure that the
11068         bin window is big enough to completely cover widget->window?)
11069
11070         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11071         function to get the onscreen rectangle.
11072
11073         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11074         for offsets in window coordinates.
11075
11076 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11077
11078         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11079         confusion.
11080
11081         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11082         from the widget direction.
11083
11084         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11085         Add a "direction" attribute.
11086
11087         * gtk/gtktextview.c: global s/tkxt/text_view/.
11088
11089         * gtk/testtext.c: Added long block of text in Arabic, to test out
11090         the direction attributes. (Some problems with the shaping system
11091         for arabic become obvious - like the fact the cursor splits words
11092         into unjoined pieces.)
11093
11094 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11095
11096         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11097
11098         * gtk/gtktextlayout.c: Fix up alignment.
11099
11100         * gtk/testtext.c: Add some tests for centering, wrapping.
11101
11102 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11103
11104         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11105         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11106         If we wrote GTK+-specific layout-render function this could just replace
11107         the draw_layout() operation in the vtable.
11108
11109         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11110         pango_layout_get_cursor_pos() and use that function.
11111
11112         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11113         is a non-static symbol.
11114
11115         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11116         with gtk_text_btree_find_line_by_y()
11117
11118         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11119         renderer that handles GtkTextAppearance attributes.
11120
11121         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11122
11123           - Move the values in the style that don't affect geometry into a
11124             GtkTextAppearance structure.
11125           - Change underline to take a PangoUnderline and "font" a string
11126             representation of a font description
11127           - Add a "font_desc" attribute which takes a FontDescription structure.
11128
11129         * gtk/gtktextlayout.[ch]:
11130
11131           - Get rid of the display-line list per each line. Instead, we
11132             generate, on demand, a GtkTextLineDisplay structure which]
11133             contains a PangoLayout * and other necesary information
11134             (offsets, cursor locations) for displaying a paragraph.
11135           - Get rid of the code to wrap lines, create display chunks,
11136             etc. Instead, we just go through a paragraph and convert
11137             it into the necessary inputs to a PangoLayout.
11138           - Implement a new attribute type, GtkTextAttrAppearance. This
11139             holds a GtkTextAppearance, and is used to pass colors, 
11140             stipple, etc, through from the layout to the display without
11141             having to use lots and lots of individual attributes.
11142           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11143             in terms of PangoLayout functions.
11144         
11145         * gtk/gtktextview.c: 
11146          
11147           - Handle passing the necessary PangoContext to the layout
11148           - Some fixups in painting to deal with the automatic backing store
11149             and offsetting of GTK+-1.4
11150           - Add a style_set handler so that the default style reacts
11151             properly to theme changes.
11152         
11153         * gtk/gtktext?*.[ch]: Random code-style fixes.
11154
11155         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11156
11157 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11158
11159         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11160         in original form preparatory to Pango-ization and gdkimcontext-ization.
11161
11162 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11165         so that we can derive from gtkimcontext in language bindings properly.
11166
11167 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11168
11169         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11170         Add a compose table including (almost) all the compose combinations
11171         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11172         data in the XIM implementation.
11173
11174         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11175         Moved functions to convert keyvalues from and to unicode here from
11176         the win32 port and made them public.
11177
11178 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11179
11180         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11181
11182 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11183
11184         * gtk/gtkimcontext.[ch]: Base class for new input context system
11185
11186         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11187         the real input context implementation to be loaded from modules
11188         and switched on the fly.
11189
11190         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11191         context that just does direct keysymbol => unicode translation.
11192
11193         * gtk/gtkentry.[ch]: Start switching editing over to using
11194         GtkInputContext. (No handling of preedit yet.)
11195
11196 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11197
11198         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11199         many substitutions. (klass should not be subsituted.)
11200
11201 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11202
11203         * configure.in: Add checks for Pango
11204
11205         * configure.in docs/Makefile.am: Add test for sgml2html
11206         and allow 'make dist' without building html, but print out
11207         warnings in that case. (For making snapshots)
11208
11209         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11210         Add Pango libraries and C flags
11211
11212         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11213         Add function (gdk_draw_layout) to draw a pango layout.
11214
11215         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11216         for getting Pango contexts for GDK.
11217
11218         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11219
11220         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11221         editing.
11222
11223         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11224         keysym => unicode translations. More languages can be added
11225         here, but real input-method support is needed.
11226
11227         * docs/Changes-1.4.txt: Added note about entry behavior.
11228         
11229         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11230         to set the reading direction for a widget and the global direction.
11231         Add test which allows toggling the global direction. Two private
11232         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11233
11234         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11235           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11236
11237         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11238
11239         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11240         underlining now handled by Pango.
11241
11242         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11243         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11244         is temporary.)
11245
11246         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11247         convenience functions for creating contexts and layouts for widgets.
11248
11249         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11250
11251 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11252
11253         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11254         titles to be active, even if they aren't visible.
11255         (gtk_clist_column_titles_passive):  Ditto.
11256
11257 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11258
11259         * gtkmenu.c:
11260         * gtkmenu.h:
11261         * gtktypeutils.h: Spelling/grammar fixes in comments.
11262
11263 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11264
11265         * gdk/nanox/*.h: add missing header files.
11266
11267 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11268
11269         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11270         send_event to TRUE.
11271         (gtk_drawing_area_size): queue a resize.
11272
11273 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11274
11275         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11276         the handlers, also invalidate them. bug nailed down by Karl Nelson
11277         <kenelson@ece.ucdavis.edu>.
11278
11279 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11280
11281         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11282         "(nil)" foundries, patch from Grigorios Magklis.
11283
11284         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11285         on non-available fonts, based on a patch by Grigorios Magklis
11286         <maglis@cs.rochester.edu>.
11287
11288 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11289
11290         * gdk/x11/gdkregion-generic.c: If a region does not have any
11291         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11292         instead of GDK_OVERLAP_RECTANGLE_IN.
11293
11294 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11295
11296         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11297         OFFSCREEN, as it is no longer necessary.
11298
11299 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11300
11301         * gtk/gtkcolorsel.c: Patch from David Santiago
11302         <mrcooger@cyberverse.com> to change things so that the 
11303         indicator of the active palette entry is done independently,
11304         not via the focus, since it should always be visible.
11305
11306 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11307
11308         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11309         refcount leaks as in the X11 backend.
11310
11311         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11312         cosmetics.
11313
11314         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11315         backend. Add _gdk_windowing_window_destroy().
11316
11317         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11318         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11319         either, but these probably do exist on nanox?)
11320         
11321         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11322         which isn't necessarily defined by <math.h>.
11323
11324         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11325         ancestry past GtkObject.
11326
11327         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11328         from DLL on Win32.
11329
11330         * gtk/gtk.def: Update corresponding to recent changes.
11331
11332         * gtk/makefile.{cygwin,msc}: Updates.
11333
11334 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11335
11336         * docs/Changes-1.4.txt: A bit of editing.
11337
11338         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11339         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11340         to clear the update area for the window, and clear it
11341         when hiding a window.
11342
11343         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11344         if window destroyed.
11345
11346         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11347
11348         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11349         gdk_window_destroy() to the generic code, since there was a lot of 
11350         window-system-independent logic it in. Add a function:
11351         
11352          _gdk_window_destroy() 
11353
11354         to the internal API to destroy a window without unreferencing it.
11355         Add a function:
11356
11357          _gdk_windowing_window_destroy()
11358
11359         That does the windowing-system-dependent part of destroying 
11360         the window.
11361
11362 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11363
11364         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11365
11366 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11367
11368         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11369         Make gtk_widget_shape_combine_mask() keep a reference count on
11370         the pixmap since it keeps it around.
11371
11372 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11373
11374         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11375         leak.
11376
11377         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11378         leak with event filters.
11379
11380 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11381
11382         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11383         signal handlers with the right data arguments. (Fixes
11384         some warnings when a widget was repeatedly set as a drag
11385         destination.)
11386
11387         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11388         window so we can avoid avoid setting the DND properties on the
11389         toplevel window repeatedly.
11390
11391 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11392
11393         * gdk/win32/gdkwin32.h: Define more message types missing from
11394         mingw headers.
11395
11396         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11397         call gdk_window_destroy_notify(). It was never called. This
11398         probably meant that the GdkWindow was never freed. Thanks Owen for
11399         noticing (!).
11400
11401         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11402         window as destroyed before calling DestroyWindow(). DestroyWindow()
11403         causes a call to the window procedure (gdk_WindowProc), which
11404         calls gdk_event_translate(), which calls
11405         gdk_window_destroy_notify(), which gets confused unless the window
11406         is set as destroyed.
11407
11408         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11409         this function to indicate it's win32 only. Put inside #ifdef
11410         G_ENABLE_DEBUG.
11411
11412         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11413         debugging function. (gdk_event_translate:) Add a default branch
11414         that uses the above function to print debug messages with all
11415         Windows messages symbolically.
11416
11417         * gdk/win32/gdkprivate-win32.h: Declare it, and
11418         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11419
11420 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11421
11422         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11423         public header file.
11424
11425 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11426
11427         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11428
11429         * gtk/gtktext.c: made the adjustments no-construct args, simply
11430         provide default adjustments.
11431         (gtk_text_destroy): release adjustments.
11432
11433         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11434         adjustment argument non-construct.
11435
11436         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11437         instead of in finalize.
11438         (gtk_progress_get_text_from_value): 
11439         (gtk_progress_get_current_text): 
11440         (gtk_progress_set_value): 
11441         (gtk_progress_get_percentage_from_value): 
11442         (gtk_progress_get_current_percentage): 
11443         (gtk_progress_set_percentage): 
11444         (gtk_progress_configure): ensure an adjustment is present.
11445
11446 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11447
11448         * gtk/gtkcolorsel.[hc]:
11449         * gtk/gtkcolorseldialog.[hc]:
11450         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11451         their parent implementation, use bit fields for boolean values, don't
11452         create unused widgets, usage of glib types, braces go on their own
11453         lines, function argument alignment, #include directives etc. etc. etc..
11454
11455         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11456
11457 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11458
11459         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11460
11461         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11462         of NULL.
11463
11464         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11465         to freed data.
11466         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11467
11468         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11469         to NULL when the toplevel is getting destroyed.
11470         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11471         (gtk_menu_destroy): 
11472         (gtk_menu_init): store the information of whether we have to
11473         readd the initial child ref_count during destruction in a new
11474         GtkMenu field needs_destruction_ref_count.
11475
11476         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11477         here, those reading: learn from my mistake! ;)
11478         in order for set_?adjustment to support a default adjustemnt if
11479         invoked with an adjustment pointer of NULL, the code read (pseudo):
11480         if (v->adjustment) unref (v->adjustment);
11481         if (!adjustment) adjustment = adjustment_new ();
11482         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11483         now imagine the first unref to actually free the old adjustment and
11484         adjustment_new() creating a new adjustment from the very same memory
11485         portion. here, the latter comparision will unintendedly fail, and
11486         all hell breaks loose.
11487         (gtk_viewport_set_hadjustment):
11488         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11489         after unreferencing it.
11490
11491         * gtk/gtkcontainer.[hc]: removed toplevel registration
11492         functions: gtk_container_register_toplevel(),
11493         gtk_container_unregister_toplevel() and
11494         gtk_container_get_toplevels() which had wrong semantics
11495         anyways: it didn't reference and copy the list.
11496
11497         * gtk/gtkwindow.c: we take over the container toplevel registration
11498         bussiness now. windows are registered across multiple destructions,
11499         untill they are finalized. the initial implicit reference count
11500         users are holding on windows is removed with the first destruction
11501         though.
11502         (gtk_window_init): ref & sink and set has_user_ref_count, got
11503         rid of gtk_container_register_toplevel() call. add window to
11504         toplevel_list.
11505         (gtk_window_destroy): unref the window if has_user_ref_count
11506         is still set, got rid of call to
11507         gtk_container_unregister_toplevel().
11508         (gtk_window_finalize): remove window from toplevel list.
11509         (gtk_window_list_toplevels): new function to return a newly
11510         created list with referenced toplevels.
11511         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11512
11513         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11514         adjustment a non-construct arg.
11515         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11516         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11517         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11518
11519         * gtk/gtkrange.c: added some realized checks.
11520         (gtk_range_destroy): get rid of the h/v adjustments in the
11521         destroy handler instead of finalize. remove timer.
11522         (gtk_range_get_adjustment): demand create adjustment.
11523
11524         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11525         we simply create them on demand now and get rid of them in
11526         the destroy handler.
11527         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11528         destroy handler instead of finalize.
11529         (gtk_viewport_get_hadjustment): 
11530         (gtk_viewport_get_vadjustment): 
11531         (gtk_viewport_size_allocate): demand create h/v adjustment
11532         if required.
11533
11534         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11535         gtk_widget_real_destroy () functionality.
11536         (gtk_widget_real_destroy): reinitialize with a new style, instead
11537         of setting widget->style to NULL.
11538
11539 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11540
11541         * gtk/gtkcalendar.c:
11542         * gtk/gtkbutton.c: ported _get_type() implementation over to
11543         GType, either to preserve memchunks allocation facilities,
11544         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11545
11546         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11547         over. prepare for ::destroy to be emitted multiple times.
11548         removed reference tracer magic. chain into GObjectClass.shutdown()
11549         to emit ::destroy signal.
11550
11551         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11552         fundamental.
11553
11554         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11555         cludge.
11556
11557         * gtk/gtksocket.c:
11558         * gtk/gtkplug.c:
11559         * gtk/gtklayout.c:
11560         * gtk/gtklabel.c:
11561         * gtk/gtkargcollector.c:
11562         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11563         not being a fundamental anymore, and to work with the new
11564         type system (nuked fundamental type varargs clutter).
11565
11566         * gtk/*.c: install finalize handlers in the GObjectClass
11567         part of the class structure.
11568         changed direct GTK_OBJECT()->klass accesses to
11569         GTK_*_GET_CLASS().
11570         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11571
11572         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11573         GType. made most of the GTK_*() type macros and Gtk* typedefs
11574         simple wrappers around macros and types provided by GType.
11575         most notably, a significant portion of the old API vanished:
11576         GTK_TYPE_MAKE(),
11577         GTK_TYPE_SEQNO(),
11578         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11579         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11580         GTK_TYPE_ARGS,
11581         GTK_TYPE_CALLBACK,
11582         GTK_TYPE_C_CALLBACK,
11583         GTK_TYPE_FOREIGN,
11584         GtkTypeQuery,
11585         gtk_type_query(),
11586         gtk_type_set_varargs_type(),
11587         gtk_type_get_varargs_type(),
11588         gtk_type_check_object_cast(),
11589         gtk_type_check_class_cast(),
11590         gtk_type_describe_tree(),
11591         gtk_type_describe_heritage(),
11592         gtk_type_free(),
11593         gtk_type_children_types(),
11594         gtk_type_set_chunk_alloc(),
11595         gtk_type_register_enum(),
11596         gtk_type_register_flags(),
11597         gtk_type_parent_class().
11598         replacements, where available are described in ../docs/Changes-1.4.txt.
11599         implemented compatibility functions for the remaining API.
11600
11601         * configure.in: depend on glib 1.3.1, use gobject module.
11602
11603 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11604
11605         * TODO.xml: Various updates to current status.
11606
11607 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11608
11609         * gtk.m4: Print out version when test succeeds.
11610
11611 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11612
11613         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11614         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11615         
11616         (Original triangle color selector from Simon Budig
11617         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11618         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11619         Santiago <mrcooger@cyberverse.com>)
11620
11621         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11622         out into a separate widget.
11623
11624         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11625         and opacity controls.
11626
11627 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11628
11629         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11630         snuck in prematurely.
11631
11632 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11633
11634         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11635         had deleted a ! operator by mistake, which caused
11636         GDK_SELECTION_CLEAR events never to be generated, which caused
11637         only the first copy to the clipboard from an gtkeditable to
11638         actually cause a copy to the Windows clipboard.
11639
11640 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11641
11642         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11643         compilation, too. Current mingw gcc distributions include the
11644         necessary headers. Also the necessary IIDs are now in mingw
11645         headers/libraries, and own definitions unnecessary.
11646
11647         More hacking on OLE2 DND, still doesn't work though, and thus
11648         ifdeffed out.
11649
11650         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11651         here, too.
11652
11653 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11654
11655         * gdk/nanox/*: nano-X port work in progress.
11656         * gdk/simple.c: simple test for Gdk.
11657         * README.nanox: notes about the port: read this first!
11658         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11659         with nano-X.
11660
11661 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11662
11663         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11664         gdk_window_clear() into common code, implement in terms of
11665         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11666         not redirected to the backing rectangle.
11667
11668 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11669
11670         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11671         EXTRA_DIST. It does not work well when the file that
11672         everything depends on is not in the tarball.
11673
11674 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11675
11676         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11677         with recursion where process_updates() is called from
11678         an expose handler. (GtkTextView is highly broken in
11679         doing this, but it should work, so it is a nice test
11680         case.)
11681
11682 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11683
11684         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11685         handle the case where updates are queued during processing of
11686         updates.
11687
11688 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11689
11690         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11691         window is on gdk_display - use that instead of segfaulting.
11692
11693 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11694
11695         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11696         broken and require an empty arg, give it to them.
11697
11698 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11699
11700         * gtk/gtklabel.h: indentation fixes.
11701
11702 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11703
11704         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11705         draw too narrow or too low arcs, they seem to fail, at least with
11706         some display drivers.
11707
11708         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11709
11710         Large changes to the Win32 backend, partially made necessary by
11711         the changes to the backend-independent internal
11712         structures. Attempts to implement similar backing store stuff as
11713         on X11. The current (CVS) version of the Win32 backend is *not* as
11714         stable as it was before the no-flicker branch was merged. A
11715         zipfile with that version is available from
11716         http://www.gimp.org/win32/. That should be use by "production"
11717         code until this CVS version is usable. (But note, the Win32
11718         backend has never been claimed to be "production quality".)
11719
11720         * README.win32: Add the above comment about versions.
11721
11722         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11723
11724         * gdk/gdk.def: Update.
11725
11726         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11727         presumably be replaced by some more better mechanism as 1.4 gets
11728         closer to release shape.
11729
11730         * gdk/makefile.{cygwin,msc}: Update.
11731
11732         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11733         internal headers. Change code according to changes in these. Use
11734         gdk_drawable_*, not gdk_window_* where necessary.
11735
11736         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11737         our old DND.
11738
11739         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11740         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11741         Use correct function name in warning messages.
11742
11743         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11744         GSourceFuncs gdk_event_prepare and gdk_event_check.
11745         (gdk_event_get_graphics_expose): Do implement, use
11746         PeekMessage. Thanks to Hans Breuer.
11747         (event_mask_string): Debugging function to print an GdkEventMask.
11748         (gdk_pointer_grab): Use it.
11749
11750         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11751         (old) book I used claimed was Hangul actually is CJK Unified
11752         Ideographs Extension A. Also, Hangul Syllables were missing.
11753         Improve logging.
11754
11755         * gdk/win32/gdkgc-win32.c: Largish changes.
11756
11757         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11758         g_win32_getlocale() from GLib, and not setlocale() to get current
11759         locale name.
11760
11761         * gdk/win32/gdkprivate-win32.h
11762         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11763         gdkwin32.h, similarily as in the X11 backend.
11764
11765         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11766         assignment was used instead of equals in if test. Thanks to Hans
11767         Breuer.
11768
11769         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11770         the X11 version.
11771
11772         * gdk/win32/makefile.{cygwin,msc}
11773         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11774         path to the Win32 headers that works also with the mingw compiler.
11775
11776         * gtk/gtkstyle.c: Include <string.h>.
11777
11778 2000-04-26  Havoc Pennington  <hp@redhat.com>
11779
11780         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11781         replacing the broken gtk_label_get ()
11782
11783 2000-04-15  Havoc Pennington  <hp@pobox.com>
11784
11785         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11786         this keeps scanner scripts from getting confused.
11787
11788         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11789         data, rather than void
11790
11791 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11792
11793         * gtk/gtkclist.c (gtk_clist_motion)
11794         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11795         with is_hint FALSE, get x and y from the event. They used to be
11796         used uninitialised. The Win32 backend never sends motion events
11797         marked as hints. This for instance fixes the annoying file and
11798         font selector behaviour in the Win32 version.
11799
11800 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11801
11802         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11803         gtk_private_n_signals variables, they are used by some software,
11804         sigh.
11805
11806         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11807         installation directory from the Registry, where the installer
11808         should have put it.
11809
11810 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11811
11812         * gdk/x11/Makefile.am: Fix problem with installation directory for
11813         gdkx.h
11814
11815         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11816         <mrcooger@cyberverse.com> so that when selecting menus with the
11817         mouse, the first item will not be selected, but when selecting
11818         with an accelerator, or navigating left-right on a menubar with
11819         the menus popped up, the first item will be selected.
11820
11821 2000-04-05  Dan Damian  <dand@dnttm.ro>
11822
11823         * configure.in: Added "ro" to ALL_LINGUAS.
11824
11825 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11826
11827         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11828         indentation.
11829
11830         * Makefile.am (EXTRA_DIST): Fix typo.
11831
11832         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11833         to catch gdkconfig.h
11834
11835         * gtk/gtkitemfactory.c: Added FIXME.
11836
11837 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11838
11839         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11840         s/return_if_fail/return_val_if_fail/g and add a return value.
11841
11842 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11843
11844         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11845         merge slipup.
11846
11847         * gdk/gdkinput.h: Fix missing line from merge.
11848
11849 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11850
11851         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11852         instead of gdkprivate.h.
11853
11854 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11855
11856         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11857         parent class to correctly be GtkDialogClass.
11858
11859 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11860
11861         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11862         toplevel windows and their immediate children by their parents,
11863         since the size of toplevel windows is out of our immediate
11864         control and we don't get any real benefit from trying to track
11865         this size for clipping.
11866
11867         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11868         for input_only windows.
11869
11870         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11871         to fix some hacks and make sure that we don't try to set the
11872         background of input only windows.
11873
11874 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11875
11876         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11877         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11878         stuff that we've traditionally exposed.
11879
11880         * gdk/**.c: Use gdkinternals.h where appropriate.
11881
11882         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11883         not include gdkprivate-x11.h, move all stuff of conceivable public
11884         interest into gdkx.h; keep all really private stuff in
11885         uninstalled header gdkprivate-x11.h.
11886
11887         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11888         image->image_put on windows through a new function _gdk_window_draw_image()
11889         to allow us to do backing store for images. (Sort of ugly)
11890
11891         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11892         contexts locally so that we can offset them properly when drawing 
11893         onto backing pixmaps.
11894
11895         * gdk/gdkinput.h: Reindented
11896
11897         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11898         pixmap or color for the window, so we can properly initialize
11899         our double-buffer pixmaps, and also so that we temporarily set
11900         a background of None while scrolling.
11901
11902         * gdk/gdkregion.h: Revise region boolean operators to have an
11903         interface that is actually convenient - switch from creating new
11904         regions on every op, to "methods" that modify existing regions
11905         (A = A OP B). 3 argument forms which allow dest == src, would also
11906         be possible, but the current interfaces seem to map nicely
11907         onto what needs to be done. (There is quite a lot of region
11908         code in GDK now.)
11909
11910         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11911         operator.
11912
11913         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11914         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11915         to 32 bit coordinates, modify it to be mostly GTK+ style
11916         and to have interfaces that match gdkregion.h.
11917
11918         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11919         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11920         create a backing pixmap and redirect all drawing to
11921         that backing pixmap until a matching gdk_window_end_paint().
11922
11923         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11924         Create a special drawable class for GtkWindow's that 
11925         redirects the drawing to the backing pixmap as necessary
11926         and then calls the real operations in _gdk_windowing_window_class.
11927
11928         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11929         Store invalid region for each window. Generate expose events for invalid
11930         region in an idle. This replaces both the expose compression
11931         and the redrawing queuing in GTK+. It is both more efficient and
11932         simpler than either one individually and far more so then the
11933         combination.
11934
11935         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11936         Emulate 32 bit coordinates for windows with 16 bit coordinates
11937         by offsetting drawing, guffaw scrolling techniques and
11938         mapping/unmapping child windows as necessary.
11939
11940         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11941         where, when invalid regions are processed, the region is stored,
11942         and if expose events come in that are detectably duplicate
11943         the processed exposes (by comparison of event serial numbers),
11944         the stored region is subtracted out of those exposes.
11945
11946         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11947         regions newly exposed when scrolling or resizing windows.
11948         This, combined with forcing processesing of queued invalidated
11949         regions, gives nice flicker-free scrolling.
11950
11951         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11952         invalidated regions after every scroll.
11953
11954         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11955         emulation in GDK. Its, for all practical purposes just a
11956         GtkViewport/GtkFixed hybrid now.
11957
11958         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11959         (16-bit) structures as necessary instead of just casting.
11960
11961         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11962         in terms of the structures from gdkregion-generic.c, using appropriate
11963         offsets from GDK to X11 coordinates. Cache clip mask and
11964         origin and ts origin locally and only flush to the server
11965         when drawing, to avoid constantly setting and resetting these
11966         values when offsetting GC's for scrolling and backing pixmaps.
11967
11968         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11969
11970         * gtk/gtkcontainer.c: Call process_all_updates at end
11971         of resizing to reduce flicker. (Avoids having redraw
11972         lag arbitrarily behind resize under some circumstances)
11973
11974         * gtk/gtkentry.c: Remove old backing store code, and simply take
11975         advantage of the new backing store capabilities of GDK.
11976
11977         * gtk/gtkmain.c: Simple implementation of widget backing
11978         store - simply push a paint while handling each expose.
11979         (Should really be configurable widget for widget.)
11980         
11981         * gtk/gtkwidget.c: Remove all the old complicated redraw
11982         code, and simply invalidate the GDK windows from
11983         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11984         debugged complexity ... gone to the winds.)
11985
11986         Remove all the code for suppressing expose events while
11987         resizes are pending; this isn't needed since the invalid
11988         areas won't be processed until after the resizes are
11989         processed, since they are in a lower priority idle.
11990
11991 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11992
11993         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11994         and height of dest rectangle for non-intersecting rectangles.
11995
11996 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11997
11998         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11999         for GdkRectangle.
12000
12001 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
12002
12003         * gdk/gdk{events,image,private,types,window}.h
12004          gdk/x11/gdkinputprivate.h: Change all coordinates
12005          from int16 to int. Also, Change width and height from
12006          unsigned to signed to avoid all the stupid C 
12007          signedness bugs.
12008
12009 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
12010
12011         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
12012         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
12013         Add some more detailed checking.
12014
12015         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
12016         New function to retrieve the depth of a drawable.
12017
12018         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
12019         field, reorder fields to save memory. 
12020
12021 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
12022
12023         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
12024         of the background image instead of scaling the background down to
12025         a line.
12026
12027         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
12028         which temporarily set slider to wrong size.
12029
12030         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
12031         queue_clear().
12032
12033 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
12034
12035 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
12036
12037         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
12038
12039 2000-03-17  Tor Lillqvist  <tml@iki.fi>
12040
12041         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
12042         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
12043
12044         * gdk/win32/gdkfont-win32.c
12045         * gdk/win32/gdkproperty-win32.c
12046         * gdk/win32/gdkselection-win32.c
12047         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
12048         now declared such.
12049
12050 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
12051
12052         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
12053
12054 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
12055
12056         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
12057         is called without trapping X errors.
12058
12059 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
12060
12061         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
12062         way into the fontset lists.
12063
12064 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
12065
12066         * gtk/gtkthemes.h: add extern "C" scope.
12067
12068 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12069
12070         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12071         to make appends to the list constant. (gtk-guy-990901-0.patch)
12072
12073 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12074
12075         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12076         for the typename hash table.
12077
12078 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12079
12080         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12081         to make sure we never divide by zero. 
12082         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12083
12084 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12085
12086         * gtk/gtkfontsel.c: Apply patch from
12087         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12088         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12089
12090         Also, some cleanups in atom handling.
12091
12092 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12093
12094         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12095         not GtkWidget.
12096
12097 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12098
12099         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12100         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12101         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12102         more guint wrap-around bugs before going to bed.
12103
12104 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12105
12106         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12107         guint wrap arounds in allocation.width.
12108
12109         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12110         process untill we fit the allocation given.
12111
12112 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12113
12114         * gtk/gtkwidget.c:
12115         (gtk_widget_unrealize): guard widget access with ref/unref
12116         around signal emission.
12117         (gtk_widget_hide): same here, but also check its destroyed
12118         state before queueing a resize.
12119
12120 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12121
12122         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12123         of gtk_default_insensitive_bg as insensitive base color.
12124
12125         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12126         to the widget's state.
12127         (gtk_text_realize): same here.
12128         (gtk_text_state_changed): same here.
12129         (draw_bg_rect): compare background color against base[] from
12130         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12131
12132 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12133
12134         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12135         grabs are active, unless a delete event is send to the toplevel
12136         of the currently grab holding widget.
12137
12138 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12139
12140         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12141         debugging g_print's.
12142
12143 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12144
12145         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12146         ever make the scrolled-window requisition ever depend on the 
12147         visibility state of the scrollbars for the AUTOMATIC policy. 
12148         This breaks the GTK+ requisition model, and causes loops.
12149
12150 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12151
12152         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12153         the default font to avoid problems with XFree86-4.0 where the
12154         default charset is iso10646-1, not iso8859-1.
12155
12156 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12157
12158         * acinclude.m4
12159         * config.guess
12160         * config.sub
12161         * ltconfig
12162         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12163
12164         * gtk/Makefile.am: minor cosmetic consistency tweak
12165
12166 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12167
12168         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12169         the activate_time to 0, so that we handle a quick
12170         press/release press/release properly and don't suppress
12171         the second release. (Red Hat bug #7545)
12172
12173 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12174
12175         * gtk/gtkctree.c (row_delete):
12176         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12177         bugs with destruction notifier, *always* update internal
12178         structures *before* calling user code.
12179
12180 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12181
12182         A few more fixes for bug #5487, #2051, #2677.
12183         * gtk/gtkclist.c : 
12184         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12185         not GDK_BUTTON_PRESS.
12186         (resync_selection): resync only if selection_mode is
12187         GTK_SELECTION_EXTENDED
12188         * gtk/gtkctree.c (resync_selection): same here
12189
12190 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12193         gdk_drag_get_selection() and gtk_menu_detach().
12194
12195         [ From Jeroen Ruigrok/Asmodai ]
12196
12197 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12198
12199         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12200         page->tab_label can be NULL.
12201
12202 2000-01-25  Havoc Pennington  <hp@pobox.com>
12203         
12204         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12205         arg is boolean
12206
12207         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12208
12209         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12210
12211         * gdk/gdkproperty.c (gdk_property_get): return boolean
12212
12213         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12214
12215         * gdk/gdkim.c (gdk_im_ready): return boolean
12216
12217         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12218
12219         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12220         glib clash, should fix glib)
12221
12222         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12223         (gdk_get_show_events): return gboolean, and canonicalize 
12224         to TRUE/FALSE
12225
12226         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12227         colormap is private
12228         (gdk_colors_alloc): gboolean whether to be contiguous
12229         (gdk_color_equal): return gboolean since we are a predicate
12230         and not a qsort() (this looks semi-wrong due to glib breakage,
12231         IMO glib should be fixed)
12232         
12233         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12234         (gdk_get_use_xshm): return gboolean
12235         (gdk_pointer_is_grabbed): return gboolean
12236
12237         * gdk/gdk.h: Change prototypes to match all the above changes,
12238         and re-run egtk-format-protos as required.
12239
12240 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12241
12242         * gtk/gtkctree.c (resync_selection): 
12243         * gtk/gtkclist.c (resync_selection):
12244
12245         Return immediately if clist->drag_pos < 0. This is a workaround
12246         for the corrupt state that the clist gets into when a
12247         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12248
12249         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12250         
12251         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12252         variable from recent commit.
12253
12254 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12255
12256         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12257
12258 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12259
12260         * gtk/Makefile.am: prefix all autogenerated source that get build in
12261         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12262         in builddir. since we subsequently cd into srcdir for autogeneration,
12263         the paths have to be stripped from the target file names, thusly we
12264         use $(@F) as target names now.
12265         put a comment about configure.in's --disable-rebuilds option,
12266         which can be used for non-writable source directories, for development
12267         setups though, srcdir has to be *writable*.
12268
12269 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12270
12271         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12272           Finish the job of allowing event to be NULL.
12273           (Fixes bug #4283, reported by Chris Blizzard)
12274
12275         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12276           things so that the cursor appears on screen, properly
12277           take into account INNER_BORDER.
12278           (Fixes bug #4754, reported by Antonio Campos)
12279
12280 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12281
12282         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12283           show the tab_label unless it itself is visible.
12284
12285           gtk/gtknotebook.c (gtk_notebook_size_request):
12286           Do a better job of making sure that the visibility
12287           of the tab label corresponds to whether it should
12288           be mapped or not.
12289
12290 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12291
12292         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12293           Use the requisition, not the allocation, since the
12294           allocation has not necessarily been computed yet.
12295           (Pointed out by Eugene Osintsev)
12296
12297 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12298
12299         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12300           style/base[GTK_STATE_INSENSITIVE] both to
12301           gtk_default_insensitive_bg!
12302           (Bug #2187, reported by Jonathan Blandford)
12303
12304         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12305           Add Alt_L, Alt_R to list of invalid accelerators.
12306           (Bug #3736, reported by Vlad Harchev)
12307
12308 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12309
12310         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12311         bugs which occured after an attempt to open 
12312         invalid home directory left cmpl_state->reference_dir == NULL.
12313
12314          - completion on files in home directory didn't work
12315          - completion on an empty string caused  segfault
12316
12317          (Bug #3678, reported by Steve Ratcliffe)
12318
12319         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12320         cut and paste error that was causing scales to
12321         be incorrectly positioned.
12322         (Bug #2956,
12323          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12324
12325 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12326
12327         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12328         when checking for dcgettext, if we've found we needed
12329         it for dgettext.
12330 +
12331 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12332
12333         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12334         queue_clear on NO_WINDOW widgets during a reparent,
12335         since at that point the window and widget heirarchies
12336         are out of sync. This stops crashing in some cases
12337         (the scrolled window reparent test, for instance), and
12338         _probably_ won't cause drawing errors.
12339
12340         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12341         test do what it was supposed to do and be robust against
12342         window closings, etc. (Bug #2443)
12343
12344 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12345
12346         * gtk/gtkentry.c: Fix return values on mouse events.
12347         (Bug #2686, Sky <seb_sky@yahoo.com>)
12348
12349         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12350         (pointed out by George Lebl)
12351
12352         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12353         (From Ettore Perazzoli  <ettore@helixcode.com>)
12354  
12355 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12356
12357         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12358         clicks between rows or outside calender area correctly.
12359         (Patch from Damon Chaplin)
12360
12361         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12362         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12363           Call destroy function when overwriting existing data. 
12364           (Pointed out by Damon Chaplin)
12365
12366 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12367
12368         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12369           which was causing problems on various systems with Xmu.
12370           This hasn't been needed for a very long time.
12371           (Fixes #1185 3167)
12372
12373 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gdk/gdki18n.h: Include <ctype.h> when defining
12376           gdk_isw* in terms of is* as a fallback.
12377           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12378
12379 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12380
12381         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12382           realize the widget when it is size allocated!
12383           (old, old bug)
12384
12385         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12386           Removed unused call to gdk_window_get_size() that
12387           showed up when the above was fixed.
12388
12389 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12390
12391         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12392           fix up widget->window when the widget is a
12393           NO_WINDOW container widget.
12394
12395 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12396
12397         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12398           to account for the fact that feof() does _not_ 
12399           return TRUE on errors, and thus avoid infinite loops
12400           when trying to use gdk_pixmap_create_from_xpm()
12401           on unreadable values.
12402
12403 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12404
12405         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12406
12407 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12408
12409         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12410           gdk_gc_set_dashes to take gint8 instead of gchar to
12411           make it clearer that it is _not_ a NULL terminated string.
12412
12413         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12414           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12415           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12416           arguments.
12417
12418 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12419
12420         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12421         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12422         background size relative to our allocation, guard against small
12423         allocations, we may have not yet been size allocated.
12424
12425 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12426
12427         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12428         not just version == 3. We implement all 3 + most of 4 - 
12429         (we don't support matching text/plain;charset=iso-8859-1
12430         to a dest that expects text/plain). We'll still advertise
12431         3 to be safe, but any client implementing version >= 3
12432         must interoperate with 3.
12433         
12434 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12435
12436         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12437         background and gc members, add a warning in gtk_tooltips_set_color()
12438         indicating that this function is deprecated.
12439
12440 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12441
12442         * docs/gtkfaq.sgml: FAQ Update:
12443           - Minor cleanups (Emmanuel, me)
12444           - New questions:
12445                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12446                 How can I retrieve the text from a GtkMenuItem? (timj)
12447                 How do I validate/limit/filter the input to a GtkEntry? (me)
12448                 Memory does not seem to be released when I free the list
12449                         nodes I've allocated (timj)
12450
12451 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12452
12453         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12454         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12455         for which it is no use to call GetLastError onWin9x.
12456         (gdk_other_api_failed) New function, for general error
12457         reporting without calling GetLastError.
12458         (gdk_win32_api_failed) OTOH, this function always calls
12459         GetLastError. (gdk_win32_last_error_string) Remove this function,
12460         GLib has the equivalent now.
12461
12462         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12463         call them with function name, file name and line number in the
12464         arguments.
12465
12466         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12467         functions.
12468         
12469         * gtk/gtk.def: Add some missing entry points.
12470
12471         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12472         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12473         
12474         Fixes by Hans Breuer:
12475
12476         * gdk/makefile.msc: Update for debugging.
12477
12478         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12479         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12480         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12481         in the dash_list.
12482
12483         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12484         the x11 backend.
12485
12486         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12487
12488         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12489
12490 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12491
12492         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12493         just pixel value of background colour.
12494
12495         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12496         containing code snippet previously duplicated in a couple of
12497         places.
12498         
12499         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12500         gdk_colormap_color.
12501
12502         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12503         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12504         events for autorepeated Shift, Control and Alt keys. Use
12505         gdk_colormap_color.
12506
12507         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12508         pointer is inside the window the cursor of which we are setting,
12509         call SetCursor immediately.
12510
12511         * gdk/win32/makefile.cygwin
12512         * gtk/makefile.cygwin: If we don't have the build number stamp
12513         file, use zero.
12514
12515         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12516         gtk_paned_set_gutter_size as empty.
12517
12518         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12519         
12520 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12521
12522         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12523           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12524           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12525           docs/gtk_tut.sgml docs/gtk.texi TODO:
12526
12527           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12528
12529 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12530
12531         * gtk/gtkcalendar.c: Implement num_marked_dates,
12532           and don't emit mutiple day_selected signals on
12533           month_prev.
12534
12535 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12536
12537         * docs/make-todo (lineno): let title and logo be configurable so
12538         that GNOME can use this script too.
12539
12540         * TODO.xml: added logourl and a title
12541
12542 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12543
12544         * TODO.xml: Added some UI items, and an explanatory
12545         comment at the top of the file.
12546
12547 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12548
12549         * TODO.xml: some updates, added abunch of new entries.
12550         a note for those fiddeling with this file, when done
12551         with it, invoke:
12552         $ ./docs/make-todo TODO.xml >/dev/null
12553         and correct output errors before comitting changes.
12554
12555 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12556
12557         * TODO.xml: Added XML-structured TODO file.
12558         * docs/make-todo: python script to turn TODO.xml into
12559           pretty XML output. 
12560
12561 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12562
12563         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12564         the function to let it draw the seven dots, instead of the old,
12565         much maligned, method.
12566         (draw_dot): New function to draw a dot.
12567
12568         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12569         to draw the handle inside the border width as opposed to outside.
12570         Use paint function instead of gdk_draw_point.
12571
12572         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12573         to draw the handle inside the border width as opposed to outside.
12574         Use paint function instead of gdk_draw_point.
12575
12576         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12577         Change indenting to be more GTK like.
12578
12579 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12580
12581         * docs/gtk_tut.sgml: New section on GtkCalendar
12582         * examples/calendar: Update example code
12583
12584 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12585
12586         * docs/gtkfaq.sgml: FAQ Update
12587
12588 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12589
12590         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12591         to prevent the scroll event to be propagated upwards.
12592
12593 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12594
12595         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12596         OwnerGrabButtonMask from button entries for
12597         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12598
12599         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12600         to the event mask (which will result in button/press release
12601         being added to the event mask on Unix) so scrolling works
12602         for layouts in scroll windows.
12603
12604         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12605
12606         Patch from Anders Carlsson  <andersca@gnu.org> to add
12607         a scroll event.
12608
12609         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12610         scrolling to the "Test Scrolling" part of testgtk.
12611  
12612         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12613  
12614         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12615         it against GDK_SCROLL.
12616  
12617         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12618         way of mouse wheel scrolling.
12619  
12620         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12621  
12622         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12623  
12624         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12625  
12626         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12627         gdk_event_mask_table.
12628  
12629         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12630         GdkEventScroll handler.
12631  
12632         * gdk/gdkevents.h: Added GdkEventScroll structure.
12633  
12634 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12637         and Anders Carlsson to change the Paned widgets so that they
12638         can be dragged from anywhere along the length. Also change
12639         the way that this is drawn to make this apparent.
12640
12641         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12642         from George Lebl to check that option_menu->menu is present
12643         before getting history.
12644
12645 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12646
12647         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12648         before the assertion for non-NULL segment list.
12649
12650         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12651         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12652         machine, but it might be display driver dependent. Sigh, so make
12653         sure the stipple is that size. Does Windows suck or what?
12654
12655         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12656         places.
12657
12658 2000-02-13  Havoc Pennington  <hp@pobox.com>
12659
12660         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12661         refcount to 1
12662         (gdk_cursor_new): init refcount to 1
12663
12664         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12665
12666 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12667
12668         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12669         so that we don't have to do unnecessary settings to the HDC.
12670
12671         * gdk/win32/gdkdrawable-win32.c
12672         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12673         gdk_gc_predraw.
12674
12675         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12676         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12677         GDI paths, call WidenPath to get the outline of the stroken path,
12678         and then fill the outline (with the brush that was built from the
12679         stipple).
12680
12681         * gdk/win32/gdkgc-win32.c: Factor out common code from
12682         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12683         gdk_win32_gc_values_to_win32values. Use correct colour for
12684         SetBkColor() (Until now the code actually used a random colour in
12685         the call to SetBkColor()... but that didn't show up as not many
12686         GDI APIs use the background colour. Pattern (opaque stippled)
12687         brushes do.)
12688
12689         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12690         gdk_win32_api_failed): New functions for error logging.
12691
12692         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12693         WIN32_API_FAILED to call them, passing function or file name and
12694         line number.
12695
12696         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12697
12698         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12699         GdkColor for foreground and background in GdkGCWin32Data.
12700
12701         * gdk/makefile.cygwin: Link in the resource object separately.
12702
12703         * gdk/win32/rc/gdk.rc
12704         * gtk/gtk.rc (New file)
12705         * gdk/win32/makefile.cygwin
12706         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12707         as in GLib.
12708
12709 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12710
12711         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12712         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12713         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12714         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12715         parameters given and cursor->ref_count. coding style fixups.
12716
12717         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12718         not GtkWidget.
12719         
12720         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12721         fix up widget macros and add _GET_CLASS() variant.
12722         
12723         * gtk/*.c: some GtkType fixups.
12724
12725 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12726
12727         * gdk/win32/gdkproperty-win32.c
12728         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12729         were reversed.
12730
12731 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12732
12733         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12734         g_filename_to_utf8 to convert the font names Windows gives us from
12735         whatever is the default codepage to UTF-8.
12736         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12737         in the other direction.
12738
12739         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12740         error in debugging output.
12741
12742 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12743
12744         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12745         and height parameters to gdk_window_clear_area(). Not minus one.
12746
12747 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12748
12749         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12750         checks if the widget passed to gtk_drag_get_data() was not the
12751         dest widget.
12752
12753 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12754
12755         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12756         g_filename_from_utf8 functions (which were added a moment ago to
12757         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12758         size buffers.
12759
12760         gtk_file_selection_get_filename returns the filename in the C
12761         runtime encoding. It calls g_filename_from_utf8, but copies the
12762         returned string to a static buffer, which is returned. I think
12763         this is better than returning the result from g_filename_from_utf8
12764         directly, which would mean all apps that use it would have to free
12765         the return value. Or should this function care about this issue at
12766         all? Maybe a new function with clearly defined semantics.
12767
12768         * gtk/gtkfilesel.h: Add comment about
12769         gtk_file_selection_get_filename returning the filename in the C
12770         runtime's encoding.
12771
12772         * README.win32
12773         * gdk/gdk.def
12774         * gdk/makefile.{cygwin,msc}
12775         * gtk/gtk.def: Updates.
12776
12777         * gdk/gdkcursor-win32.c: Initialise refcount.
12778
12779 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12780
12781         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12782
12783 2000-01-30  Havoc Pennington  <hp@pobox.com>
12784
12785         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12786         destroy
12787
12788         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12789
12790         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12791         implemented in platform-specific code
12792
12793         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12794
12795         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12796         underscore in front
12797
12798         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12799         put an underscore in front
12800
12801         * gdk/gdkcursor.c: new file, implements
12802         gdk_cursor_ref/gdk_cursor_unref
12803
12804         * gdk/gdkcursor.h: Refcount GdkCursor
12805
12806         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12807
12808 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12809
12810         * gdk/gdkwindow.h
12811         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12812
12813 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12814
12815         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12816         structures to properly inherit from GtkWidget not GtkBin.
12817
12818 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12819
12820         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12821         (bug #5178 - Peter Wainright)
12822         
12823         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12824         so that it will be installed.
12825         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12826
12827 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12828
12829         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12830         for the GtkStyleClass vtable const.
12831
12832         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12833         take a const string argument like GtkTranslateFunc. This will
12834         require changes in use code.
12835
12836 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12837
12838         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12839         semantics (to mimic the X11 backend, which just calls XClearArea)
12840         is to check for zero width (and height), and in that case use the
12841         window's width minus x (height minus y). This fixes for instance
12842         some redraw problems with gtkclist, which were easily noticeable
12843         in the gtk file selection widget.
12844
12845         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12846         windows.
12847
12848 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12849
12850         * configure.in
12851         * gdk/Makefile.am
12852         * gdk/x11/Makefile.am
12853         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12854         (bug #5177).
12855         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12856         out later.
12857
12858 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12859
12860         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12861         WM_MOVE for iconified or invisible windows. This fixes various
12862         problems when minimising windows. Thanks to Bernd Herd.
12863
12864 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12865
12866         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12867         backend's draw_lines method, not draw_points.
12868
12869 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12870
12871         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12872         before Owen's reorganisation: Don't have queued_events and
12873         queued_tail statics in this file, but use gdk_queued_events and
12874         gdk_queued_tail. This makes exposure event compression work again.
12875
12876         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12877         seem to be needed?
12878
12879 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12880
12881         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12882         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12883         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12884         doesn't do anything.
12885
12886         * gdk/gdk.def: Add gdk_xid_table_insert.
12887
12888         * gdk/win32/gdkprivate-win32.h
12889         * gdk/win32/gdkevents-win32.c
12890         * gdk/win32/gdkinput-win32.c
12891         
12892         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12893         extension_events field in the GdkWindowWin32Data struct. Use only
12894         the extension_events field in GdkWindowPrivate. Previously one was
12895         set, and the other one tested, which broke tablet
12896         functionality. Thanks to Keishi Suenaga for pointing this out.
12897
12898 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12899
12900         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12901         When handling a single character (text length == 1), don't handle
12902         it as if it was UTF-8.
12903
12904 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12905
12906         * Makefile.am: Distribute README.win32.
12907         
12908         * gdk/Makefile.am
12909         * gdk/win32/Makefile.am: Distribute Win32 files.
12910
12911         * gdk/makefile.msc: New file.
12912
12913         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12914         after label).
12915
12916         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12917         gdk_error_code as GDKVAR, as they are referred outside GDK.
12918
12919         * gdk/win32/makefile.msc: Update.
12920
12921         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12922         tweaks. Check only if at least one of those Unicode subrange bits
12923         we care for is set. If no code page bits are set, guess (wildly)
12924         based on the charset.
12925
12926         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12927
12928         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12929         non-NULL.
12930
12931         * gtk/gtkdnd.c
12932         * gtk/gtklayout.c
12933         * gtk/gtkplug.c
12934         * gtk/gtkselection.c
12935         * gtk/gtksocket.c
12936         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12937         appropriate. There must be a cleaner way to handle this?
12938
12939         * gtk/gtkrc.c: Must include windows.h on Win32.
12940
12941         * gtk/testgtk.c: No need to include gdkx.h.
12942
12943         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12944
12945 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12946
12947         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12948         the rbearing is set to the same as the width, but this should be
12949         fixed.
12950
12951 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12952
12953         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12954         function. If Windows doesn't tell us what Unicode subranges a font
12955         covers, guesstimate based on the codepages it covers. This will
12956         hopefully help those Windows versions or fonts that don't give us
12957         any useful Unicode subrange information with GetTextCharsetInfo.
12958         Call this function in gdk_font_load_internal.
12959
12960         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12961         minor changes.
12962
12963 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12964
12965         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12966         New function, long needed.
12967
12968 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12969
12970         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12971         only_if_exists argument of gdk_atom_intern to
12972         bool.
12973
12974 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12975
12976         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12977         Fix two copy&paste errors.
12978
12979         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12980         win32 has changed.
12981
12982         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12983         GdkWin32SingleFont struct.
12984
12985         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12986         subranges of loaded fonts. Clear font signature first, in case
12987         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12988         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12989
12990         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12991         Unoffset clip region.
12992
12993 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12994
12995         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12996         event->any.window before calling filter functions.
12997
12998 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12999
13000         * gtk/gtkgamma.h: Adapt cast macros to standard.
13001
13002 [ Merges from 1.2 ]
13003
13004 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
13005
13006         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
13007         If translation does not include a '/', use entire
13008         translation instead of crashing.
13009
13010 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
13011
13012         * docs/gtk_tut.sgml:
13013         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
13014
13015 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
13016
13017         * gtk/gtkselection.c (gtk_target_list_remove): Use
13018         g_list_remove_link, not g_list_remove.
13019
13020         [ From Geert Bevin <gbevin@thunderstorms.org> ]
13021         
13022 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
13023
13024         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
13025         statement upon unselection (how the heck did that slip in?).
13026
13027 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
13028
13029         * gtk/gtktext.c (gtk_text_freeze): 
13030         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
13031         in frozen state (and aparently crashes). patch provided by Anders
13032         Melchiorsen <and@kampsax.dtu.dk>.
13033
13034 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
13035
13036         * fix insensitive default/focus widget activation,
13037         reported by Matt Goodall <mgg@isotek.co.uk>.
13038
13039         * gtk/gtkwindow.c (gtk_window_key_press_event): 
13040         (gtk_window_activate_default):
13041         (gtk_window_activate_focus):
13042         return handled=FALSE for actiavtion of insensitive default
13043         widgets. return handled=TRUE for activation of insensitive
13044         focus widgets. don't activate in either case.
13045
13046 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
13049         and $glib_cflags to match library order and in the
13050         theory that an old version of GLib is more likely to
13051         be in the include directory for X then vice-versa.
13052         (Bug #2776)
13053
13054 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13055
13056         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
13057         to determine the locale for fontsets, not LC_MESSAGES;
13058         the user may want English messages with a handling
13059         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
13060         will still be broken) (Bug #2891)
13061
13062 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13063
13064         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
13065
13066 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13067
13068         * gtk/gtkrc.ko: Changed the Korean default fontset.
13069
13070 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13071
13072         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13073         where when scrolling to the left or top double exposes
13074         were done, causing major slowdowns.
13075
13076 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13077
13078         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13079         names to lowercase and alphanumeric, before looking
13080         them up.
13081
13082         * gtk/Makefile.am: Install codeset variant gtkrc files
13083         with normalized names.
13084
13085 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13086
13087         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13088         popup menus when the menu is already visible, but its parent
13089         is still hidden, (happens after tornoff window got hidden).
13090
13091 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13092
13093         * gtk/Makefile.am (install-data-local): Fix
13094         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13095         deleted, causing error messages on install.
13096
13097 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13098
13099         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13100         the handle as well, since we now sometimes ignore
13101         exposes on the handle while resizing.
13102
13103 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13104
13105         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13106         extra g_free introduced in one of the last one or two 
13107         commits.
13108
13109 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13110
13111         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13112         consistent, put each style that a gtkrc.* file creates
13113         in a unique namespace, remove old files before installing.
13114
13115 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13116
13117         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13118         gtk_rc_init is called multiple times. (Yes, people who
13119         do that have bugs in their code.)
13120
13121 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13122
13123         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13124         Remove it since it's generated by the Makefile anyway
13125
13126 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13127
13128         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13129         device->info.axes for core pointer.
13130
13131 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13132
13133         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13134         idle_id, to deal with obsolete, broken C libraries.
13135
13136 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13137
13138         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13139         allocation->x/y twice!
13140
13141         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13142         consistent with gtk_vscale_pos_trough().
13143
13144 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13145
13146         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13147         be queueing a resize on a toplevel container between
13148         the time we show it and when we map it. So, we need
13149         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13150         use GTK_WIDGET_DRAWABLE() for child windows.
13151
13152 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13153
13154         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13155         (fixes bug #2144)
13156
13157 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13158
13159         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13160         container DRAWABLE (instead of VISIBLE), so we don't queue
13161         resizes on non-toplevel containers.
13162
13163 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13164
13165         * gtk/gtkselection.[ch]: Make the data argument
13166         const guchar *.
13167
13168 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13169
13170         * gtk/gtkwindow.c: Try to behave sensibly if 
13171         the focus widget is the window itself. (Should
13172         we allow this at all?)
13173
13174 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13175
13176         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13177         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13178         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13179         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13180         in prototypes and implementations consistent (Tomas Ogren).
13181
13182         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13183         before the widget is unparented (reported by damon).
13184
13185         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13186         since we provide unsigned data anyways.
13187
13188 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13189
13190         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13191         the call to gtk_tooltips_layout_text() until later.
13192
13193         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13194         Call gtk_widget_ensure_style() before using the style.
13195
13196 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13197
13198         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13199         for old widgets that don't propagate draws to all
13200         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13201
13202 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13203
13204         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13205         for a redraw but just the widget that requested the resize.
13206
13207 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13208
13209         * gtk/gtkcontainer.c: added new widget level method
13210         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13211         reallocate_redraws : 1 to reflect the setting, exported this through
13212         the argument system as a boolean ::reallocate_redraws.
13213
13214         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13215         on the widget because the allocation changes, do so as well for
13216         widget->parent if the parent has reallocate_redraws set to TRUE.
13217         with that containers requesting reallocation redraws get automatically
13218         redrawn if their children changed allocation (this unfortunately
13219         affects also other children that didn't change allocation, but we
13220         cannot work around that before 1.3).
13221
13222 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13223
13224         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13225         _and_ height are >0 (not _or_).
13226
13227         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13228         instead of gtk_container_queue_resize(), which is a core gtk internal
13229         function (must have been on crack when i queued that).
13230
13231         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13232         we can check more reliably if we want to discard expose events.
13233         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13234         flag.
13235         
13236         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13237         we simply trust these events. for deciding whether to discard exposes,
13238         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13239         
13240 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13241
13242         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13243         queues of areas that are completely off screen.
13244
13245         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13246         logic for handleboxes.
13247
13248         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13249         check on width/height.
13250
13251 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13252
13253         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13254         we are fine with using $@ the way we do (if we actually encounter
13255         brokeness with $@ in VPATH builds because of additional path prefixes,
13256         we need to use $(@F) actually).
13257
13258 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13259
13260         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13261         short lived bugs, that would allow language bindings to do surgeries
13262         to our guts.
13263
13264 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13267         where comparison was being done against an uninitialized
13268         value causing intermittant results depending on
13269         compiler flags. Also make it clearer that we aren't
13270         ever initializing the child as 0x0 (though this will
13271         be caught in gtk_widget_size_allocate())
13272
13273 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13274
13275         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13276         gtk_window_unset_transient_for() call after we do checks
13277         involving the old transient parent.
13278         [ From Lance Capser <lmc@cyberhighway.net> ]
13279
13280 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13281
13282         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13283         an empty file.
13284
13285 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13286
13287         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13288         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13289
13290 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13291
13292         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13293         `$@' is valid only in the build dir, not after we've done 
13294         `cd $srcdir'.  Also use `test -f' instead of less portable
13295         `test -e'.
13296
13297 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13298
13299         * gtk/gtktext.c (correct_cache_insert): Rewrite
13300          for simplicity, and hopefully correctness.
13301          (Fixes bug #1322, which was a segfault when
13302           on some insertions with the properties around
13303           the insertion set up just wrong.)
13304
13305         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13306          a "changed" signal, clamp the new value to the adjustment
13307          bounds to avoid segfaulting if someone tries to change
13308          the adjustment to a bogus value. (Bug #1795)
13309
13310 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13311
13312         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13313         for children, for toplevel windows handle them
13314         like delete_event.
13315
13316         * gtk/gtkplug.c: Add an unrealize handler so that
13317         we unref plug->socket_window when we are done
13318         with it.
13319
13320 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13321
13322         * gtk/gtktext.c (clear_area): Fix stupid signedness
13323          problem that was causing background to sometimes
13324          be misaligned.
13325
13326 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13327
13328         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13329         
13330         * gtk/gtkmenu.c (gtk_menu_position): Make
13331          sure we never position menus with negative x, y,
13332          since gtk_widget_set_uposition() can't handle that.
13333
13334         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13335          Modify the positioning code a bit so that we always
13336          put the top-left corner onscreen. (This is for
13337          UI reasons, gtk_menu_position() now takes care of
13338          gtk_widet_set_uposition() brokeness.)
13339
13340 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13341
13342         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13343
13344 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13345
13346         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13347           RC style that is passed in. The lack of the ref
13348           before was a bug. If people worked around this
13349           bug, this will introduce a slight memory leak
13350           in their code. The code should typically look like:
13351
13352             rc_style = gtk_rc_style_new ();
13353             [...]
13354             gtk_widget_modify_style (widget, rc_style);
13355             gtk_rc_style_unref (rc_style);
13356
13357         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13358           the style if it was already set.
13359
13360         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13361           style if it was set before.
13362
13363 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13364
13365         * gtk/testgtk.c (main): Add a check to see if we
13366           are being run from the correct directory and
13367           to quit nicely if we are not.
13368
13369         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13370           static.
13371
13372 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13373
13374         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13375
13376         * gtk/gtkwindow.c:
13377         queue resizes unconditionally (gtk_widget_queue_resize will figure
13378         what to do if the window is not realized).
13379         (gtk_window_move_resize): only recenter the window
13380         for GTK_WIN_POS_CENTER_ALWAYS.
13381         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13382         the same way as GTK_WIN_POS_CENTER.
13383
13384 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13385
13386         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13387         with (!(info->last_flags & GDK_HINT_POS)) instead of
13388         (!info->last_flags & GDK_HINT_POS).
13389
13390         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13391         new_height unconditionally, because we use these values even if
13392         !default_size_changed && !hints_changed.
13393         comented the (default_size_changed || hints_changed) case with
13394         respect to resize rejects from the window manager.
13395
13396         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13397         in the zvt condition hack, since this includes the window hints, set
13398         the hints after the handling_resize case.
13399
13400         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13401         window is initially shown with to the geometry.
13402
13403 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13404
13405         * gtk/gtkwindow.c (gtk_window_move_resize):
13406         s/size_changed/default_size_changed/g so i know what's
13407         really going on (frying brain on smaller flame now).
13408
13409 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13410
13411         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13412         we have size_changed upon handling_resize. this is a gross
13413         workaround for the broken zvt widget and should be removed in
13414         1.3 again (search for FIXME).
13415         Owen provided an accurate comment for this:
13416
13417         /* We could be here for two reasons
13418          *  1) We coincidentally got a resize while handling
13419          *     another resize.
13420          *  2) Our computation of size_changed was completely
13421          *     screwed up, probably because one of our children
13422          *     is broken. It's probably a zvt widget.
13423          *
13424          * For 1), we could just go ahead and ask for the
13425          * new size right now, but doing that for 2)
13426          * might well be fighting the user (and can even
13427          * trigger a loop). Since we really don't want to
13428          * do that, we requeue a resize in hopes that
13429          * by the time it gets handled, the child has seen
13430          * the light and is willing to go along with the
13431          * new size. (this happens for the zvt widget, since
13432          * the size_allocate() above will have stored the
13433          * requisition corresponding to the new size in the
13434          * zvt widget)
13435          *
13436          * This doesn't buy us anything for 1), but it shouldn't
13437          * hurt us too badly, since it is what would have
13438          * happened if we had gotten the configure event before
13439          * the new size had been set.
13440          */
13441
13442 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13443
13444         * gtk/gtkrc.c: deal properly with the fact that RC
13445           style lists may include rc styles more than once.
13446
13447         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13448           unused static function.
13449
13450         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13451           stack of directories of RC files currently being
13452           parsed and implicitely add them to pixmap path.
13453           
13454           This fixes a bug where the directory would get
13455           appended then overwritten by pixmap_path declarations.
13456
13457           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13458
13459         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13460           theme's exit function. (Patch from Peter Wainwright,
13461           bug #1454)
13462
13463         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13464           Add a destroy() handler to take care of removing
13465           group for menu item. (Fixes bug #1197)
13466
13467         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13468           in warning message.
13469
13470 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13471
13472         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13473         roundtrip to figure window's width and height, since we know that
13474         anyways from widget->allocation.
13475
13476 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13477
13478         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13479           the hints after we request the new size.
13480
13481 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13482
13483         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13484           GTK_WIDGET_REALIZED() assertion - we can compute the
13485           hints before we are realized.
13486
13487         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13488           hint changing so that we have a value of hints_changed
13489           when we decide whether to constrain the window size.
13490
13491         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13492
13493         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13494         change back to G_MAXINT.
13495
13496 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13497
13498         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13499         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13500         contain uncluttered values.
13501         (gtk_window_compute_hints): simply assert that window is realized
13502         and that geometry_info is valid, since we rely on this anyways.
13503         (gtk_window_constrain_size): major cleanups to the code.
13504         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13505         for the base size, instead of the minimums. use 32767 as max width
13506         and height (like in gtkwindow.c) instead of G_MAXINT.
13507
13508 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13509
13510         * cleaned up the GtkContainer.need_resize flag handling mess, we
13511         only need to force resize requests when we were prematurely
13512         realized, or our widget tree was modified when we were temporarily
13513         hidden. handling these cases directly upon showing the window (i.e.
13514         while the GdkWindow is still unmapped) avoids the need to wait for
13515         a configure event response and therefore makes the GUI more snappier
13516         and avoids blank windows during the roundtrip.
13517
13518         * gtk/gtkwidget.c:
13519         (gtk_widget_hide): 
13520         (gtk_widget_show): don't queue resizes on toplevels, they know how
13521         to deal with matters.
13522
13523         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13524         flag directly for not visible resize containers and spare us unecessary
13525         signal emissions.
13526
13527         * gtk/gtkwindow.c:
13528         (gtk_window_realize): if we need to enforce premature size allocation,
13529         queue a container resize so we are correctly resized later on.
13530         (gtk_window_init):
13531         (gtk_window_size_request):
13532         don't freak around with the ->need_resize flag,
13533         gtk_container_queue_resize() will care about that.
13534         (gtk_window_show):
13535         handle initial resizing issues here, we can handle matters better in
13536         this place, especially since we know that our GdkWindow is still
13537         unmapped.
13538         (gtk_window_move_resize):
13539         don't care about ->need_resize at all.
13540         handle size changes properly that occoured while we waited for a
13541         configure event.
13542
13543 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13544
13545         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13546         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13547         Move the hint setting code from gtk_widget_set_uposition
13548         to here; set the hints so that we respect any previously
13549         set geometry hints.
13550
13551         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13552         change the window hints here or move the window here,
13553         let that happen in gtk_window_move_resize().
13554
13555 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13556
13557         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13558         to already queued resizes (and therefore redraws) on a widget, check
13559         its anchestry as well.
13560
13561         * gtk/gtkcontainer.c:
13562         (gtk_container_queue_resize): clear resize widgets for resize
13563         containers before aborting prematurely. this is especially important
13564         for toplevels which may need imemdiate processing or their resize
13565         handler to be queued.
13566         (gtk_container_dequeue_resize_handler): added new internal function for
13567         gtkwindow.c.
13568
13569         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13570         configure event, take possible changes in window position into account
13571         as well.
13572         if we request a new window size, queue up a resize handler that will
13573         last until the configure event response arrives.
13574         combined the ->need_resize case (initial show) with the general size
13575         (hints) changed case and added even more comments.
13576         if !auto_shrink, only revert to the old allocation if the new size
13577         is smaller than the current allocation.
13578
13579 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13580
13581         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13582                            gtk_window_set_geometry_hints
13583                            gtk_window_set_default_size):
13584         When hints are set, queue a resize so that the hints will
13585         be eventually reset on the toplevel.
13586
13587         * gtk/gtkwindow.c (gtk_window_show): Use
13588         gtk_window_compute_default_size(). Clear the need_resize flag
13589         on the initail map so that we don't unnecessarily trigger the
13590         resize code.
13591
13592         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13593         into separate functions. Compare the hints we are setting
13594         with what we set last time so that we can accurately
13595         tell when we need to reset the hints.
13596
13597         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13598         function to figure out the size from requisition
13599         and default_size.
13600
13601         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13602         from fvwm to constrain a size to the geometry hints.
13603
13604         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13605         to compare two sets of geometry hints.
13606
13607         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13608         from gtk_window_set_hints(), just compute the hints,
13609         don't set them.
13610
13611         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13612         code from gtk_window_move_resize() to separate function,
13613         rationalize a bit.
13614
13615 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13616
13617         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13618         structure into a new private structure.
13619
13620         * gtkrc.c: Split GtkRcStyle into public/private.
13621         In the private part, add a list of pointers to the
13622         RcStyle lists this RcStyle participates in.
13623
13624         * gtkrc.c: When a RcStyle is free, remove all
13625         lists referencing it from the 
13626         realized_style_ht hash, and free those lists.
13627         
13628         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13629         gtk_rc_init(), since that adds the default styles
13630         to the list of parsed RC files again.
13631
13632         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13633         
13634 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13635
13636         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13637         checks that ensure that a widget's allocation is at least 1 in width
13638         and height. (GNOME note: this doesn't affect old panel code anymore,
13639         because GtkSocket will request width and height of at least 1 since
13640         Fri Jul 23).
13641
13642         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13643         allocated yet (happens if the user realizes the window prematurely),
13644         size request and allocate it.
13645         (gtk_window_size_allocate): guard against guint underflows.
13646
13647 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13648
13649         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13650         in gtk_built_sources, so gtk.defs gets built prior to all other
13651         sources.
13652
13653 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13654
13655         * gtk/Makefile.am:
13656         invoke indent on gtkmarshal.*. 
13657         rewrote source generation rules, use COPYING as oldest source tag for
13658         a piggyback rule to generate all sources from (don't touch it ;).
13659         major cleanups, strip spaces on build rules for GNU Make.
13660
13661         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13662         source and target files from commandline arguments. don't invoke indent.
13663
13664 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13665
13666         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13667         notebook after switch to avoid drawing problems.
13668         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13669         
13670         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13671         show them instead. 
13672         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13673
13674 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13675
13676         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13677         notebook after switch to avoid drawing problems.
13678         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13679         
13680         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13681         show them instead. 
13682         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13683
13684 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13685
13686         * gtk/gtkwindow.c:
13687         we use window->need_resize from configure_event now, to indicate that
13688         the gtkwindow should keep its allocation (e.g. because the user resized
13689         the window through window manager handles). resize_count is now reliably
13690         used to figure whether we got the allocation we requested from the
13691         window manager.
13692         configure events get queued as resizes now, the real stuff (size
13693         computation and allocation) now only goes on in gtk_window_move_resize().
13694         GtkWindow's requisition now contains its *real* requisition (like all
13695         other widgets), *not* taking usize into account.
13696         geometry_info->last_{width|height} is now updated from set_hints() only
13697         so it always contains the last hints we set for the window manager.
13698         made some event handlers return TRUE instead of FALSE.
13699         the overall code should be much more straight forward now, and the
13700         significant code portions are accompanied by comments now.
13701         (gtk_window_set_hints):
13702         removed requisition argument and made it
13703         fetch the requisition through gtk_widget_get_child_requisition.
13704         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13705         does that now.
13706         (gtk_window_show):
13707         ensure that the widget is realized before calling 
13708         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13709         ensure that we got properly size requested and allocated before
13710         realization.
13711         (gtk_window_configure_event):
13712         ignore plain window moves, or reallocate the widget tree through the
13713         resize queue otherwise.
13714         (gtk_window_move_resize):
13715         mostly rewrote this function to figure window manager hints more
13716         reliably, coalesce window moves and resizes to reduce configure events
13717         and do actuall size allocations.
13718
13719 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13720
13721         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13722         that have a resize pending, because a redraw is already queued for them.
13723
13724         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13725         hack to clear resize_widgets.
13726
13727         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13728         for resize containers prior to size allocation. (this is also a bit
13729         ugly, but avoids side effects for stopped emissions and is thus more
13730         reliable).
13731         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13732
13733         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13734         function from gtk_tooltips_expose, as we connect to ::expose_event
13735         *and* ::draw now.
13736
13737 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13738
13739         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13740         checks.
13741         (gtk_target_list_unref): Likewise.
13742
13743         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13744
13745 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13746
13747         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13748         guard against division by zero. (Fixes bug #1339)
13749
13750 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13751
13752         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13753         Prevent the trivial leak of information of allowing
13754         word motion when the entry is not visible.
13755
13756 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13757
13758         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13759         modality to error dialog as well as confirmation dialogs.
13760         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13761
13762 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13763
13764         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13765         tree->view_lines.
13766         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13767
13768         * gtk/Makefile.am (install-data-local): Solaris apparently
13769         has various troubles with ln -f; use rm first instead.
13770         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13771
13772 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13773
13774         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13775         use `cp' followed by `rm' (the `rm' was already there).
13776
13777 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13778         
13779         * configure.in: Fix autoconf warnings about cross compilation by
13780         trying to provide sane defaults for AC_TRY_RUN.
13781         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13782         put them into $(srcdir) when generated. Also add a dependency of
13783         gtksignal.h on gtkmarshal.h for -j builds. 
13784         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13785
13786 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13787
13788         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13789         GDK_THREADS_{LEAVE,ENTER} pair.
13790         (From Paul Fisher <pnfisher@redhat.com>)
13791
13792 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13793
13794         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13795         width and height are always >0 (owen).
13796
13797 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13798
13799         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13800         change that assured that a widget's allocated with and height are
13801         always >1, since this breaks *buggy* panel code. unfortunately this
13802         back-breaks the gimp's color selector.
13803
13804         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13805         allocation is always >0 in width and height, before sending the
13806         configure event; this is a *gross* hack to get the gimp back to work.
13807         
13808         * marked both cases with TODO-1.3
13809
13810 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13811
13812         * gtk/gtktext.c: Don't display wrap indicators when
13813         text is not editable and word wrap is on.
13814
13815 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13816
13817         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13818         option menus here as they are not derived from menu shell, assure that
13819         the option menu has a menu we can add items to.
13820
13821 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13822
13823         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13824         width/height to (gint) before calculations and check against < 0 to
13825         avoid guint wraparounds.
13826
13827 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13828
13829         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13830         width and height is never zero. sanity check both dimensions against
13831         32767 and issue a warning if the allocation is greater than that.
13832
13833 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13834
13835         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13836         to g_main_pending() as well.
13837
13838 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13839
13840         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13841         call to g_main_iteration() - since that will regrab
13842         GTK+ lock to process events.
13843
13844 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13845
13846         * gtk/gtkwindow.c
13847         - Regularize with the rest of GTK+ by making widget->requisition
13848           not reflect the set_usize()
13849         - Always recompute geometry hints, then check if they
13850           changed before sending them to the X server. The
13851           previous checks for changes would fail in a number
13852           of circumstances. 
13853
13854 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13855
13856         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13857
13858 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13859
13860         * gtk/gtkdnd.c:
13861         - Code cleanups
13862         - Instantaneously update on modifier key presses
13863         - Allow cancellation of the drag with Escape.
13864
13865 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13866
13867         * gtk/testgtk.c (create_handle_box): Set the policy
13868         to auto_shrink - otherwise the appearance is rather
13869         strange when flipping between horizontal and vertical.
13870
13871 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13872
13873         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13874         (gtk_window_set_default_size): don't change a value if it's < 0.
13875         queue a resize.
13876
13877 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13878
13879         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13880
13881 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13882
13883         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13884         add an extra "/" when concating "/" + filename.
13885         (From Matt Grossman <mattg@oz.net>)
13886
13887 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13888
13889         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13890         for fg_gc if we set it for drawing pixmap.
13891
13892 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13893
13894         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13895         
13896         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13897         already set, call old engine's destroy function and
13898         unref the old engine.
13899
13900 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13901
13902         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13903
13904 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13905
13906         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13907
13908 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13909
13910         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13911         expand behaviour changed.
13912
13913         * gtk/gtklabel.c (gtk_label_set_pattern):
13914         (gtk_label_set_justify):
13915         (gtk_label_set_line_wrap):
13916         don't bother invoking queue_clear, the reallocation does
13917         that for us, always free_words so the upcoming resize will
13918         relayout the label's contents.
13919
13920 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13921
13922         * applied argument implementation patches from Elena Devdariani
13923         <elena@cogent.ca>.
13924
13925         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13926         ::space_style, ::relief
13927         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13928         * gtk/gtkpreview.c: ::expand
13929         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13930         * gtk/gtknotebook.c: ::homogeneous
13931         * gtk/gtklabel.c: ::wrap
13932         * gtk/gtklist.c: ::selection_mode
13933         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13934         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13935         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13936         * gtk/gtkclist.c: ::sort_type
13937         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13938         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13939
13940 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13941
13942         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13943         comment.
13944
13945 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13946
13947         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13948         counting right when we have to attach a new style
13949         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13950
13951         * gtk/gtkstyle.c: Documented the refcounting
13952         peculularities of gtk_style_attach.
13953
13954 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13955
13956         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13957         window types.
13958
13959         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13960         of GTK_TOPLEVEL for creating the window.
13961
13962 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13963
13964         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13965         the last argument (reported by Per Winkvist).
13966         
13967 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13968
13969         Fixes for invisible XOR lines (Frank Loemker
13970         <floemker@TechFak.Uni-Bielefeld.DE>)
13971         
13972         * gtk/gtkclist.c (gtk_clist_realize): Always use
13973         a non-zero pixel for GDK_XOR.
13974
13975         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13976         Use GDK_INVERT instead of GDK_XOR.
13977
13978 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13979
13980         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13981         signals if h/voffsets differ from adjustment values.
13982         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13983
13984 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13985
13986         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13987         ::selection-done emissions up to the topmost menu shell.
13988
13989 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13990
13991         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13992         the user data on the window before destroying it.
13993
13994         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13995         unrealize handler to take care of destroying 
13996         notebook->panel properly. 
13997         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13998
13999         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
14000         of g_new and g_realloc to stop memory leak. (Actually,
14001         we could just use g_realloc(), but I'm not 100% sure
14002         that is portable).
14003         (Bug #1196 - Morten Welinder <terra@diku.dk>)
14004
14005 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14006
14007         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
14008
14009         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14010         for fontsets.
14011
14012         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
14013         with bin/button confusion.
14014
14015 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
14016
14017         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
14018         and show how preselection of radio items is done.
14019
14020 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
14021
14022         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
14023         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
14024         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
14025         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
14026         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
14027         * gtk/gtktable.c (gtk_table_attach): 
14028         * gtk/gtklist.c (gtk_list_insert_items): 
14029         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
14030         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
14031         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
14032         * gtk/gtkbin.c (gtk_bin_add): 
14033         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
14034         * gtk/gtkfixed.c (gtk_fixed_put): 
14035         * gtk/gtklayout.c (gtk_layout_put):
14036         general fixups to container_add logic. always realize child if
14037         child->parent is realized, only map the child and queue a resize
14038         if child and child->parent are both visible.
14039
14040 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
14041
14042         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
14043         instead of gtk_container_foreach to walk and unrealize children, so
14044         composite children get also unrealized.
14045         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
14046         (gtk_widget_map): assert that the widget is visible (basic constrain).
14047         (gtk_widget_real_map): assert that the widget is realized (basic
14048         constrain).
14049
14050 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
14051
14052         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
14053
14054 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
14055
14056         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
14057         file for iso-8859-2 locales.
14058
14059         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
14060
14061 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
14062
14063         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
14064          (Pointed out by andy@rz.uni-karlsruhe.de and others).
14065          Remove some suspicious and useless lines. 
14066
14067 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14068
14069         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14070         width,height = 0, 0 to mean - here to edge of window,
14071         instead of -1, -1, since the former is all we support.
14072
14073 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14074
14075         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14076         when removing from quit_functions list.
14077
14078 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14079
14080         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14081
14082 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14083
14084         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14085          When redrawing characters on non-visible entry, use appropriate
14086          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14087
14088 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14089
14090         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14091         from drag coordinates.
14092         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14093         use drag_dest_cell.
14094
14095         * gtk/gtktree (drag_dest_cell)
14096         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14097         (Bug #1129)
14098
14099 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14100
14101         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14102         translate_* fields.
14103         (gtk_item_factory_finalize): invoke translate_notify independant from
14104         translate_data.
14105         (gtk_item_factory_set_translate_func): likewise.
14106         (gtk_item_factory_destroy): only remove ifactory pointer from those
14107         widgets that belong to us (stupid me).
14108
14109 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14110
14111         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14112         rc_style list when lookup succeeeds.
14113
14114 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14115
14116         * gtk/gtkctree.c (resync_selection): 
14117         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14118         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14119         bug.
14120
14121 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14122
14123         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14124         Add some missing GDK_THREADS_ENTER()/LEAVE around
14125         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14126
14127 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14128
14129         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14130         rather than emit_by_name.
14131
14132         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14133         on the widget across multiple signal emissions.
14134         (gtk_editable_delete_text): same here.
14135         (gtk_editable_class_init): set widget_class->activate_signal after
14136         editable_signals[ACTIVATE] has been created.
14137
14138 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14139
14140         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14141         position here prematurely -- we might not have the
14142         right ->min_position and ->max_position yet.
14143
14144 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14145
14146         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14147         Add error traps so if the other end of the connection
14148         dies, we survive.
14149
14150         * gtk/gtkselection.c (gtk_selection_notify): Clean
14151         up properly when selection property retrieval fails.
14152         
14153         * gtk/gtkselection.c (gtk_selection_request): Correctly
14154         reject SelectionRequest notifies where the handler
14155         returns no data.
14156
14157 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14158
14159         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14160         when we've previously highlighted.
14161
14162         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14163         emit two "drag_leave" signals for Motif drops.
14164
14165         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14166         back the correct status messages when dropping from
14167         Motif onto a proxy window that is rejecting the
14168         drop.
14169
14170 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14171
14172         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14173         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14174         to compare two argument values. added gtk_arg_to_valueloc() to set a
14175         variable from an arg through its location (pointer).
14176
14177         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14178         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14179         as gfloat*, uchars are collected as guchar*, ints are collected as
14180         gint*, etc...
14181
14182 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14183
14184         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14185         Include <string.h> instead of <strings.h>.
14186
14187         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14188         (actually, a lot more duplicate includes occur if
14189          you trace through the sequence of #include's)
14190         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14191         
14192 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14193
14194         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14195         gtk-a-higuti-990322-[0-3]
14196
14197         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14198         that was causing -DX_LOCALE not to work.
14199
14200         * gtk/gtkrc.c (gtk_rc_init):
14201         X_LOCALE will never have LC_MESSAGES defined
14202
14203 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14204
14205         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14206         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14207
14208         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14209         left/right as well (gtk-michael-980726-0.patch.gz).
14210
14211         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14212         for pointer values, use gchar instead of char. fixed uline allocation
14213         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14214         chunks instead of G_ALLOC_ONLY.
14215         (gtk_label_size_request): always alter requisition as passed and leave
14216         widget->requisition alone.
14217         (gtk_label_set_text): allow NULL strings.
14218         (gtk_label_new): likewise.
14219
14220 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14221
14222         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14223
14224 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14225
14226         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14227         *and* mapped (i.e. drawable).
14228         (gtk_bin_expose): only send exposes to drawable children.
14229
14230         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14231         (gtk_box_expose): only send exposes to drawable children.
14232
14233         * gtk/gtkhscale.c (gtk_hscale_draw): 
14234         * gtk/gtkvscale.c (gtk_vscale_draw):
14235         hm, this is an ugly one. we first compute the size of our trough area
14236         here (window relative) and then check intersection with the draw_area
14237         which is parent relative because we're a NO_WINDOW widget, so we need
14238         to offset the trough area by allocation.x and allocation.y before the
14239         check. (this must not be done for the background area though, since
14240         that's already computed parent relative).
14241
14242 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14243
14244         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14245         unrealize title buttons.
14246
14247 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14248
14249         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14250         (gtk_clist_column_title_active): 
14251         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14252
14253         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14254         zero initialize event, removed superfluous gdk_window_get_pointer call
14255
14256         * gtk/gtklist.c (gtk_list_vertical_timeout)
14257         (gtk_list_horizontal_timeout): removed superfluous
14258         gdk_window_get_pointer call
14259
14260 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14261
14262         * plugging problems reported by "Bruce Mitchener, Jr."
14263         <bruce@puremagic.com> due to a purify session.
14264
14265         * gtk/gtkstyle.c:
14266         (gtk_style_ref): 
14267         (gtk_style_unref): assert ref_count to be > 0.
14268
14269         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14270         the requisition.
14271         (gtk_clist_set_shift): likewise.
14272
14273         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14274         adjustments.
14275
14276         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14277         event before sending it and set send_event to TRUE (which needs to
14278         be done for *all* synthesized events).
14279         (gtk_list_vertical_timeout): likewise.
14280
14281         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14282         leaks.
14283
14284         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14285         to TRUE when synthesizing events.
14286
14287 [ *** end of merges from 1.2 *** ]      
14288         
14289 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14290
14291         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14292         (or copied from gdkconfig.h.win32 on Win32, sigh).
14293
14294         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14295
14296         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14297
14298         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14299
14300         * gdk/gdkconfig.h.win32: New file.
14301
14302         * gdk/win32/makefile.cygwin: Build just a static archive here.
14303
14304         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14305         for the DLL from the static archive built above.
14306
14307         * gdk/gdk.def: Moved here from the win32 subdirectory.
14308
14309         * gdk/win32/*: Adapt for the changed private struct organisation.
14310
14311         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14312
14313 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14314
14315         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14316         for wheel mice (buttons 4 and 5).
14317
14318 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14319
14320         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14321         drawables use just the pixel field in the foreground and
14322         background GdkColor of the GdkGC.
14323
14324         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14325         GdkColors containing uninitialized (red,green,blue) fields, and
14326         just the pixel field filled in, and furthermore in the
14327         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14328         It thus turns out that we really don't need to have the full
14329         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14330         it later to have just the pixel values.
14331
14332 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14333
14334         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14335
14336 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14337
14338         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14339         New question on GtkLabel background colors.
14340
14341         * docs/gtk_tut.sgml:
14342           - Correct the example code callback
14343             function definitions.
14344           - Update the gtkdial example code, from Frans van Schaik.
14345           - Update setselection.c to current API.
14346
14347         * examples/Makefile examples/*/*.c: Update to code
14348         listed in tutorial.
14349
14350 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14351
14352         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14353         subrange table (from the "Developing International Software for
14354         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14355         block... Get the loaded font's charset correctly.
14356
14357         (Note that this, and the other *-win32.c files, still really are
14358         the old ones, the win32 subdirectory is not ready for compilation
14359         yet after the reorg.)
14360
14361 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14362
14363         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14364         check.
14365
14366 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14367
14368         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14369         on results of XQueryDeviceState().
14370
14371 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14372
14373         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14374         we need to accesss only ->children. We need an accessor
14375         for the children.
14376
14377         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14378         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14379         to get rid of gdkx.h include.
14380         
14381         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14382         and random references to 'None'.
14383
14384         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14385         Get rid of unused #include <gdk/gdkx.h>
14386
14387         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14388         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14389         gdkconfig.h.
14390
14391 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14392
14393         * gdk/win32/gdkdraw.c
14394         * gdk/win32/gdkfont.c
14395         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14396         following yesterday's changes. (Unrelated to Owen's reorg.)
14397
14398 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14399
14400         * gdk/x11/gdkinput-gxi.c: Add missing include,
14401           fix GdkWindowPrivate => GdkDrawablePrivate.
14402
14403         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14404
14405         * gdk/x11/Makefile.am (xinput_sources): Add missing
14406         backslash to fix building with --with-xinput=none
14407
14408 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14409
14410         Move all X specific code into the x11/ directory.
14411         Aside from shuffling things around, did the following:
14412
14413        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14414          gdk_arg_context_* - a simple argument parsing system
14415          in the style of popt.
14416
14417        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14418          gdk/x11/gdkprivate-x11.h:
14419          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14420          add ->klass and ->klass_data fields. The klass_data
14421          field points to an auxilliary structure that is
14422          windowing system dependent.
14423
14424        * gdk/gdkfont.c: Make most of the measurement functions
14425          simply wrappers around gdk_text_extents().
14426
14427        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14428          _gdk_font_strlen() function that hides the weird
14429          behavior in gtk+-1.[02] where a string is interpreted
14430          differently for 8-bit and 16-bit fonts.
14431
14432        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14433          to store common code for synthesizing double/triple
14434          press events.
14435         
14436        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14437          Make all the function that modify an existing GC
14438          simply wrappers around gdk_gc_set_values().
14439          
14440        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14441          for throwing out later.
14442
14443        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14444          GdkImagePrivate and GdkColormapPrivate to have a
14445          windowing system dependent part (GdkFontPrivateX etc.)
14446          that "derives" from the system-independent part.
14447
14448        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14449          Got rid of the included-source-files for XInput in
14450          favor of automake conditionals. (Which didn't exist
14451          when XInput support was originally added.)
14452
14453        * gdk/gdkrgb.c: Remove the visual id from the debugging
14454          statements since that is X11 specific; print out
14455          type/depth info instead.
14456          
14457
14458 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14459
14460         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14461         loading duplicates of hashed fonts.
14462
14463         * gdk/gdk.c (gdk_keysym_convert_case): rename
14464         gdk_XConvertCase to gdk_keysym_convert_case, allow
14465         results to be NULL in the GTK+ style.
14466
14467         * gdk/gdkcompat.h: Started compatibility header
14468         for renames.
14469
14470 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14471
14472         * gdk/win32/gdkprivate.h: New font private structures, related to
14473         fontsets.
14474
14475         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14476         gdk_font_list_free(). On X11, will just be wrappers to
14477         XListFonts() and XFreeFontNames(). On Win32, the code previously
14478         in gtkfontsel.c is now here.
14479
14480         New function gdk_font_xlfd_create(). On X11 will get the FONT
14481         property of the font (for GDK_FONT_FONTs), or call
14482         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14483         builds a XLFD style name from the font information in the LOGFONT
14484         struct(s).
14485
14486         New function gdk_font_xlfd_free(), which correspondingly frees the
14487         string returned by gdk_font_xlfd_create().
14488
14489         Implement fontsets on Win32. Add a function that iterates over a
14490         wide char string and calls a callback function for each substring
14491         of wide chars from the same Unicode subrange (and thus probably
14492         available in the same real font).
14493
14494         Improve the XLFD emulation a bit.
14495
14496         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14497
14498         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14499         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14500         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14501         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14502         ImmGetCompositionStringW() to get the composed Unicode chars.
14503
14504         * gdk/win32/gdkgc.c
14505         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14506         struct changes.
14507
14508         * gdk/win32/gdk.def: Add the new functions.
14509
14510 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14511
14512         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14513         get the Platform SDK to get <dimm.h>.
14514
14515         * gdk/win32/gdkevents.c: More event handling fixes and
14516         simplification. Never generate motion events with is_hint true. We
14517         used to do that on bogus grounds earlier. Windows sends
14518         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14519         moved, ignore these.
14520
14521         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14522
14523         * gdk/win32/gdkglobals.c
14524         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14525         the TrackMouseEvent function, and use it.
14526
14527         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14528         char before calling WideCharToMultiByte in order to get a string
14529         for the window title.
14530
14531         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14532
14533         * gdk/win32/gdk.def: Remove obsolete functions.
14534
14535         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14536         /nodefaultlib and /defaultlib switches.
14537
14538         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14539
14540 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14541
14542         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14543         EuroSign).
14544
14545         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14546         same type as GdkWChar, especially on Win32.
14547
14548         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14549
14550         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14551         before passing to Windows GDI for drawing etc. Convert to the
14552         system default codepage before passing to Windows as window
14553         titles.
14554
14555         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14556         support changing input locale on the fly.
14557
14558         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14559         on-the-fly changes. Convert incoming characters from the current
14560         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14561         on the current input language. Use keysym<->Unicode mapping tables
14562         and functions borrowed from xterm sources.
14563
14564         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14565         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14566         Manager) if available. IMEs and the Active IMM are available under
14567         the disguise of Chinese, Korean and Japanese support for IE and
14568         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14569         support is present in all editions (as long as you install it).
14570
14571         Call DispatchMessage from gdk_events_queue() (and thus
14572         gdk_WindowProc()), instead of duplicating the code in
14573         gdk_WindowProc().
14574
14575         Reworked the grab handling and propagation code, factored out
14576         duplicated code snippets into separate functions. Other cleanups,
14577         too.
14578
14579         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14580         the <dimm.h> header describing the Active IMM.
14581
14582         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14583         just do the same as for "single" fonts.
14584
14585         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14586         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14587         the new keysyms from gdkkeysyms.h.
14588
14589         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14590         fontset, so that gtkentry uses wide characters.
14591
14592         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14593         GTk+'s system directory "gtk+", not "gtk".
14594
14595 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14596
14597         * docs/gtkfaq.sgml: FAQ update
14598
14599 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gdk/win32/gdkprivate.h: Add more font private data.
14602
14603         * gdk/win32/gdkfont.c
14604         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14605         fonts and strings. Now works much better. You still have to
14606         have a correct font selected, though. No fontset emulation yet.
14607
14608 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14609
14610         * gtk/maketypes.awk: Use G_OS_WIN32.
14611
14612         * gtk/gtk.def: Add some missing entry points. Also some non-public
14613         ones, but PyGTK porter claims to need them.
14614
14615         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14616         built-in type generation.
14617
14618 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14619
14620         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14621         GDK_FONT_FONT fonts (which is all we have for now, we don't
14622         emulate fontsets). The X11 version uses plain XDrawString in that
14623         case, too. The string passed to gdk_draw_text_wc seems to be in
14624         fact (at least, when used by gtkentry and gtktext) either in a
14625         single-byte charset, or a DBCS. Not Unicode.
14626
14627         This fixes the problem in gtkfontsel, where even if you had
14628         selected a font with a non-Latin1 charset (windows-greek, for
14629         instance), the preview still used Latin-1 glyphs.
14630
14631         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14632         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14633         (gdk_font_load): Recognize the demibold etc weights, even if we
14634         don't have the corresponding constants in the headers.
14635         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14636         version. Should save font resources a bit, when we don't have
14637         multiple HFONTs for the same font.
14638
14639         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14640         version.
14641
14642 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14643
14644         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14645         X values
14646
14647 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14648
14649         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14650         layout support (as mentioned on
14651         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14652
14653 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14654
14655         * gtk/fnmatch.c
14656         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14657
14658 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14659
14660         * configure.in (ALL_LINGUAS): Added Galician (gl)
14661
14662 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14663
14664         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14665
14666         * gdk/win32/gdkcompat.c: New file, actually provide an
14667         implementation for the deprecated functions. (Just temporarily.)
14668
14669         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14670
14671         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14672
14673         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14674
14675 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14676
14677         * configure.in: Added "uk" to ALL_LINGUAS.
14678         
14679 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14680
14681         * configure.in: correct checking for BeOS check
14682
14683         * gdk/gdktypes.h
14684         * gtk/fnmatch.c
14685         * gtk/gtkfilesel.c
14686         * gtk/gtkitemfactory.c
14687         * gtk/gtkmain.[ch]
14688         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14689
14690 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14691
14692         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14693         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14694         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14695         by Bulgarian). 
14696
14697 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14698
14699         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14700         Fix a reference to window_private->destroyed.   
14701
14702         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14703         (ugly) setting of an internal GdkWindow member to use
14704         a _slightly_ cleaner macro.
14705
14706         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14707         GdkDrawablePrivate and GdkWindowPrivate.
14708         Add extra macros for accessing GDK_DRAWABLE_ components.
14709
14710         * *.[ch]: Massive adjustments for the above, use the
14711         new macros in a lot of places.
14712
14713 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14714
14715         * gdk/gdktypes.h: Make GdkDrawable the base type,
14716         not GdkWindow.
14717
14718 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14719
14720         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14721
14722 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14723
14724         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14725
14726 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14727
14728         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14729         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14730
14731         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14732
14733         * docs/gtk-config.1: Now autogenerated.
14734         * docs/Changes-1.4.txt: started
14735         
14736 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14737
14738         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14739         to #ifdef also here.
14740
14741         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14742         Owen did to the X11 backend.
14743
14744         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14745         ScrollWindowEx when blitting inside a window, it can't be correct
14746         in the general case.
14747
14748         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14749         WM_GETMINMAXINFO is easier.
14750
14751         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14752         depth equal to the bitspixel value, not the visual's depth.
14753
14754         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14755         to 24 even if the bitspixel value is 32.
14756
14757         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14758         need to check for depth==32 when bpp==32, depth will always be 24.
14759
14760 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14761
14762         * docs/Changes-1.4.txt: Started
14763         
14764         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14765
14766         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14767         
14768         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14769         into C file.
14770         
14771         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14772         header to gdkinputprivate.h.
14773
14774         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14775         unused since before 1.2.
14776
14777 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14778
14779         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14780         expand possible hex escapes in the font family (put there by
14781         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14782         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14783         On Win32, add hex escapes here, too.
14784
14785 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14786
14787         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14788         to #ifdef GDK_WINDOWING_X11.
14789
14790 [ Merges from gtk-1-2 ]
14791
14792 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14793
14794         * configure.in: fixed "GNU Make" check to pass with new make version
14795         3.77.95.
14796
14797 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14798
14799         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14800         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14801         AM_PATH_GTK() macros don't get confused by the -pre1.
14802
14803 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14804
14805         * configure.in (REBUILD): Change check for perl5
14806           to check explicitely for v >= 5.002. (5.001
14807           does not work with our scripts.)
14808
14809 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14810
14811         * configure.in: evaluate $PERL for the perl version check. added
14812         --disable-rebuilds to give the user an option to completely disable
14813         any source autogeneration rules.
14814
14815 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14816
14817         * configure.in: evaluate $ac_make when checking for GNU Make.
14818
14819 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14820
14821         * docs/Makefile.am: added generation.txt.
14822
14823         * Makefile.am: require automake 1.4, build README from README.in and
14824         INSTALL from INSTALL.in in dist-hook.
14825         
14826         * README.in:
14827         * INSTALL.in: new files to autogenerate README and INSTALL from.
14828
14829         * configure.in: figure whether we have GNU Make
14830
14831         * docs/generation.txt: minor additions/corrections.
14832
14833 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14834
14835         * docs/gtkfaq.sgml: FAQ Update
14836
14837 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14838         
14839         * configure.in: Fix autoconf warnings about cross compilation by
14840         trying to provide sane defaults for AC_TRY_RUN.
14841
14842 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14843
14844         * ltconfig
14845         * ltmain.sh: upgrade to libtool 1.3.3
14846
14847 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14848
14849         * INSTALL: Indicate that the --with-glib= configure
14850         time flag is unsupported.
14851
14852 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14853
14854         * docs/generation.txt: Added a file that gives
14855         documenation about the autogeneration process for
14856         various autogenerated files.
14857         
14858 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14859
14860         * configure.in (LIBS): Look for libgmodule in the
14861         right location.
14862
14863 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14864
14865         * docs/gtk_tut.sgml: Removed references to
14866         code examples in my directory on gtk.org as
14867         they should all be in the tutorial now.
14868
14869         * docs/gtk_tut.sgml: Added sources for dial-test
14870         and scribble-xinput programs that were previously
14871         missing.
14872
14873 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14874
14875         * TODO: Added entry about menu keyboard navigation, removed
14876         some finished items.
14877
14878 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14879
14880         * acinclude.m4: Standardize on func_dgettext
14881         not func_gettext, so that the checks for dgettext
14882         actually are paid attention to.
14883
14884 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14885
14886         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14887         directly, rather than repeating the checks for
14888         gettext.
14889
14890         * INSTALL: Added information about gettext and
14891         NLS support.
14892
14893         * acinclude.m4 (LIBM): Check for dgettext, not
14894         just gettext. This should hopefully fix things wrt
14895         systems with old versions of GNU gettext installed.
14896
14897 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14898
14899         * configure.in (LIBS): Look for libgmodule in the
14900         right location.
14901
14902 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14903
14904         * autogen.sh: add --enable-maintainer-mode
14905
14906         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14907
14908 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14909
14910         * docs/gtk-config.1.in:
14911           docs/Makefile.am:
14912           configure.in: gtk-config is now generated.
14913
14914         * docs/gtk-config.1: Removed, now generated.
14915
14916 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14917
14918         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14919         handle CreateNotify itself, still put out a debuging message for
14920         --gdk-debug=events. made the ReparentNotify debugging message more
14921         verbose.
14922         wrap xcoords translation for ConfigureEvents into an error trap,
14923         a destroy event may already be pending, and in that case, the
14924         actuall coordinate values are not at all critical.
14925
14926 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14927
14928         * gdk/gdkcc.c: Stop leaking the color_hash all over
14929         the place. Simplify and improve the logic.
14930
14931 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14932
14933         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14934         for prototypes and function implementations consistent (reported
14935         by Tomas Ogren).
14936
14937 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14938
14939         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14940         send_event set in debugging output.
14941         (gdk_compress_exposures): default initialize the event so we don't
14942         operate on bogus values (namely send_event).
14943
14944 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14945
14946         * gdk/gdkwindow.c: When we receive an unexpected
14947         destroy notify on one of our windows, don't just
14948         warn about it, also mark our windows as destroyed.
14949
14950 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14951
14952         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14953           name => font and name => fontset hashes. The 
14954           name => fontset hash is a _big_ win since we
14955           weren't previously caching fontsets at all and loading
14956           fontsets is expensive. The name => font hash
14957           is less of a win, but it does save us from doing
14958           repeated XQueryFont calls on the same font.
14959
14960         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14961           list so we can remove font/fontset from hash.
14962
14963 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14964
14965         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14966           and slightly confusing test. [ XInternAtom (,,TRUE)
14967           will never return None ].
14968
14969 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14970
14971         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14972           gdk/gdkwindow.c (gdk_window_set_hints):
14973
14974         Don't omit setting the properties if flags == 0 -
14975         there may be an existing set of properties there
14976         already. (Very old bug. Would it be better to
14977         delete the property instead?)
14978
14979         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14980           spelling error in comment.
14981
14982 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14983
14984         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14985           to avoid stomping over gdk_error_warnings.
14986
14987         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14988           as (bits_per_pixel + 7) / 8. This gives the same
14989           result as before for multiples of 8, but actually
14990           a "reasonable" value for 1bit or 4bit displays.
14991
14992 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14993
14994         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14995         GNU Make.
14996
14997 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14998
14999         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
15000         discarding configure events.
15001
15002 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15003
15004         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
15005         refcount is greater than zero.
15006
15007         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
15008
15009         * gdk/gdkfont.c (gdk_font_unref): Likewise.
15010
15011         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
15012
15013         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
15014
15015 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15016
15017         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
15018         that format 32 => sizeof(item) == 4. It really is
15019         sizeof(long).
15020
15021 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
15022
15023         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
15024         core dump at all on X IO errors, only core dump
15025         if --enable-debug for X errors.
15026
15027 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
15028
15029         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
15030         unknown window:" message. disabled ConfigureNotify discarding code,
15031         because it led to events being processed out of order.
15032
15033 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
15034
15035         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
15036
15037         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
15038         we export this function, supress error warnings and don't reset the
15039         error code in the first half of this function.
15040
15041         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
15042         code (instead of just -1) so gdk_error_trap_pop() reveals something
15043         actually informative about the error that happened.
15044
15045         * gdk/*.c:
15046         don't rely on gdk_error_code being -1 if an error occoured, but just
15047         gdk_error_code != 0.
15048
15049 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
15050
15051         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
15052         pointer *before* invoking the filter function, so we at least don't
15053         crash if a filter is removed that is currently executed. window filters
15054         *really* need to be made truely reentrant at some point.
15055
15056 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
15057
15058         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
15059         PropertyNotify debug messages.
15060
15061 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
15062         
15063         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
15064         
15065         * gdk/gdkim.c: Fix cut-and-paste errors for 
15066         x/y and PreeditAttributes/StatusAttributes.
15067
15068 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15069
15070         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15071         G_MAXINT to 2^16 to alleviate overflow problems in
15072         various window managers.
15073
15074 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15075
15076         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15077         for fontsets.
15078
15079 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15080
15081         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15082         Initialize size_hints.x and size_hints.y because kwm
15083         brokenly pays attention to them.
15084         (Bug #1181 -  Lars Heete <hel@admin.de>)
15085
15086 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15087
15088         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15089         return value of gdk_list_visuals(). 
15090         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15091
15092 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15093
15094         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15095         XSetIMValues to (void *) when comparing to NULL, to workaround
15096         the problem of some compilers barfing since older X headers don't
15097         have the prototype for it.
15098
15099 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15100
15101         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15102         for pseudocolor where colormap->colors was double
15103         allocated.
15104
15105         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15106         color value in the hash table with the pixel filled
15107         in so when we do later hash table lookups, the color
15108         value is correct.
15109         
15110 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15111
15112         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15113         making the call
15114
15115 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15116
15117         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15118         pointed out by Morten Welinder <terra@diku.dk>.
15119
15120 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15121
15122         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15123           default filter from the list
15124
15125 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15126
15127         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15128           default filter from the list
15129
15130 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15131
15132         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15133
15134         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15135         g_strdup_printf instead of calcing the length separately
15136
15137 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15138
15139         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15140         that we don't do in many other places. (Fixing duplicate 
15141         #include of config.h)
15142
15143         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15144         Otherwise, #ifndef XINPUT_NONE check in the latter
15145         doesn't work. (Bug #546)
15146
15147 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15148
15149         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15150         "None" case insensitive.
15151
15152 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15153
15154         * gdk/gdkselection.c: 
15155         Add error traps so if the other end of the connection
15156         dies, we survive.
15157
15158 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15159
15160         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15161         dest_xid field into two fields - one for the window
15162         to send in messages, one to indicate the last looked
15163         up window for caching purposes. This is needed, so
15164         that Leave messages get the correct window.
15165
15166 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15169         Fix warning created by people mucking around
15170         with the gsource API.
15171
15172         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15173         Change mapping between GIOCondition and GdkInputCondition
15174         to match the way the Linux kernel does it. This should
15175         fix problems where closed pipes were no longer signalling
15176         GDK_INPUT_READ on systems with a native poll().
15177
15178 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15179
15180         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15181         explicitly for the string "None" - it is in the XPM
15182         spec and some servers treat unknown colors in odd ways
15183         (like asking the user!)
15184
15185 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15186
15187         * gdk/gdkevents.c: made "->" into a "." of previous change so
15188         it compiles
15189
15190 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15191
15192         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15193         window field of the event structure before calling
15194         user filters.
15195
15196 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15197
15198         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15199         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15200
15201 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15202
15203         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15204         intermediate text property - prevents major memory
15205         leak when gdk_use_mb.
15206         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15207
15208 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15209
15210         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15211         gtk-a-higuti-990322-[0-3]
15212
15213         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15214         sizeof(wchar_t) != sizeof (GdkWChar)
15215
15216         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15217         that was causing -DX_LOCALE not to work.
15218
15219         * gtk/gtkrc.c (gtk_rc_init):
15220         X_LOCALE will never have LC_MESSAGES defined
15221
15222         * gdk/gdk.c (gdk_init_check):
15223         Remove --xim-preedit and --xim-status from argv properly.
15224
15225         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15226         that the client window is present on the X server
15227         before we pass it to the input method.
15228
15229 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15230
15231         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15232         if --display is specified on the command line, than
15233         the drag window will not be created on that display.
15234         
15235 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15236
15237         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15238         lookups with only_if_exists == TRUE were inserting
15239         bogus values into the atom cache.
15240
15241 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15242
15243         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15244         then reset it to NULL.
15245
15246         * gdk/gdkcolor.c:
15247         (gdk_colors_free): 
15248         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15249         key for g_hash_table_remove() in both functions, this prevents us
15250         from accessing possibly uninitialized portions of a GdkColor structure
15251         where we are only interested in its pixel value.
15252
15253 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15254
15255         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15256         font hash table, if we have a GdkFontPrivate entry for this font
15257         already, simply increment its reference count, provided by Olaf Dietsche
15258         <olaf.dietsche+list.gtk@netcologne.de>.
15259
15260 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15261
15262         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15263         just to be sure.
15264
15265         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15266         unused variables, leftovers from the X11 version.
15267
15268         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15269
15270         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15271         downcase fields on X11.
15272
15273 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15274         
15275         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15276         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15277
15278 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15279
15280         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15281
15282         * gtk/makefile.msc: Correct path to libintl.
15283
15284         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15285         use of gint vs. int, and gint vs. gboolean in headers and
15286         definitions. Use GtkType for the *_get_type functions. Note that
15287         these changes preserve binary compatibility.
15288
15289         * gdk/gdk.c
15290         * gdk/win32/gdk.c
15291         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15292
15293         * gtk/gtkmain.c
15294         * gtk/gtkclist.c
15295         * gtk/gtkmenufactory.c
15296         * gtk/gtknotebook.c
15297         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15298         vs. gboolean.
15299
15300         * gtk/gtkcolorsel.[ch]
15301         * gtk/gtkcombo.[ch]
15302         * gtk/gtkdrawingarea.[ch]
15303         * gtk/gtkgamma.[ch]
15304         * gtk/gtkhandlebox.[ch]
15305         * gtk/gtkhpaned.[ch]
15306         * gtk/gtkhruler.[ch]
15307         * gtk/gtkplug.[ch]
15308         * gtk/gtkpreview.[ch]
15309         * gtk/gtkruler.[ch]
15310         * gtk/gtksocket.[ch]
15311         * gtk/gtkstatusbar.[ch]
15312         * gtk/gtktoolbar.[ch]
15313         * gtk/gtkvbbox.[ch]
15314         * gtk/gtkvpaned.[ch]
15315         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15316         functions.
15317
15318         * gtk/gtkgamma.h: Fix bug, missing () in call of
15319         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15320
15321 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15322
15323         * gdk/gdkcolor.c (gdk_colormap_new)
15324         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15325         colormap->colors was allocated twice.
15326
15327         * gdk/win32/gdk.c: Remove some unused stuff.
15328
15329         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15330         colormap.
15331
15332         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15333         * gtk/gtklabel.h (gtk_label_get_type)
15334         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15335         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15336         in a couple of places, not guint.
15337
15338 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15339
15340         * configure.in,po/et.po: added Estonian language file
15341
15342 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15343
15344         * configure.in,po/da.po: added Danish file
15345
15346 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15347
15348         * docs/gtkfaq.sgml: Minor FAQ Update
15349
15350 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15351
15352         * docs/gtkfaq.sgml: FAQ update
15353
15354 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15355
15356         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15357         way to get window contents continually refreshed while resizing. I
15358         didn't like the effects myself, so it's not on by default.
15359
15360         * gdk/win32/gdkprivate.h: New flag variable
15361         gdk_event_func_from_window_proc, FALSE by default.
15362
15363         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15364         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15365         are passed --gdk-event-func-from-window-proc.
15366
15367         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15368         and we have am event_func, call it instead of enqueing the event.
15369
15370 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15371
15372         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15373         Kelley: Set expose_count in GdkEventExposes correctly.
15374
15375         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15376         MULTIPLE_WINDOW_CLASSES).
15377
15378         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15379         for bug in NT, apparently NT *does* draw the end pixel, too, in
15380         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15381
15382 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15383
15384         Improvements by Hans Breuer: 
15385
15386         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15387
15388         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15389         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15390         window contents while dragging" is turned on. Allocate at least
15391         one unique class for every GdkWindowType. If support for single
15392         window-specific icons is ever needed (eg. Dialog specific), every
15393         such window should get its own class.
15394
15395 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15396
15397         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15398         error that caused crashes.
15399
15400 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15401
15402         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15403         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15404         bugs when for instance part of the window was outside the
15405         display. Thanks to Philippe Colantoni for finding and fixing this.
15406
15407 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15408
15409         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15410         endpoint calculations which were totally wrong. (A little RTFMing
15411         helps a lot ;-)
15412
15413         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15414         from a separate directory, not from gettext, because of licensing
15415         issues (we want to use the LGPL version).
15416
15417         * README.win32: Mention the intl from glibc vs from gettext issue.
15418
15419 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15420
15421         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15422         in the key event handling: Now AltGr chars work again. Also,
15423         now Alt-digits are passed up as well as Control-digits.
15424         Pass keypad plus and minus as normal plus and minus.
15425
15426 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15427
15428         * docs/gtkfaq.sgml: FAQ Update
15429
15430 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15431
15432         * README.win32
15433         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15434         the Wintab SDK.
15435
15436         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15437         OK, but getting closer. Guard against bogus tilt data from Wacom
15438         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15439         enable easier building without Wintab.
15440
15441         * gdk/win32/gdkinput.h
15442         * gdk/win32/gdkevents.c 
15443         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15444         
15445         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15446         code. As we have just one visual on Win32, no sense to have it in a
15447         table, and no need for the hash table.
15448
15449         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15450         better on white background.
15451
15452 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15453
15454         * README.win32: Update gcc build instructions. Mention gettext is
15455         GPL.
15456
15457         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15458         supported cursor size with GetSystemMetrics.
15459
15460         * gdk/win32/gdkfont.c
15461         * gtk/gtkfontsel.c: Guard against some font weight and charset
15462         symbols being undefined (in mingw32 headers).
15463
15464         * gdk/win32/makefile.cygwin
15465         * gtk/makefile.cygwin
15466         * gtk/gtkthemes.c: No longer need to have differently named
15467         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15468
15469 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15470
15471         * docs/gtkfaq.sgml: Long awaited FAQ update.
15472
15473 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15474
15475         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15476         it. Obscure bit manipulation needed.
15477
15478         * gdk/win32/gdkevents.c: Logging.
15479         
15480         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15481         style (file name include compiler name) for theme engines.
15482
15483 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15484
15485         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15486
15487         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15488         events. The key.string wasn't zero-terminated, still we strdup'ed
15489         it in gdk_event_copy(). Synthesize crossing events for button
15490         events before possible propagation.
15491
15492         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15493
15494         * gdk/win32/makefile.cygwin
15495         * gtk/makefile.cygwin: Use new DLL naming style for the
15496         GCC-compiled ones.
15497
15498         * gdk/win32/makefile.msc
15499         * gtk/makefile.msc: Cosmetics mostly.
15500
15501         * gtk/gtk.def: Add missing entry points.
15502
15503         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15504
15505 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15506
15507         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15508         or height is zero. Don't print a warning if Pie or Arc fails, they
15509         always fail (?) for very narrow ellipses.
15510
15511         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15512         the part or the destination window corresponding to source area
15513         outside of the source drawable's boundary.
15514
15515         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15516         anything if less than two points.
15517
15518         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15519         return NULL. Gtk cut-and-paste inside a single program works
15520         better this way. (It always gets the clipboard contents from
15521         Windows, not from its own copy, which is cleared anyway. I can't
15522         say I fully understand what happens... Emulating the X selection
15523         and property stuff is a bit of a mess.)
15524
15525         * gdk/win32/gdkevents.c
15526         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15527
15528         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15529         that never got deleted). Revamp gdk_region_shrink.
15530
15531         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15532         after use.
15533
15534         * gtk/gtk.def: Add some missing entry points.
15535
15536         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15537         component.
15538
15539 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15540
15541         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15542         Control-digits specially.
15543
15544 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15545
15546         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15547
15548 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15549
15550         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15551         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15552         finding this.)
15553
15554 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15555
15556         * gtk+.spec.in: Corrected some typos in files section.
15557         
15558 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15559
15560         * README.win32: Mention using GNU gettext.
15561         * config.h.win32: Enable NLS stuff.
15562         * gtk/makefile.msc: Use GNU gettext.
15563         * gdk/win32/gdkdnd.c: Minor header reorg.
15564         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15565         cosmetics.
15566         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15567         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15568
15569 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15570
15571         * acinclude.m4
15572         * config.guess
15573         * config.status
15574         * ltconfig
15575         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15576
15577 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15578
15579         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15580         SafeAdjustWindowRectEx. Don't override all calls to
15581         AdjustWindowRectEx by it, but use it only in two places: When
15582         creating a new top-level window and when moving a top-level
15583         window.
15584
15585         Use screen coordinate rectangle, not client rectangle, in
15586         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15587         when we try to place a window so that the decoration (mainly,
15588         title bar) isn't visible.
15589
15590         These changes fix the bug that showed up for instance as the
15591         GIMP's saved top-level windows moving right and down (by an amount
15592         equal to the window decoration) for each session. This bug showed
15593         up also in testgtk's "Saved Position".
15594
15595         gdk_window_resize also redone a bit.
15596
15597 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15598
15599         * gtk/testgtkrc: Add (commented out) Windows-style theme
15600         include line.
15601
15602         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15603
15604 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15605
15606         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15607         gdkx.h to a gdk subdirectory, so that applications can include
15608         these with <gdk/*.h> without trouble.
15609
15610         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15611         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15612         have their bitmap destroyed.
15613
15614         * gdk/win32/gdk.def: Add gdk_root_parent.
15615
15616 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15617
15618         * configure.in
15619           gtk-config.in
15620           ltconfig
15621           ltmain.sh     
15622           gtk/Makefile.am: changes to compile nicely (with xlib) 
15623           on BeOS
15624
15625 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15626
15627         * acinclude.m4
15628         * config.guess
15629         * config.sub
15630         * ltconfig
15631         * ltmain.sh: upgrade to libtool 1.3
15632
15633 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15634
15635         * gtk/gtkclist.c:
15636         * gtk/gtkctree.c: merges from gtk-1-2
15637
15638 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15639
15640         Support added for building using a GNU toolchain on Win32,
15641         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15642
15643         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15644         * config.h.win32: Changes for gcc.
15645         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15646         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15647         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15648         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15649         Protect shl stuff unavaiilable with mingw32 headers.
15650         * gdk/win32/gdkevents.c: Fix typo.
15651         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15652         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15653         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15654         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15655         the mingw32 headers.
15656         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15657         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15658         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15659         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15660         Test for NATIVE_WIN32, not _MSC_VER.
15661         * gtk/gtkmain.c: No use warning about developer version on Win32,
15662         there aren't any non-developer versions anyhow.
15663         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15664         * gtk/makefile.msc: Use pthread from another directory. Minor other
15665         changes. 
15666
15667 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15668
15669         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15670           default filter from the list
15671
15672 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15673
15674         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15675          when gtk_widget_grab_default() is called for a widget that
15676          is not within a GtkWindow.
15677
15678 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15679
15680         * docs/gtk_tut.sgml, examples/clist.c: use a
15681           scrolled window in the clist example. Minor
15682           tutorial fixes.
15683
15684 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15685
15686         * docs/gtk_tut.sgml: Style check from David King
15687           <dking@youvegotmail.net>
15688
15689 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15690
15691         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15692         compile with unknown value of GDK_WINDOWING
15693
15694 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15695
15696         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15697         after the rule is fired.
15698         (install-exec-local): Install gdkconfig.h only if the contents are
15699         different from the currently installed gdkconfig.h.
15700
15701 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15702
15703         * gdk/Makefile.am (configexecincludedir): Rename from 
15704         configincludedir so that gdkconfig.h will be installed 
15705         as part of `make install-exec'. 
15706
15707 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15708
15709         * acinclude.m4
15710         * config.guess
15711         * config.sub
15712         * ltconfig
15713         * ltmain.sh: upgrade to libtool 1.2f
15714
15715         * autogen.sh: libtool is not required to autogen gtk+
15716
15717         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15718         needed)
15719
15720 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15721
15722         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15723         declaring gdk variables exported/imported from the DLL. New image
15724         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15725         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15726         GDK_DRAG_PROTO_OLE2.
15727
15728         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15729         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15730         declared only for the Win32 version, but could be in the X11
15731         version as well. (Needed for a Xlib-less gdk_imlib.)
15732         gdk_color_hash should have only one parameter. Declare
15733         gdk_threads_mutex with GDKVAR.
15734         
15735         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15736         just one parameter.
15737
15738         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15739         per pixel, not bits.
15740
15741         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15742         Fetch bpp (which means bits-per-pixel here) from another place on
15743         Win32. Accept also depth==32 (which we might get on Win32) with
15744         bpp==32.
15745
15746         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15747         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15748         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15749         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15750         in the backend-dependent directory, not in the common gdk
15751         directory.
15752
15753         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15754         headers.
15755
15756 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15757
15758         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15759         want to use the Gtk+ devel version (which is true, and yes - even i am
15760         currently working with the 1.2.x branch). so everyone reading this, you
15761         probably want to issue
15762         cvs checkout -r glib-1-2 glib
15763         and
15764         cvs checkout -r gtk-1-2 gtk+
15765         as your next two comands.
15766
15767 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15768
15769         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15770         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15771
15772         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15773         file. strongly deprecated the GTK_HAVE_* macros, we provide
15774         GTK_CHECK_VERSION() for people that need to check for certain
15775         Gtk+ versions.
15776
15777         * gtk/gtkcompat.h: removed this from CVS.
15778         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15779         idea right from the start, it just didn't seem like that back then.
15780
15781 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15782
15783         * merges from gtk-1-2:
15784
15785 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15786
15787         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15788         item factory class has been created.
15789         (gtk_item_factory_parse_rc): likewise.
15790
15791         * gtk/gtkmenu.c:
15792         keep proper references for old_active_menu_item.
15793         (gtk_menu_reparent): unset the usize of the new parent,
15794         so the menu can sanely be size requested and we don't get nasty screen
15795         artefacts upon next reparentation.
15796         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15797         enter notify. only synthesize enter notifies if the pointer really is
15798         inside the event window.
15799         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15800         (gtk_menu_popup): move the background setting stuff into
15801         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15802
15803         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15804         gtk_menu_shell_select_item() to select the new item.
15805         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15806         do the right thing for deselection as well.
15807
15808 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15809
15810         * gtk/gtkwidget.[hc]:
15811         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15812         are locked.
15813
15814         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15815         existing accelerators if the widget's accelerators are locked.
15816
15817 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15818
15819         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15820
15821         * gtk/gtkmenu.c: truely forward key press and key release events to
15822         the menu widget from the toplevel or tearoff window. we can't simply
15823         connect to that, we need to stop further processing of the events as
15824         well.
15825
15826 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15827
15828         * gtk/gtkmenu.c:
15829         (gtk_menu_key_press): pass event->keyval, event->state to
15830         gtk_accelerator_valid, instead of event->keyval twice.
15831         refuse to install single letter accelerators for menus that use
15832         single letter shortcuts.
15833
15834         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15835         gtk_menu_ensure_uline_accel_group().
15836
15837         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15838         which will always return an uline accel group, made
15839         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15840         yet created.
15841
15842 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15843
15844         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15845
15846         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15847         Leave button sensitive, trap  button_press, button_release,
15848         motion_notify, enter_notify and leave_notify events instead.
15849         (gtk_clist_column_title_active): disconnect event handler.
15850         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15851         Guillaume Laurent <glaurent@worldnet.fr>
15852
15853 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15854
15855         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15856         width/height mixups.
15857
15858         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15859         if needed.
15860
15861 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15862
15863         * gtk/testgtk.c (create_item_factory): unref the item factory after
15864         window's destruction.
15865
15866         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15867         count on the menu shell around the menu item's activation, since the
15868         signal emission may cause menu shell destruction.
15869
15870         * gtk/gtkitemfactory.c:
15871         the previous code leaked one accel group per menu. we use
15872         gtk_menu_get_uline_accel_group() now to fix that, and with that
15873         also create the underline accelerator group of the menus only if
15874         required (i.e. an underline accelerator has been specified).
15875         (gtk_item_factory_construct):
15876         (gtk_item_factory_create_item): removed code that would create an
15877         extra accel group for the menu (and leak references).
15878         (gtk_item_factory_create_item): adapted the underline accelerator
15879         installation code to properly feature gtk_menu_get_uline_accel_group().
15880
15881         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15882         menu->accel_group, this may return NULL if the accelerator group
15883         hasn't been set yet.
15884         added gtk_menu_get_uline_accel_group() to retrive the underline
15885         accelerator group of the menu, this will be created on demand
15886         and proper care is taken about its reference count.
15887
15888         * gtk/gtkitemfactory.h:
15889         * gtk/gtkitemfactory.c:
15890         dumped the approach of keeping a widgets by action list on the
15891         factory since the factory<->widget destroy negotiation didn't work
15892         and would be hard to get going at all. instead we keep a list of
15893         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15894         persistant throughout a program's life time).
15895         also, i removed the static const gchar *key_* variables, and made
15896         them inline strings (they weren't actually used anyways).
15897         (gtk_item_factory_add_item): update ifactory->items.
15898         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15899         the item factory pointer from the remaining ifactory widgets).
15900         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15901         list to find the widget.
15902         (gtk_item_factory_get_item): new function that works around
15903         gtk_item_factory_get_widget() limitations, this function will only
15904         return menu items, even for <Branch> entries.
15905
15906 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15907
15908         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15909         font hash table, if we have a GdkFontPrivate entry for this font
15910         already, simply increment its reference count, provided by Olaf Dietsche
15911         <olaf.dietsche+list.gtk@netcologne.de>.
15912
15913         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15914         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15915
15916 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15917
15918         * gtk/gtkcontainer.c:
15919         (gtk_container_add_with_args):
15920         (gtk_container_addv):
15921         (gtk_container_add): before adding a child to a conatiner, make sure
15922         it is (default) constructed, this is neccessary because under certain
15923         circumstances the child will get relized and mapped immediatedly, in
15924         which case it has to be constructed already.
15925
15926 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15927
15928         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15929         values > 1 as TRUE also.
15930
15931 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15932
15933         * README.win32: New file.
15934                 
15935         * configure.in: Check for lstat.
15936
15937         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15938         completeness.
15939
15940         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15941
15942         * gtk/gtk.def: Removed CRs.
15943
15944         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15945         ..\gdk\win32).
15946
15947         * gdk/win32/makefile.msc: Correct upwards relative paths.
15948         
15949 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15950
15951         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15952           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15953           it was connecting a void function to expose_event and the int
15954           returning function to the draw signal
15955
15956 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15957
15958         * configure.in:
15959         Use correct path to libgmodule.la when ref'ing uninstalled copy
15960         of glib.  (Already in stable branch, Bug #417)
15961
15962 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15963
15964         Win32 merge and general portability stuff:
15965                 
15966         * acconfig.h,configure.in: Check for <sys/time.h>.
15967
15968         * gdk/win32: New directory (actually, been there for a while).
15969         
15970         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15971         NATIVE_WIN32, and use these. Always case fold on Win32. No
15972         backslashed escapes on native Win32.
15973
15974         * gtk/{gtk.def,makefile.msc}: New files.
15975
15976         * gtk/Makefile.am: Add above new files.
15977         
15978         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15979         instead of <strings.h>.
15980
15981         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15982         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15983         <unistd.h> appropriately.
15984
15985         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15986         Use ABS() (from <glib.h>) instead of abs().
15987         
15988         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15989         of gtk (and thus glib) headers, so that WIN32 will be
15990         defined. With MS C, include <direct.h> for mkdir prototype.
15991
15992         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15993         some casts, needed by MS C.
15994
15995         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15996         implemented).
15997
15998         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15999         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
16000         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
16001
16002         * gtk/gtkmain.h: Mark variables for export/import on Win32.
16003                 
16004         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
16005         the event is not a hint, or its window is not the slider. Needed
16006         on Win32, at least.
16007
16008         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
16009         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
16010         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
16011         a subdirectory of the Windows directory as gtk system
16012         configuration directory.
16013
16014         * gtk/gtkselection.c: No chunks on Win32.
16015
16016         * gtk/gtksocket.c: Not implemented on Win32.
16017
16018         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
16019
16020         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
16021
16022         * gtk/maketypes.awk: Declare variables with a macro that expands to
16023         necessary export/import magic in the case of Win32.
16024                 
16025         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
16026
16027 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
16028
16029         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
16030         since those were meant only for gdki18n.h.  
16031         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
16032         for widechar tests.
16033         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
16034
16035 1999-03-13  Tor Lillqvist  <tml@iki.fi>
16036
16037         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
16038         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
16039
16040         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
16041         installed) to CFLAGS.
16042
16043         * gdk/Makefile.am: Add rules for gdkconfig.h.
16044
16045         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
16046         APIs.
16047
16048         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
16049         gdkx.h anyway when compiling for X11.
16050         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
16051         general): Merge in Win32 version.
16052         
16053         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
16054         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
16055         expansion (if we don't have HAVE_PWD_H), allow for drive
16056         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
16057         included code from Craig Setera's port to Win32 (the one that uses
16058         X11, and the cygwin dll), even if it probably will be abandoned.
16059
16060         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
16061         the user entered one herself.  This way one can complete *.h and
16062         don't get matches on any .help files, for instance.
16063         
16064 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16065
16066         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16067         font hash table, if we have a GdkFontPrivate entry for this font
16068         already, simply increment its reference count, provided by Olaf Dietsche
16069         <olaf.dietsche+list.gtk@netcologne.de>.
16070
16071         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16072         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16073
16074 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16075
16076         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16077         the number of calls to gdk_draw_point() (and thus to X) by
16078         clipping the points by hand.
16079
16080         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16081         the clip parameter.
16082         (gtk_handle_box_paint): Only paint the handle if the expose area
16083         intersects it.
16084
16085 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16086
16087         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16088
16089 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16090
16091         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16092         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16093
16094 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16095
16096         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16097          textmode (O_TEXT) for OS/2 version.
16098
16099 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16100
16101         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16102         GtkSpinButton, "input" and "output", to make the output more flexible.
16103         The user has to provide a mapping between adjustment->value and the
16104         output string (and vice versa, if the spin button is editable). 
16105         See testgtk for examples.
16106
16107 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16108
16109         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16110         new one.
16111         
16112         * configure.in: set gtk+ version to 1.3.0.