]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
Change default for justify to GTK_JUSTIFY_LEFT. Assuming that multiline
[~andy/gtk] / ChangeLog.pre-2-0
1 Mon Nov 19 14:08:18 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtklabel.c (gtk_label_init): Change default for
4         justify to GTK_JUSTIFY_LEFT. Assuming that multiline
5         labels are most often wrapped labels, this gives better
6         compatibility with GTK+-1.2, where justification was
7         ignored for wrapped labesl and is a more sensible
8         default in any case. (#64489)
9
10         * gtk/gtklabel.c (gtk_label_class_init): Fix default
11         for wrap property to FALSE.
12
13 2001-11-19  jacob berkman  <jacob@ximian.com>
14
15         * gtk/Makefile.am (gtk_extra_sources): add gtkmarshal.list
16
17 Mon Nov 19 13:56:45 2001  Owen Taylor  <otaylor@redhat.com>
18
19         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use 
20         RevertToParent, not RevertToNone. (#64613, 
21         Matthias Clasen)
22
23 Mon Nov 19 12:28:02 2001  Owen Taylor  <otaylor@redhat.com>
24
25         * gtk/gtkframe.c (gtk_frame_class_init): label_xalign
26         and label_yalign need to be float properties to
27         correspond to GTK+-1.2, to gtk_frame_set_label_align,
28         and to the types of the xalign and yalign properties of GtkMisc.
29         (#63484, Vitaly Tishkov)
30
31 Mon Nov 19 12:24:30 2001  Owen Taylor  <otaylor@redhat.com>
32
33         * gtk/gtksocket.h (struct _GtkSocketClass): Fix return
34         of plug_added vfunc. (#64408, Jeff Franks)
35
36 Mon Nov 19 12:07:20 2001  Owen Taylor  <otaylor@redhat.com>
37
38         * configure.in (deps): Undef HAVE_STDLIB_H before
39         checking for jpeg, because jconfig.h has this
40         in it too (%#$@!). Fix from Matthias Clasen, #64500.
41
42 Mon Nov 19 11:30:03 2001  Owen Taylor  <otaylor@redhat.com>
43
44         * gdk/x11/gdkproperty-x11.c (get_atom_name): Fix a 
45         memory leak when retrieving atom names. (Michael Meeks,
46         #64508)
47
48 2001-11-18  Alex Larsson  <alexl@redhat.com>
49
50         * gdk/x11/gdkfont-x11.c (gdk_font_from_description):
51         Update to new Pango API.
52         
53 Sun Nov 18 19:47:29 2001  Owen Taylor  <otaylor@redhat.com>
54
55         * gtk/gtkobject.h docs/Changes-2.0.txt: Rename the
56         GTK_DESTROYED flag to GTK_IN_DESTRUCTION, remove the
57         GTK_OBJECT_DESTROYED() check macro.
58
59         * gtk/gtkbindings.c (gtk_bindings_activate): Remove
60         instances of GTK_OBJECT_DESTROYED() that weren't
61         needed any more.
62
63         * gtk/gtkdialog.c: Exchange use of GTK_OBJECT_DESTROYED
64         for a connection to ::destroy.
65
66 Sun Nov 18 18:18:11 2001  Owen Taylor  <otaylor@redhat.com>
67
68         * gtk/gtkfixed.c: Make a NO_WINDOW widget, as it should
69         have been since the beginning, but as special hack,
70         allow clearing the NO_WINDOW flag to get a window widget.
71
72 Sun Nov 18 22:01:36  Kristian Rietveld  <kristian@planet.nl>
73
74         * gtk/gtktreestore.c: return TRUE when value changed, so
75         row_changed is being emitted
76
77 2001-11-18  Hans Breuer  <hans@breuer.org>
78
79         * gtk/gdkaccelmap.c : make it compile with msvc: !HAVE_UNISTD_H;
80         no label without op, even if it's a no-op.
81
82         * gtk/gtk.def :
83         * gtk/makefile.msc.in : reflect marshaler split, some clean-up  
84
85         * config.h.win32.in : remove definition of HAVE_DIRENT_H
86         * gtk/gtkfilesel.c : due to GDir (new in glib) DIR isn't
87         required anymore, replace it.
88         * gtk/queryimmodules.c : DIR -> GDir replacement, also
89         getcwd() -> g_get_current_dir()
90
91         * gdk/win32/gdkgeometry-win32.c : adapt to refactored gdkgeometry-x11.c
92         Even 'noisy laugh' scolling appears to work, though I still can't
93         claim to have fully understood what it is supposed to do ...
94
95 Sat Nov 17 21:07:46 2001  Owen Taylor  <otaylor@redhat.com>
96
97         * gtk/gtkenums.h: Include glib-object.h instead of
98         gobject/gsignal.h
99
100         * gdk/{gdkinternals.h,gdkwindow.c,gdkwindow.[ch],
101           x11,{fb,win32,x11/gdkwindow-*.c}: Add a dummy GdkScreen
102         argument to the window_at_pointer() field of
103         GdkPointerHooks. (Patch from Erwann Chenede)
104
105         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Up
106         to 6 pointers.
107
108 2001-11-17  Matt Wilson  <msw@redhat.com>
109
110         * gtk/gtkenums.h: must include glib-object.h only
111
112 Sat Nov 17 19:26:20 2001  Owen Taylor  <otaylor@redhat.com>
113
114         * gtk/gtkwindow.c (gtk_window_key_press_event): Reprioritize
115         key bindings in order of visibility - mnemonics, then 
116         accelerators, then send key to the focus widget, then
117         bindings on the GtkWindow.
118
119         * gtk/gtklayout.h docs/Changes-2.0.txt tests/testgtk.c: 
120         Removed the xoffset, yoffset fields of GtkLayout which were
121         identically zero for compat with 1.2, but were no longer 
122         compatible with all uses of these fields in 1.2.
123
124         * gtk/gtkwindow.c (gtk_window_set_default): Remove 
125         unused variable.
126
127 Sat Nov 17 19:08:13 2001  Owen Taylor  <otaylor@redhat.com>
128
129         * tests/testtreeview.c (gtk_tree_model_types_get_type): 
130         We no longer need to create the signals here ... they
131         come from the interface.
132
133         * gtk/maketypes.awk: Use GType, not GtkType in output.
134
135         * gtk/gtktypeutils.h: Mark virtually all of this
136         file deprecated.
137
138         * gtk/gtkcontainer.h: Deprecate gtk_container_foreach_full;
139         the only use of this function is the GtkArg using
140         GtkCallbackMarshal, since destroy notification is
141         silly here.
142
143 Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>
144
145         * gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
146         gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
147         only for compatibility with GTK+-1.2; and deprecate it; 
148         put all marshalers we actually use into gtkmarshalers.list 
149         and use the _gtk_marshal_ prefix for these marshalers.
150
151 2001-11-17  Murray Cumming  <murrayc@usa.net>
152
153         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init):
154         The first parameters of the signals are now registered as
155         GTK_TYPE_TEXT_TAG instead of G_TYPE_OBJECT.
156         
157 2001-11-17  Tor Lillqvist  <tml@iki.fi>
158
159         * gtk-zip.sh.in: Build separate runtime and developer
160         packages.
161
162         * gtk/gtk.def: Reflect recent accelerator-related changes.
163
164 Fri Nov 16 19:44:35 2001  Owen Taylor  <otaylor@redhat.com>
165
166         * gtk/gtkwindow.c (gtk_window_set_default): Move 
167         notification of "has_default" to here, so it
168         is safe to call gtk_window_set_default() instead
169         of gtk_widget_grab_default().
170
171         * gtk/gtkwindow.c (gtk_window_set_focus): Make it call
172         gtk_widget_grab_focus(), which then calls 
173         _gtk_widget_internal_set_focus(). This makes 
174         gtk_window_set_focus() a safe way of both setting
175         and unsetting the focus widget.
176
177         * gtk/gtkwidget.c (gtk_widget_propagate_state): Use
178         gtk_widget_get_toplevel(), instead of gtk_widget_ancestor
179         to find the toplevel.
180
181         * gtk/gtkwindow.h: Move gtk_window_set_focus/default
182         from the "internal functions" section.
183
184 2001-11-16  jacob berkman  <jacob@ximian.com>
185
186         * tests/testgtk.c (create_radio_buttons): add some no-indicator
187         radio buttons
188
189         * gtk/gtkradiobutton.c (gtk_radio_button_init): since we are
190         initially active, also initially be depressed
191         (gtk_radio_button_clicked): also update our depressed state
192
193 Thu Nov 15 12:54:36 2001  Owen Taylor  <otaylor@redhat.com>
194
195         * gtk/gtkwindow.c (gtk_window_key_press_event): Propagate
196         key press events not just to focus/window but also to
197         intermediate widgets.
198
199         * gtk/gtknotebook.c: Handle Ctrl-PageUp/Ctrl-PageDown
200         to switch pages. (Needs some work on handling focus
201         when switching pages.)
202
203 Fri Nov 16 14:06:31 2001  Owen Taylor  <otaylor@redhat.com>
204
205         * gtk/gtknotebook.c: Fix child allocations to be relative to 
206         widget position and some drawing bugs.
207
208         * gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem
209         with reading uninitialized variable.
210
211 Fri Nov 16 00:16:40 2001  Owen Taylor  <otaylor@redhat.com>
212
213         * gtk/{gtkmenuitem.[ch],gtkcheckmenuitem.c,gtkimagemenuitem.c,
214         gtkradiomenuitem.c,gtktearoffmenuitem.c}: Make Menu items
215         NO_WINDOW widgets.
216
217         * gtk/gtk{h,v,}paned.[ch]: Make NO_WINDOW widgets, some
218         cleanup.
219
220         * gtk/gtkstyle.c (gtk_default_draw_handle): Don't assume
221         we are drawing in a window when drawing the paned handle.
222
223 2001-11-16  Sven Neumann  <sven@gimp.org>
224
225         * demos/gtk-demo/appwindow.c
226         * demos/gtk-demo/menus.c: reduce compiler warnings
227
228 Thu Nov 15 19:47:09 2001  Owen Taylor  <otaylor@redhat.com>
229
230         * demos/gtk-demo/main.c (button_press_event_cb): Remove 
231         unused callback to make things compile with 
232         gtk_tree_view_path_at_pos_change().
233
234 Thu Nov 15 18:44:33 2001  Jonathan Blandford  <jrb@redhat.com>
235
236         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): maybe fix #64160
237
238 2001-11-15  Matthias Clasen  <matthiasc@poet.de>
239
240         * gtk/gtkwindow.c (gtk_window_new): Move '.' out of quote. (#64407)
241  
242 Thu Nov 15 16:24:55 2001  Jonathan Blandford  <jrb@redhat.com>
243
244         * gtk/gtktreeview.c (gtk_tree_view_get_bin_window): New function
245         to get a GdkWindow to compare event->window to.
246
247         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_left_right): emit
248         the signal for lateral motion too, #64361
249
250         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): remove window
251         arg as it is useless, #64137
252
253 Thu Nov 15 16:07:42 2001  Owen Taylor  <otaylor@redhat.com>
254
255         * gtk/gtknotebook.c: Some small drawing fixes for scroll arrows.
256
257 Thu Nov 15 14:19:34 2001  Owen Taylor  <otaylor@redhat.com>
258  
259         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Cal
260         gdk_window_invalidate_maybe_recurse() for recursion.
261         (Soeren Sandmann)
262
263         * gtk/gtkviewport.c: Make !redraw_on_allocate. (Soeren Sandmann)
264  
265         * gtk/gtkcontainer.c (gtk_container_expose): Call
266         gtk_container_forall() not _foreach() to propagate,
267         since we need to propagate exposes to internal children
268         as well.
269
270         * gtk/gtkwidget.c (gtk_widget_set_events, gtk_widget_add_events): 
271         Remove the restriction of only being able to call these
272         on window widgets, since we have lots of NO_WINDOW widgets
273         with windows now; for add events, recurse over the children
274         of widget->window to find one owned by the widget.
275
276         * gtk/gtkbutton.[ch]: Make a NO_WINDOW widget, using an input-only
277         window to catch events.
278
279         * gtk/gtktogglebutton.[ch]: Remove the code for switching
280         between NO_WINDOW and WINDOW widgets based on the mode.
281
282         * gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c gtk/gtkclist.c
283         gtk/gtktreeview.c: Adopt to NO_WINDOW change for GtkButton.
284
285         * gtk/gtkrange.[ch]: Make into a NO_WINDOW widget.
286
287         * gtk/gtkhscale.c, gtk/gtkvscale.c: Adopt to NO_WINDOW
288         change for range.
289
290         * gtk/gtknotebook.[ch]: Make into a NO_WINDOW widget.
291  
292         * docs/Changes-2.0.txt: Add a note about the NO_WINDOW changes.
293
294 Thu Nov 15 11:59:35 2001  Owen Taylor  <otaylor@redhat.com>
295
296         * gtk/gtkmessagedialog.c: Patch from Murray Cumming to add
297         "message_type" and "buttons" CONSTRUCT properties. (#64069)
298
299         * tests/testsocket.c: Expand tests to add a "local passive
300         child" (Test case for #64428)
301
302 2001-11-14  jacob berkman  <jacob@ximian.com>
303
304         * gtk/gtkgamma.c (button_clicked_callback): create the label with
305         a mnemonic
306
307 2001-11-15  Sven Neumann  <sven@gimp.org>
308
309         * tests/testgtk.c: make it compile without warnings.
310
311 2001-11-14  Alex Larsson  <alexl@redhat.com>
312
313         * gtk/gtklabel.c:
314         Don't recalculate the layout on each gkt_label_ensure_layout () for
315         wrapped labels.
316
317 Wed Nov 14 17:40:23 2001  Jonathan Blandford  <jrb@redhat.com>
318
319         * gtk/gtktreeview.c (gtk_tree_view_get_expander_column): Return
320         the currently selected column when we get the column, #64380
321
322         * gtk/gtkentry.c (gtk_cell_editable_key_press_event): Handle Esc
323         to cancel CellRendererText editting, #63613
324
325         * gtk/gtkcellrenderertext.c: ditto
326
327         * gtk/gtkcellrenderertext.h: formatting changes
328
329 2001-11-14  Matthias Clasen  <matthiasc@poet.de>
330
331         * gtk/gtkbutton.c (gtk_button_get_label): Rearrange docs (#64566)
332
333         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Typo fix (#64474)
334
335         * gtk/gtkruler.c (gtk_ruler_get_metric): Typo fix (#64470)
336
337         * gtk/gtknotebook.c (gtk_notebook_prepend_page): Typo fix (#64467)
338
339         * gtk/gtklabel.c: Documentation fixes (#64452)
340
341 2001-11-14  Daniel Egger  <degger@fhm.edu>
342
343         * gdk-pixbuf/io-xpm.c: 
344         (xpm_skip_whitespaces): Remove unused static function.
345         (xpm_skip_string): Dito.        
346         (xpm_extract_color): Declare const variable const to avoid warnings. 
347
348         * gtk/gtkfixed.c: (gtk_fixed_map): Remove unused static function.
349         
350         * gtk/gtkplug.c: #if 0'ed prototype for #if 0'ed code.
351         
352         * gtk/gtksocket.c: Change type of mask to g_message to %ld for 
353         a long.
354
355 Wed Nov 14 15:14:48 2001  Owen Taylor  <otaylor@redhat.com>
356
357         * gtk/gtkcontainer.c (gtk_container_idle_sizer): Back
358         out accidental commit of debugging timing code.
359
360 2001-11-14  Havoc Pennington  <hp@redhat.com>
361
362         * gtk/gtktextview.c (gtk_text_view_move_cursor): fix Control-E so
363         it doesn't move to a new line each time you press it
364
365         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix
366         return value, #62987
367
368 2001-11-14  Havoc Pennington  <hp@redhat.com>
369
370         * tests/testtextbuffer.c (main): bulk of the tests were commented
371         out, oops.
372
373         * gtk/gtktextiter.c (find_paragraph_delimiter_for_line): make this 
374         function work, should resolve #63426
375         (gtk_text_iter_ends_line): return TRUE for the end iterator
376
377         * gtk/gtktextiter.h: put padding back in GtkTextIter, I thought of
378         a couple things that might get cached in here.
379
380 Tue Nov 13 21:00:59 2001  Jonathan Blandford  <jrb@redhat.com>
381
382         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): new
383         "model" construct property for language bindings.
384
385         * gtk/gtktreestore.c (gtk_tree_store_set_column_types): New
386         function to let you set the column types of a GtkTreeStore for
387         language bindings.
388
389         * gtk/gtkliststore.c (gtk_list_store_set_column_types): ditto.
390
391 2001-11-13  Havoc Pennington  <hp@redhat.com>
392
393         * gtk/gtktextview.c (gtk_text_view_add_child_in_window): docs
394         including reference to bugzilla bug about how we should have 
395         a better way of positioning children
396
397         * gtk/gtktextview.h (struct _GtkTextViewClass): add some padding
398
399         * gtk/gtktextview.c (gtk_text_view_size_allocate): assign zero
400         size to side rects if they don't exist, #63438
401
402 2001-11-13  Havoc Pennington  <hp@redhat.com>
403
404         * gtk/gtktextview.c (gtk_text_view_key_press_event): fix to
405         properly replace selection with Return or Tab
406
407         * gtk/gtktextdisplay.c (gtk_text_layout_draw): fix broken code
408         that didn't locate the end of the line correctly, should fix #63800
409
410 2001-11-13  Havoc Pennington  <hp@redhat.com>
411
412         * gtk/gtktextview.c (gtk_text_view_size_request): add border width
413         to requisition, request non-anchored children
414         (gtk_text_view_size_allocate): handle border width, allocate
415         non-anchored children
416         (text_view_child_new_window): set the child as object data
417         (gtk_text_view_move_child): allow children at negative
418         coordinates, no reason why not
419         (gtk_text_view_forall): make it copy the list of children before
420         walking it, to avoid reentrancy issues  
421         (gtk_text_view_move_child): short-circuit if position is unchanged
422         (changed_handler): only queue_resize if requisition has changed
423         (gtk_text_view_init): don't redraw_on_allocate, since we can do 
424         a better job of invalidation ourselves
425
426         * tests/testtext.c: add tests for the fixed-position children
427
428 Tue Nov 13 19:51:43 2001  Tim Janik  <timj@gtk.org>
429
430         * gtk/gtkwindow.c (handle_accels_changed): protect idle handle
431         with gdk threads macro.
432
433 Mon Nov 12 23:08:37 2001  Tim Janik  <timj@gtk.org>
434
435         * gtk/maketypes.awk: fix type utils generation on unix.
436
437         * gtk/gtkaccelmap.[hc]: new files, implementing a global accelerator
438         registry.
439
440         * gtk/gtkaccelgroup.[hc]: major API/implementation revamp:
441         removed GTK_ACCEL_SIGNAL_VISIBLE, gtk_accel_group_get_default,
442         gtk_accel_group_get_entry, gtk_accel_group_(un)lock_entry,
443         gtk_accel_group_add/remove, gtk_accel_group_handle_add/remove,
444         gtk_accel_group_create_add/remove, gtk_accel_group_entries_from_object.
445         introduced ::accel_changed signal for change notification, and
446         gtk_accel_group_connect/disconnect to connect closures to accel groups.
447         made gtk_accel_group_attach/detach and gtk_accel_group_activate private
448         functions.
449         deprecated gtk_accel_group_ref/unref.
450
451         * gtk/gtkaccellabel.[hc]: changes to make accellabels pay attention
452         to accel group changed notification and basically operate on closures.
453         removed gtk_accel_label_get_accel_object and
454         gtk_accel_label_set_accel_object.
455         introduced gtk_accel_label_set_accel_closure, and for convenience,
456         gtk_accel_label_set_accel_widget.
457
458         * gtk/gtkitemfactory.[hc]: removed accelerator propagation code
459         which mostly moved into gtkaccelmap.[hc].
460         removed gtk_item_factory_parse_rc*, gtk_item_factory_dump_*
461         and gtk_item_factory_print_func.
462
463         * gtk/gtkmain.c: call _gtk_accel_map_init().
464
465         * gtk/gtkmenuitem.[hc]: introduced gtk_menu_item_set_accel_path(),
466         that associates an accelerator path with menu items, through which
467         persistent accelerator settings on menu items are enabled.
468
469         * gtk/gtkmenu.[hc]: added gtk_menu_set_accel_path() so accelerator
470         paths of menu item can be default constructed to allow installation
471         of accelerators on menu items that don't come with an accelerator
472         binding by default.
473
474         * gtk/gtksettings.c: fix STRING type rc settings by special casing
475         them appropriately in the parser.
476
477         * gtk/gtksignal.[hc]: allow a class function offset of 0 for
478         gtk_signal_newv().
479
480         * gtk/gtkwidget.[hc]: accelerator API revamp.
481         removed ::accelerator_add/remove signals, gtk_widget_accelerator_signal,
482         gtk_widget_accelerators_locked, gtk_widget_remove_accelerators and
483         gtk_widget_(un)lock_accelerators.
484         accelerators maintained through gtk_widget_add/remove_accelerator()
485         are not runtime changable now, the correct sequence to setup a
486         widget for runtime changable accelerators is now:
487           gtk_accel_map_add_entry(accel_path, key, mods);
488           _gtk_widget_set_accel_path(widget, accel_path, accel_group);
489
490         * gtk/gtkwindow.[hc]: accelerator changes, proxy and coalesce accel
491         group changes (as well as mnemonic changes) through the new signal
492         ::accels_changed.
493
494 Sat Nov 10 12:08:56 2001  Tim Janik  <timj@gtk.org>
495
496         * gtk/gtksettings.c (_gtk_settings_parse_convert): properly handle
497         GString->string conversions.
498
499 Mon Nov 12 19:33:52 2001  Owen Taylor  <otaylor@redhat.com>
500
501         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): Warn
502         if GTK_DIALOG_NO_SEPARATOR is passed in and ignore it.
503
504 2001-11-12  Matthias Clasen  <matthiasc@poet.de>
505
506         * gtk/gtktreeview.c: Documentation fixes. (#64377)
507         
508         * gtk/gtktreestore.c: Documentation fixes. (#64376)
509
510 2001-11-11  Matthias Clasen  <matthiasc@poet.de>
511
512         * gtk/gtkiconfactory.c, gtk/gtktextbuffer.c, gtk/gtktreemodel.c,
513         gtk/gtkwindow.c, gtk/gtknotebook.c, gtk/gtkradiobutton.c, 
514         gtk/gtktextiter.c, gtk/gtkdialog.c: Mass fixing of trivial doc bugs.  
515         (#63544, #57007, #64141, #63472, #57108, #60818, #61562)
516
517 2001-11-10  Hans Breuer  <hans@breuer.org>
518
519         * gdk/win32/gdkevents-win32.c (gdk_event_translate) : make sure 
520         we know what we are talking about when asked for MINMAXINFO.
521         Also some cleaning for !HAVE_DIMM_H etc.
522
523 2001-11-10  Matthias Clasen  <matthiasc@poet.de>
524
525         * gtk/gtktreeviewcolumn.c: Fix docs for 
526         gtk_tree_view_column_set_sort_order. (#62647)
527         
528         * gtk/gtkcontainer.c: Fix docs for 
529         gtk_container_set_border_width. (#64139)
530
531         * gtk/gtkcolorsel.c: Documentation fixes.
532
533 2001-11-10  Hans Breuer  <hans@breuer.org>
534
535         * gtk/gtkfontsel.c : use g_strcasecmp(), some poor platforms
536         don't have strcasecmp()
537
538         * gtk/gtktextview.c : to fix crashing on e.g. TextView::find need 
539         to remove the idle funcs in gtk_text_view_destroy (). To reduce 
540         code duplication wrap it in its own function and use it in 
541         gtk_text_view_unrealize () and gtk_text_view_destroy_layout ()
542
543         * gdk/win32/gdkdrawable-win32.c : implement the finalize
544         method like the X11 version does, allow to set_colormap NULL
545         * gdk/win32/gdkwindow-win32.c : adapt GdkWindowImplWin32::
546         set_colormap, also some adaption to X11 version :
547         (gdk_window_hide) call _gdk_window_clear_update_area
548         (gdk_window_reparent) call _gdk_window_init_position
549
550         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints) : 
551         call gdk_window_resize() after all hints are set, because the
552         window resizing process (WM_GETMINMAXINFO) takes all of them into 
553         account
554
555         * gdk/win32/gdkfont-win32.c : make gdk_font_equal return a gboolean
556
557         * gdk/win32/gdkvisual-win32.c : register GdkVisual with 
558         sizeof (GdkVisualPrivate)
559
560         * gdk/gdk.def gtk/gtk.def : upated externals
561
562         * gdk/makefile.msc gdk/win32/makefile.msc gdk-pixbuf/makefile.msc
563           gdk-pixbuf/pixops/makefile.msc gtk/makefile.msc.in tests/makefile.msc :
564         from now on use make.msc from $(TOP)/glib/build/win32
565
566         * gtk/stock-icons/makefile.msc : add stock_missing_image
567
568 2001-11-08  Tor Lillqvist  <tml@iki.fi>
569
570         * README.win32: Add headers. Add section about ActiveIMM.
571
572         * configure.in: Add --with-ie55 flag to specify the location of
573         the "IE55 libs and headers" package downloadable from Microsoft,
574         which contains, among other things, the Active IMM header dimm.h
575         and UUID library uuid.lib. Use test -f instead of AC_CHECK_FILE.
576         Require GLib 1.3.10.
577         
578         * config.h.win32.in: New version, produced by merging two
579         configure-generated ones (for gcc and MSVC). Hopefully #defines
580         the same flags that the previous, hand-written one, did.
581
582         * gdk/Makefile.am
583         * gdk/win32/Makefile.am: Handle the uuid library from the IE55 lib.
584
585         * gdk/win32/gdkevents-win32.c: Conditionalize ActiveIMM
586         stuff. Remove unused GdkIOClosure.
587
588         * gdk/win32/surrogate-dimm.h: Remove, use real dimm.h instead (if
589         available).
590
591         * gdk/win32/libie55uuid.la: New file, handwritten libtool wrapper
592         for uuid.lib. (Does it really have to be this hard to use an
593         existing library with libtool? Probably I am missing something.)
594
595 2001-11-08  Darin Adler  <darin@bentspoon.com>
596
597         * gtk/gtklabel.c: (gtk_label_ensure_layout): Fix an obvious
598         typo where it says LEFT instead of CENTER.
599
600 2001-11-07  Darin Adler  <darin@bentspoon.com>
601
602         * gtk/gtkdialog.c: (gtk_dialog_set_response_sensitive),
603         (gtk_dialog_set_default_response): Add g_return_if_fail.
604
605 Mon Nov  5 22:34:29 2001  Owen Taylor  <otaylor@redhat.com>
606
607         * gtk/gtktreednd.[ch] (struct _GtkTreeDragSourceIface): 
608         Add row_draggable() vfunc, and wrapper function.
609
610         * gtk/gtktreednd.[ch] (struct _GtkTreeDragDestIface): Make
611         row_drop_possible take a GtkSelectionData, rather than
612         model/row pair.
613
614         * gtk/gtktreestore.c gtk/gtkliststore.c: Update for 
615         new DND interfaces.
616
617         * gtk/gtktreeview.[ch]: Remove the row_draggable_func
618         location_dropable_func from gtk_tree_view_set_rows_drag_source/dest.
619         and rename them to enable_model_drag_source/dest.
620
621         * gtk/treeviewcolumn.c: Add DND of columns between rows.
622         Still can't drop _to_ the left tree, but other places
623         work.
624
625         * gtk/gtktreeview.c (unset_reorderable): Unset the
626         reorderable property if unset/enable_model_drag_source/dest
627         are called manually.
628
629         * gtk/gtktreestore.c (gtk_tree_store_row_drop_possible): 
630         Correct for change in depth count handling.
631
632         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon):
633         Pass in a expose area to gtk_tree_view_column_cell_render()
634
635 2001-11-06  Havoc Pennington  <hp@redhat.com>
636
637         * demos/gtk-demo/textview.c (easter_egg_callback): wacky easter egg
638
639 Tue Nov  6 10:13:16 2001  Owen Taylor  <otaylor@redhat.com>
640
641         * gdk/x11/gdkgc-x11.c: Fix misplaced HAVE_XFT.
642
643 2001-11-05  Havoc Pennington  <hp@redhat.com>
644
645         * gtk/gtktextview.c (gtk_text_view_paint): expose the child
646         widgets in here
647         (gtk_text_view_realize): set parent window of child widgets
648         (gtk_text_view_size_request): use child req to decide whether
649         to invalidate layout, not widget->requisition
650
651         * gtk/gtktextdisplay.c (render_layout_line): set
652         shaped_width_pixels for NULL shape objects, so that we properly
653         draw the "missing pixbuf/widget" thing
654         (render_layout_line): don't draw the widget here
655         (gtk_text_layout_draw): pass out a list of widgets that need exposing
656
657         * demos/gtk-demo/textview.c (insert_text): add demo of child
658         widgets
659
660         * gtk/gtktextlayout.c (add_child_attrs): remove debug spew
661
662         * gtk/gtktextdisplay.c (render_layout_line): remove debug spew
663
664         * gtk/gtktextview.c (gtk_text_view_update_child_allocation): add
665         scroll offsets
666         (gtk_text_view_value_changed): poke new X and Y into child allocations
667
668 2001-11-06  Tor Lillqvist  <tml@iki.fi>
669
670         * gtk/gtkmain.c (find_module): Do search GTK_BINARY_VERSION
671         -specific directory on Windows, too (#63759).
672
673 Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>
674
675         * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
676         gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
677         gdk/x11/gdkwindow-x11.c: Redo Xft support to go
678         directly to Picture objects instead of using XftDraw.
679         This fixes the problem where we weren't able to 
680         properly destroy XftDraw objects before destroying
681         the accompanying windows, and probably improves
682         efficiency a bit too. (#50214)
683
684 Mon Nov  5 10:01:49 2001  Owen Taylor  <otaylor@redhat.com>
685
686         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): 
687         Clamp max window width/height to 32767, not 32768 since
688         we have to be able to deal with a dx/y of -32768 without
689         getting a width of 65536 when guffaw scrolling.
690
691         * gdk/x11/gdkgeometry-x11.c: Implement gdk_window_scroll()
692         for the guffaw scrolling case, fixing some problems with
693         copy-area case as well. Fix BadValue bug with moving windows
694         by large amounts.
695
696         * gdk/x11/gdkgeometry-x11.c (gdk_window_clip_changed): Update
697         clip in window structue before calling gdk_window_invalidate_region
698         since that trims new invalidations to the window's visible
699         region.
700
701         * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_gravities): 
702         Really set the static window gravity on the children, not
703         repeatedly on the window.
704
705         * gtk/testgtk.c: Add a torture test for big windows and 
706         gdk_window_scroll().
707
708 Sun Nov  4 17:36:08 2001  Manish Singh  <yosh@gimp.org>
709
710         * acconfig.h configure.in: sigsetjmp is macroized in some places,
711         so use AC_TRY_LINK instead of AC_CHECK_FUNCS for the check.
712
713 Sun Nov  4 19:16:23 2001  Owen Taylor  <otaylor@redhat.com>
714
715         * gdk/gdkcolor.c (gdk_color_parse): Implement gdk_color_parse()
716         in terms of pango_color_parse().
717
718         * gdk/{linux-fb,win32,x11}/gdkcolor-*.c: Remove port-specific
719         gdk_color_parse() implementations.
720
721 Sun Nov  4 18:39:43 2001  Owen Taylor  <otaylor@redhat.com>
722
723         * gtk/gtksizegroup.c (gtk_size_group_set_mode): 
724         queue_resize_on_group with both the old and new mode, not
725         just the new mode. (#60171, Nicolas Setton). Also, notify
726         the "mode" property.
727         
728 Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>
729
730         * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse() 
731         for use in "shallow invalidation" of a widget. (Windows belonging
732         to the widget, but not to the widget's children)
733
734         * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
735         flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
736         up on ancestors up to the resize container on queue_resize. Size
737         requests only actually take place if GTK_REQUEST_NEEDED, size
738         allocations only take place if GTK_ALLOC_NEEDED or the size
739         changed.
740
741         * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
742         container->resize_widgets and the RESIZE_NEEDED flag since the
743         above flags are sufficient to figure out what needs to be
744         resized/reallocated. Remove code manipulating
745         container->resize_widget.
746
747         * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
748         allows widgets to turn off being automatically invalidated is when
749         they are resized.
750
751         * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
752         a widget is resized or moved is "shallow" as described above -
753         only the windows that need to be invalidated are invalidated.
754
755         * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt: 
756         Make these widget's init functions call 
757         gtk_widget_set_redraw_on_allocate(widget,FALSE).
758
759         * gtk/gtkwindow.c (gtk_window_configure_event): Call 
760         _gtk_container_queue_resize(), since we don't want
761         redrawing. (Probably could be done for other 
762         calls to gtk_widget_queue_resize() in gtkwindow.c,
763         but this is the most important one.)
764
765         * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
766         gtk_widget_queue_draw() - size_allocate() handles
767         that as appropriate.
768
769         * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
770         of queue_clear() to avoid invalidating children.
771
772 2001-11-04  jacob berkman  <jacob@ximian.com>
773
774         * gtk/gtkmain.c (find_module): don't free the module name until
775         after we load the module
776
777 Sat Nov  3 13:57:21 2001  Owen Taylor  <otaylor@redhat.com>
778  
779         * gtk/gtkctree.c: Convert GTK_TYPE_CTREE_NODE to pointer
780         derivation instead of boxed derivation.
781  
782         * gtk/gtkmarshal.list: Remove some now unused marshallers.
783  
784 2001-11-04  Tor Lillqvist  <tml@iki.fi>
785
786         * gtk/gtkimmodule.c: Can't include gtkprivate.h (I added the
787         include yesterday, without really thinking), as that defeats the
788         working of correct_libdir_prefix() (it becomes a no-op.). Add
789         comment mentioning that. Thanks to Hans Breuer for noticing.
790         
791 2001-11-03  Daniel Elstner  <daniel.elstner@gmx.net>
792
793         * gtk/gtkwindow.h (frame_event): Use GtkWindow* as first
794         signal argument (was GtkWidget*).
795
796         * gtk/gtkwindow.c (gtk_window_frame_event),
797           gtk/gtkwindow-decorate.c (gtk_decorated_window_frame_event):
798         Fixed argument types as above, removed GTK_WINDOW casts and
799         added some GTK_WIDGET casts instead.
800
801 2001-11-03  Hans Breuer  <hans@breuer.org>
802
803         * gtk/gtkfilesel.c (gtk_file_selection_finalize) : chain
804         finalize to parent class to get removed from the toplevel_list.
805         Should fix 'random' crashes of #63474.
806
807         * gtk/gtktreemodelsort.c : chain finalize() to parent class
808
809 2001-11-03  Tor Lillqvist  <tml@iki.fi>
810
811         * modules/input/Makefile.am: Use -no-undefined on Windows. Look
812         for .dll or .so as appropriate as module suffix.
813
814         * gtk-zip.sh.in: Use correct import library names.
815
816         * gtk/gtk.def: Add a couple of missing entry points. (#63585)
817
818         * gtk/gtkimmodule.c (correct_libdir_prefix): New function, used on
819         Windows to turn build-time paths from a gtk.immodules distributed
820         as part of a binary package into runtime ones in the
821         end-user-chosen installation directory.
822         (gtk_im_module_init): Use it for module path and domain
823         directory.
824
825 2001-11-02  Tor Lillqvist  <tml@iki.fi>
826
827         * gtk/gtkrc.c (gtk_rc_make_default_dir): Fix typo: extraneous
828         comma.  Include gtkprivate.h for GTK_LIBDIR etc definitions on
829         Windows.
830
831 2001-10-30  Tor Lillqvist  <tml@iki.fi>
832
833         * Makefile (install-data-hook): Use cp, not $(LN_S) on the .pc
834         files. Configure on Win32 (running on Cygwin) thinks symlinks
835         exist, but pkg-config is not necesarily a Cygwin program, and
836         doesn't understand them.
837
838 Fri Nov  2 16:45:17 2001  Jonathan Blandford  <jrb@redhat.com>
839
840         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Clean up height code
841         a bit.  I don't think it's completely correct yet, but it's
842         getting there.
843
844 Fri Nov  2 16:14:15 2001  Owen Taylor  <otaylor@redhat.com>
845
846         * gtk/gtkviewport.c (gtk_viewport_size_request): Remove
847         random + 5 for width and height. If people want padding,
848         they should add padding. (Note the +5 isn't padding
849         that will always appear - it just appears in the case
850         where the widget is allocated it's requisition.)
851         (#51018, Janet Davis)
852
853 Fri Nov  2 15:53:23 2001  Owen Taylor  <otaylor@redhat.com>
854
855         * gtk/gtkimcontext.h (struct _GtkIMContextClass): Pad
856         the structure for future expansion.
857
858 Fri Nov  2 15:30:34 2001  Owen Taylor  <otaylor@redhat.com>
859
860         Patch from HideToshi Tajima (#51922)
861         
862         * gtk/gtkimmulticontext.c: Proxy set_use_preedit().
863
864         * gtk/modules/input/gtkimcontextxim.[ch]: Implement
865         set_use_preedit().
866         
867         * gtk/modules/input/gtkimcontextxim.[ch]: If we have
868         to destroy the input context because we change the
869         client window or use_preedit, make sure we empty
870         the preedit string.
871
872 Fri Nov  2 14:55:53 2001  Owen Taylor  <otaylor@redhat.com>
873
874         * gtk/{gtkcolorseldialog.c,gtkfilesel.c,gtkfontsel.c,
875         gtkgamma.c,gtkmessagedialog.c}: Go to the GUP
876         proposed ordering of buttons with [OK] in the lower
877         right hand corner. Patch from Gregory Merchan,
878         #56331.
879
880 Fri Nov  2 11:51:49 2001  Jonathan Blandford  <jrb@redhat.com>
881
882         * gtk/gtklabel.c (gtk_label_select_region_index): remove
883         extraneous gtk_label_clear_layout (label)
884
885 2001-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
886
887         * tests/makefile.msc, gtk/makefile.msc.in: Removed
888         -DGTK_DISABLE_COMPAT_H.
889
890         * docs/Changes-2.0.txt:
891         s/GDK_DISABLE_COMPAT_H/GDK_DISABLE_DEPRECATED/
892
893         * gtk/gtkcompat.h.in, gdk/gdkcompat.h: Removed from CVS.
894
895 Fri Nov  2 10:21:03 2001  Owen Taylor  <otaylor@redhat.com>
896
897         * examples/**/Makefile.am: Convert to use pkg-config
898         rather than gtk-config. (#53375, Skip Montanaro)
899
900 2001-11-02  Matt Wilson  <msw@redhat.com>
901
902         * gtk/gtkdialog.c (find_child_by_response_id): remove totally
903         broken unused, non-compiling, static function.
904
905 Fri Nov  2 08:17:06 2001  Owen Taylor  <otaylor@redhat.com>
906
907         * gtk/gtkdialog.c (gtk_dialog_set_response_sensitive): 
908         Iterate through children of the action area, not of
909         the vbox. (#58278, Sergey Kuzminov)
910
911 2001-11-01  Havoc Pennington  <hp@pobox.com>
912
913         * gtk/gtktext.c (gtk_text_set_position): handle -1 argument in
914         order to remove a workaround in Nautilus that forced
915         GTK_ENABLE_BROKEN
916
917         * gtk/gtkwidget.c (gtk_widget_modify_style): fix typos in the docs
918
919 Thu Nov  1 20:09:31 2001  Owen Taylor  <otaylor@redhat.com>
920
921         * gtk/gtkrange.c: Patch from George Lebl to 
922         fix division by zero for full scroll bars. (#62114)
923
924 Thu Nov  1 19:56:40 2001  Owen Taylor  <otaylor@redhat.com>
925
926         * gtk/gtkmain.c (gtk_main_do_event): ref/unref
927         around gtk_widget_event() if we are going to
928         set a flag afterwards. (#63464)
929
930 Thu Nov  1 19:44:48 2001  Owen Taylor  <otaylor@redhat.com>
931
932         * gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am: 
933         Actually add the missing/broken image icon as the
934         image for the "missing image" stock icon.
935
936 Thu Nov  1 19:18:34 2001  Owen Taylor  <otaylor@redhat.com>
937
938         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
939         Set a reasonable default height for the window.
940
941         * demos/gtk-demo/stock_browser.c (id_to_macro): Fix
942         bug where subsequent '-' weren't converted to '_'.
943         (#59550, Matthias Clasen)
944
945         * demos/gtk-demo/appwindow.c (menu_items): Don't right 
946         justify the Help menu - just include a comment on
947         how to do it. (#63539,  Marius Andreiana)
948
949         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): Don't 
950         list GTK_ICON_SIZE_INVALID.
951
952         * demos/gtk-demo/stock_browser.c: Show the biggest available
953         size, not a fixed size. (Often reported, including #63539, 
954         Marius Andreiana)
955
956 Thu Nov  1 19:11:35 2001  Jonathan Blandford  <jrb@redhat.com>
957
958         * gtk/gtkrbtree.c (gtk_rbtree_reorder_fixup): Fix reorder_fixup,
959         #59583
960
961         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): fix
962         warning.
963
964 Thu Nov  1 16:54:00 2001  Owen Taylor  <otaylor@redhat.com>
965
966         * gtk/gtktypeutils.h: Make GtkFunction return boolean, not gint.
967         (Daniel Elstner).
968
969 Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>
970
971         * gtk/gtkimcontext.[ch]: Add:
972           - A ::retrieve_surrounding signal that asks the widget for
973             context around the insertion point.
974           - A ::delete_surrounding signal that asks the widget to 
975             delete context aroudn the insertion point.
976           - gtk_im_context_set_context() for widgets to set context
977             around the insertion point in response to ::retrieve_context.
978           - gtk_im_context_get_context() for context to get context
979             around the insertion point
980
981         * gtkmarshal.list: Add BOOL:INT,INT
982
983         * gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
984         set_surrounding() methods, and the ::retrieve_surrounding /
985         ::delete_surrounding signals.
986
987         * gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
988         GtkIMContext::retrieve_surrounding / ::delete_surrounding
989         signals.
990
991 Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>
992
993         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
994         it's amazing how well things work sometimes, even when they're
995         completely wrong.
996
997         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
998         where you could try to collapse a node w/o it having children.
999
1000         (gtk_tree_view_class_init): remove Shift L<->R as they already
1001         existed for expand/collapse.
1002
1003 Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>
1004
1005         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
1006         found by Matt Wilson.
1007
1008 Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>
1009
1010         * gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
1011         Control, and Shift|Control L<->R, #63475
1012
1013 Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>
1014
1015         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
1016         infinite loop noticed by yosh.
1017
1018 2001-11-01  Michael Meeks  <michael@ximian.com>
1019
1020         * gtk/gtksocket.c (gtk_socket_unrealize): unset the
1021         GTK_REALIZED flag so we don't re-enter when we are
1022         destroyed from the plug side.
1023
1024 Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>
1025
1026         * gtk/gtkoptionmenu.c (gtk_option_menu_detacher): 
1027         Add a "menu" property and notify on it. (#62798,
1028         Padraig O'Briain)
1029
1030         * gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
1031         gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}: 
1032         Fix set_text to take a gchar, not a guchar, and to have 
1033         a len argument.
1034
1035 Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>
1036
1037         * gtk/gtkstock.c: fix typo to make it compile
1038
1039 Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>
1040
1041         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
1042         the widget is insensitive, draw the text insensitively, #63306
1043
1044 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
1045
1046         * gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
1047
1048 Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1049
1050         * gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
1051         gtk_selection_data_set_tree_row, #60218
1052         (gtk_tree_get_row_drag_data): rename
1053         gtk_selection_data_get_tree_row, #60218
1054
1055         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
1056         get this right, after the third try, #63122.
1057
1058 2001-10-31  jacob berkman  <jacob@ximian.com>
1059
1060         * gdk/gdkselection.h (GDK_TARGET_STRING): 
1061         (GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
1062         for Xatoms (and not using the XA_* macros)!
1063
1064 Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>
1065
1066         * gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
1067         gtk_window_get_focus() getter to determine the currently
1068         focused widget within the window. (#63145, request
1069         from Damian Ivereigh)
1070
1071 Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>
1072
1073         * gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695
1074
1075         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
1076         GTK_SELECTION_NONE enum.
1077         (_gtk_tree_selection_internal_select_node): ditto
1078
1079         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
1080         constness.
1081
1082         * gtk/gtkcellrenderertoggle.c: more yummy constness.
1083
1084         * gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
1085         if mode == GTK_SELECTION_NONE
1086
1087 Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
1090         "cursor_changed" signal, #62850.
1091
1092 2001-10-31  Matt Wilson  <msw@redhat.com>
1093
1094         * gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
1095         allocating the treedatalist, zero it to make sure the values are
1096         cleared from any garbage that was in this chunk.
1097
1098 2001-10-31  Murray Cumming  <murrayc@usa.net>
1099
1100         * gtk/cellrenderertext.h: "edited" default signal handler
1101         gchar* args are now const.
1102         gtk/cellrenderertoggle.h: "toggled" default signal handler
1103         gchar* arg is now const.
1104         Also changed other signal handlers for "edited" and "toggled" to
1105         have the same signature.
1106
1107 Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>
1108
1109         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
1110         rewrite.  Static models now totally work.  I'm not 100% sure about
1111         row_inserted and row_changed, but I'll get those later.
1112
1113 2001-10-30  Sven Neumann  <sven@gimp.org>
1114
1115         * configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
1116         output for configure --help.
1117
1118 2001-10-30  Havoc Pennington  <hp@pobox.com>
1119
1120         * gtk/gtktextview.c (changed_handler): Update the IM spot location
1121         here, if text was invalidated in the visible area, because the
1122         scroll offset doesn't normally change in that case, and the mark
1123         isn't set, just implicitly moved over as text is added/removed
1124         
1125 Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>
1126
1127         * gtk/gtkseparatormenuitem.c: Code cleanup.
1128         (gtk_separator_menu_item_class_init): Fix bugs in this code.
1129
1130 2001-10-29  jacob berkman  <jacob@ximian.com>
1131
1132         * gdk/Makefile.am (LDFLAGS): 
1133         * gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
1134         LDFLAGS, so put win32 flags in here
1135
1136 Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>
1137
1138         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
1139         I can't believe this took this long to fix.
1140
1141 Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>
1142
1143         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
1144         reordered signal.
1145
1146 Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>
1147
1148         * gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
1149         the focus to the fileop entry for create dir / rename
1150         file. (#62838)
1151
1152 Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>
1153
1154         * configure.in: Don't use AC_CHECK_FILE to check for a 
1155         file since it always spits warnings about cross compilation,
1156         use -f instead. It's not like we cross compile properly
1157         anyways.
1158
1159         * configure.in (gtktargetlib): Move call to AC_PROG_CC
1160         to suppress autoconf warning.
1161
1162         * acconfig.h: Add some missing #undefs from recent
1163         Win32 additions.
1164
1165 Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>
1166
1167         * m4macros/gtk-2.0.m4: Don't try to use pkg-config
1168         when we didn't find it. (#62944, Eric Lemings)
1169
1170         * m4macros/gtk-2.0.m4: Fix problem with spaces around =
1171         sign in assignment. (#63209, Arkadiusz Miskiewicz)
1172
1173 2001-10-29  Anders Carlsson  <andersca@gnu.org>
1174
1175         * gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
1176         the buttons size request before using it. Fixes #61696.
1177
1178 2001-10-29  Tor Lillqvist  <tml@iki.fi>
1179
1180         * README.win32: Updates.
1181
1182         * gtk-zip.sh.in: New file, used to build distribution package for
1183         Windows.
1184
1185         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
1186         applicable with GDKVAR.
1187
1188         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
1189         Wintab library.
1190
1191         * gdk/win32/gdkwin32.h
1192         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
1193         X11 headers better, and to enable gdkwin32.h to be installed and
1194         included from applications, but not the *-win32.h headers.
1195
1196         * gdk/win32/*.c: Corresponding small changes, simplifications of
1197         #includes.
1198         
1199         * gdk/win32/gdkregion-win32.c: Remove.
1200
1201         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
1202
1203         * gdk/win32/gdkfont-win32.c
1204         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
1205
1206         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
1207         GDK_NONE values into hash table.
1208
1209         * gtk/gtk.def: Update.
1210
1211         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
1212         gethostname().
1213
1214         * gtk/gtkmain.c 
1215         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
1216         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
1217         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
1218         g_win32_get_package_installation_subdirectory() with the actual
1219         DLL name saved above. Redefine above directory name macros to call
1220         these functions. Remove some ifdefs.
1221
1222         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
1223         variable for export on Win32) also to the _vars file.
1224
1225         Changes for autoconfiscated build on Win32, and addition of Win32
1226         backend to the related files:
1227         
1228         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
1229         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
1230         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
1231         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
1232         win32 target, using pangowin32. Don't use the
1233         -export-symbols-regex option on Win32, we use .def files to list
1234         exported symbols. Check <winsock.h> (for gethostname() in
1235         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
1236         prevent premature m4 expansion.
1237
1238         * acconfig.h: Add HAVE_WINTAB.
1239
1240         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
1241         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
1242         MS_LIB_AVAILABLE, build MS import library. Install the import
1243         libraries. If HAVE_WINTAB, link with the Wintab library.
1244
1245         * gdk/win32/Makefile.am: Actually enable building the win32
1246         objects here, not just list all files in EXTRA_DIST. Link in the
1247         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
1248         copy the Wintab library into the .libs directory. 
1249
1250         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
1251         name of the GDK DLL when fetching the icon. Use the HMODULE saved
1252         in gdk_dll_hinstance by DllMain.
1253
1254         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
1255         build/win32/lt-compile-resource script.
1256
1257         * gdk/win32/rc/gdk.rc.in
1258         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
1259
1260         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
1261         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
1262         file. Install import libraries.
1263
1264 2001-10-29  Anders Carlsson  <andersca@gnu.org>
1265
1266         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
1267
1268 2001-10-28  Hans Breuer  <hans@breuer.org>
1269
1270         * gdk/gdk.c gdk/gdkevents.c
1271           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
1272           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
1273           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
1274           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
1275           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
1276           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
1277           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
1278         static correct-ness, underscore prefixing of library internal 
1279         functions
1280         (applied the undisputed and the win32 part. Of the latter 
1281          I'm probably the one who will change it back again, if Owen
1282          decides that the Gdk*Impl types should not be private to Gdk)
1283
1284         * gdk/gdk.def : added the remaining exported functions
1285
1286 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
1287
1288         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
1289         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
1290         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
1291
1292 2001-10-28  jacob berkman  <jacob@ximian.com>
1293
1294         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
1295         gtk_settings_get_default() here as that requires an X connection
1296         (which breaks doc building with no X connection) and is not
1297         multihead safe
1298         (gtk_color_selection_init): delay palette loading until realize
1299         time
1300         (gtk_color_selection_realize): load the palette, and initialize
1301         the global palette if it hasn't been already
1302
1303         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
1304         visual/cmap fields of klass->info since they are gone
1305         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
1306         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
1307         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
1308
1309         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
1310         cmap fields
1311         (gtk_preview_get_visual):
1312         (gtk_preview_get_cmap): mark as deprecated
1313
1314         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
1315         changes
1316
1317 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
1320         structure to have GObject not GtkObject as
1321         parent_instance. (Jeff Franks.)
1322
1323 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
1324
1325         * gdk/x11/gdkinput.c: Typo fix.
1326
1327 2001-10-26  Havoc Pennington  <hp@pobox.com>
1328
1329         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
1330         update_im_spot_location here explicitly
1331         (gtk_text_view_reset_im_context): don't update the spot location
1332         here
1333
1334 2001-10-27  Anders Carlsson  <andersca@gnu.org>
1335
1336         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
1337         This fixes #62942.
1338
1339         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
1340         Clarify that we're returning a spin button in the _new function.
1341         This fixes #54097.
1342         
1343 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
1344
1345         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
1346         Unfortunately, people apparently erroneously connect
1347         to ::clicked for GtkToggleButton and expect
1348         they know what happened in the default signal handler
1349         instead of appropriately connecting to notification
1350         signal ::toggled. When the revolution comes, such
1351         people will be first against the wall.
1352
1353         We'll just have to go back to the old less-reliable
1354         set-it-back hacks for handling model-view check
1355         buttons and radio buttons. :-(. 
1356
1357 2001-10-27  Hans Breuer  <hans@breuer.org>
1358
1359         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
1360           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
1361           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
1362           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
1363           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
1364           gtk/gtktreestore.c gtk/gtkvbbox.c : 
1365         to simplify parsing for exported functions:
1366         - made implementation signature static, when the local 
1367           prototype already was
1368         - put the functions return value on it's own line
1369         - added as space between the function name and the 
1370           opening bracket
1371
1372         * gtk/gtk.def : added the remaining exported functions
1373
1374 2001-10-27  Anders Carlsson  <andersca@gnu.org>
1375
1376         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
1377         Add note about width having to be greater than 0. This fixes
1378         #55574. 
1379
1380         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
1381         Fix docs to say previous instead of next.
1382         (gtk_text_iter_backward_word_start): Likewise.
1383         This fixes bug #62980.
1384
1385         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
1386         that the valid width is in range 0-65535 pixels. Fixes bug 
1387         #56754.
1388
1389         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
1390         a dot in the documentation. Fixes bug #62632.
1391
1392         * gdk/x11/gdkmain-x11.c: Replace int and guint with
1393         long and gulong in some places to make the code 64-bit
1394         clean.
1395         (_gdk_windowing_init_check): Replace gint with gulong.
1396         This patch was made by George Lebl and fixes bug #62113.
1397
1398         * tests/testgtk.c (create_range_controls): Don't set a 
1399         fixed height on the hscale widget. This fixes "bug" 
1400         #55840.
1401         (create_window_states): Set up destroy signals so that
1402         all windows will be destroyed when one is. This fixes 
1403         bug #58133.
1404
1405 2001-10-26  Anders Carlsson  <andersca@gnu.org>
1406
1407         * gtk/gtktreeview.c: 
1408         (gtk_tree_view_class_init): Create new "indent_expander"
1409         style property.
1410
1411         (gtk_tree_view_get_arrow_xrange): Add a tree argument
1412         to the function since the xrange can change depending
1413         on where in the tree we are. 
1414         
1415         (coords_are_over_arrow): Update function call to
1416         gtk_tree_view_get_arrow_xrange.
1417         (gtk_tree_view_draw_arrow): Likewise.
1418         
1419         (gtk_tree_view_real_expand_collapse_cursor_row):
1420         Call real_{expand|collapse}_row, so that we'll have an
1421         animation.
1422
1423 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
1424
1425         * tests/Makefile.am: fixed a small typo
1426
1427 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
1428
1429         * demos/gtk-demo/list_store.c (create_model): Anders
1430         Carlsson suggested to use G_N_ELEMENTS here
1431
1432 2001-10-26  Sven Neumann  <sven@gimp.org>
1433
1434         * gtk/gtkbutton.[ch]
1435         * gtk/gtkdnd.c: fixed inline comments
1436         
1437         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
1438
1439 2001-10-26  Hans Breuer  <hans@breuer.org>
1440
1441         * gdk-pixbuf/gdk_pixbuf.def : 
1442         * gdk/gdk.def : 
1443         * gtk/gtk.def : updated externals
1444
1445         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
1446         gdk_window_lookup implementation. It already was in
1447         gdk/win32/gdkwindow-win32.c
1448
1449         * gdk/win32/gdkproperty-win32.c : made it compile again
1450         after GdkAtom API change
1451
1452         * gtk/gtk/makefile.msc.in : updated
1453
1454 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
1455
1456         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
1457         require GLib 1.3.10.
1458
1459         * NEWS: updates.
1460
1461 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
1462
1463         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
1464         invalid nodes.
1465          (_gtk_rbnode_rotate_right): Ditto.
1466          (_gtk_rbtree_node_mark_invalid): New function.
1467          (_gtk_rbtree_node_mark_valid): New function.
1468
1469         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
1470         GObject, not a GtkObject.
1471         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
1472         correct.
1473         (gtk_tree_model_sort_row_deleted): ditto.
1474         (gtk_tree_model_sort_{un,}ref_node): Fix.
1475
1476         * gtk/gtktreeview.c: Protean incremental reflow support (commented
1477         out)
1478
1479         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
1480         to const char *key.
1481
1482         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
1483         Important 1 line fix to fix a lot of refcounting woes.
1484
1485 2001-10-25  Matt Wilson  <msw@redhat.com>
1486
1487         * gtk/gtktextview.c (gtk_text_view_destroy): call
1488         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
1489         now invalidates) so that we remove our idle functions.
1490         (gtk_text_view_destroy_layout): remove the first_validate_idle as
1491         well.
1492
1493         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
1494         the 'indent' property is G_MININT to G_MAXINT.  Don't use
1495         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
1496         instead.
1497
1498 2001-10-24  Anders Carlsson  <andersca@gnu.org>
1499
1500         * gtk/gtktreeview.c: 
1501         (gtk_tree_view_real_expand_row): add an animate argument
1502         (gtk_tree_view_real_collapse_row): likewise
1503         
1504         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
1505         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
1506         (gtk_tree_view_collapse_row): update functions that call
1507         real_{expand|collapse}_row to set the animate argument 
1508         accordingly.
1509         
1510 2001-10-24  Alex Larsson  <alexl@redhat.com>
1511
1512         * gdk/linux-fb/gdkfont-fb.c:
1513         Update to new Pango APIs
1514
1515         * gdk/linux-fb/gdkproperty-fb.c:
1516         Update to new GdkAtom APIs
1517
1518         * gdk/linux-fb/gdkwindow-fb.c:
1519         Remove warnings
1520
1521 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
1522
1523         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
1524
1525 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
1526
1527         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
1528         s_path as a child path
1529
1530 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
1531
1532         * gtk/gtktreemodelsort.c: more changes in an attempt to get
1533         it right. It's not yet ready for general consumption.
1534
1535         * tests/treestoretest.c: add a button and entry for the new
1536         iter_change function
1537         (iter_change): new function, to test
1538         the row_changed signal implementation of the GtkTreeModelSort
1539
1540         * tests/testtreesort.c: cleanups, changes to test more features
1541         of the GtkTreeModelSort at once
1542
1543 2001-10-24  Havoc Pennington  <hp@redhat.com>
1544
1545         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
1546         remove hack to strip off the bogus newline, since we killed the
1547         bogus newline; fixes #61779
1548
1549 2001-10-24  Havoc Pennington  <hp@redhat.com>
1550
1551         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
1552         create layout if we didn't have one
1553         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
1554         as appropriate, avoids blanking the screen 
1555         (gtk_text_view_invalidate): new function to do invalidation,
1556         containing old guts of invalidated_handler
1557
1558 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
1559
1560         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
1561         dreadful tooltips.
1562
1563 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
1564
1565         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
1566         set window->parent (except or the root window itself); if 
1567         the window's parent is not a GdkWindow, or is a window of 
1568         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
1569
1570         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
1571         windows of type GDK_WINDOW_FOREIGN.
1572
1573 2001-10-24  Havoc Pennington  <hp@pobox.com>
1574
1575         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
1576         the front of a segment, use the "slow" technique for moving
1577         backward, so we don't mess up the any_segment field in the iter. 
1578         Fixes #57707
1579
1580         * tests/testtextbuffer.c: add code to detect #57707, to avoid
1581         regression
1582
1583 2001-10-23  Havoc Pennington  <hp@redhat.com>
1584
1585         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
1586         if selection contains some editable text, #60975
1587         (gtk_text_view_scroll_to_iter): remove warning about scrolling
1588         prior to map; it should actually be OK to do so in many cases, 
1589         it would be nice to warn about scrolling when many lines have
1590         height 0, but I don't know what to do about that. Perhaps 
1591         move part of flush_scroll into this function? comment added 
1592         to consider this.
1593
1594 2001-10-23  Havoc Pennington  <hp@redhat.com>
1595
1596         * gtk/gtktextview.c (changed_handler): Correctly keep the same
1597         text on the top of the screen, considering that the changed region
1598         may have overlapped the first paragraph. Should fix msw's "text
1599         widget scrolled to wrong place on map" bug, and probably some
1600         other scrolling cases as well.
1601         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
1602         instead of some random value
1603
1604         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
1605         grab_focus, so #59708 is really fixed
1606
1607 2001-10-24  Anders Carlsson  <andersca@gnu.org>
1608
1609         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
1610         (popup_targets_received): Call append_action_signal with stock items
1611         
1612         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
1613         (gtk_label_do_popup): Call append_action_signal with stock items
1614         
1615         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
1616         (popup_targets_received): Call append_action_signal with stock items
1617
1618 2001-10-23  Havoc Pennington  <hp@redhat.com>
1619
1620         * gtk/gtktextview.c (changed_handler): queue a resize here; will
1621         temporarily slow down the widget a lot, until we figure out how to
1622         optimize to avoid full redraw everytime we queue a resize.
1623
1624 2001-10-23  Havoc Pennington  <hp@redhat.com>
1625
1626         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
1627         0 and char_len == 0, bug #61729
1628
1629 2001-10-23  Havoc Pennington  <hp@redhat.com>
1630
1631         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
1632         return value, #61714 (Vitaly Tishkov)
1633         (gtk_text_iter_backward_sentence_starts): ditto
1634         (gtk_text_iter_backward_word_starts): ditto
1635         (gtk_text_iter_forward_word_ends): ditto
1636         (gtk_text_iter_forward_sentence_ends): ditto
1637         (gtk_text_iter_backward_cursor_positions): ditto
1638
1639 2001-10-23  Havoc Pennington  <hp@redhat.com>
1640
1641         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
1642         fix from Dov Grobgeld, #61858
1643
1644 2001-10-23  Havoc Pennington  <hp@redhat.com>
1645
1646         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
1647         Update IM spot location at appropriate times, #50626
1648         (Hidetoshi Tajima)
1649
1650 2001-10-23  Havoc Pennington  <hp@redhat.com>
1651
1652         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
1653         on grab focus, unless it's caused by button click, #59708
1654
1655 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
1656
1657         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
1658
1659         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
1660         G_CONST_RETURN. (Murray Cumming)        
1661
1662         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
1663         Make G_CONST_RETURN.
1664
1665         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
1666         results of g_get_home_dir().
1667
1668         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
1669         copy. Storing the return from gtk_entry_get_text() is evil.
1670
1671         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
1672         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
1673         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
1674         gtk/gtksignal.c: Add const.
1675
1676         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
1677
1678         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
1679         if we are setting them on private widgets.
1680
1681         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
1682         Duplicate entry->text before setting it as object data.
1683
1684 2001-10-22  Havoc Pennington  <hp@redhat.com>
1685
1686         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
1687         up a char from the end iterator, fixes #61859 ("can't put cursor
1688         at the end of the buffer")
1689
1690         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
1691         to work with delimiters other than newline.
1692
1693         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
1694         get_bytes_in_line
1695
1696         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
1697         last line, since the newline is no longer counted.
1698         (gtk_text_iter_get_bytes_in_line): ditto
1699
1700 2001-10-22  Havoc Pennington  <hp@redhat.com>
1701
1702         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
1703         #58290 would trigger if it reappeared, I think
1704
1705 2001-10-22  Havoc Pennington  <hp@redhat.com>
1706
1707         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1708         add temporary code to dump btree contents on assertion failure
1709         described in #62656
1710         
1711         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
1712         assertions that we're getting the right end iter segment
1713
1714         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1715         verify that we aren't on the end iterator after moving 
1716         forward one segment - fixes return value in an obscure case. 
1717         Also, some trivial code cleanup/rearranging.
1718         
1719 2001-10-22  Havoc Pennington  <hp@redhat.com>
1720
1721         * gtk/gtktextlayout.h: add a #error unless you define
1722         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
1723
1724         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
1725         
1726 2001-10-22  Havoc Pennington  <hp@redhat.com>
1727
1728         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
1729         #62365
1730
1731 2001-10-22  Havoc Pennington  <hp@redhat.com>
1732
1733         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
1734         #62436
1735
1736 2001-10-22  Havoc Pennington  <hp@redhat.com>
1737
1738         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
1739         #62366
1740
1741 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
1742
1743         * gtk/gtklabel.c: Add cursor-position, selection-bound 
1744         properties. (#62148, reported by Padraig O'Briain)
1745
1746         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
1747         to cursor_position. (1.3.x addition, text_position is an awful
1748         name.) Make cursor_position read-only to avoid sticky questions
1749         of interaction with selection_bound. (#62636, reported by
1750         Padraig O'Briain)
1751
1752 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
1753
1754         Fixing popup menus to have "Paste" sensitized correctly. Original
1755         patches from Damian Ivereigh, much mangled.
1756
1757         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
1758         gtk_selection_data_targets_include_text(). (#60854)
1759
1760         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
1761         the clipboard has text" function gtk_clipboard_wait_is_text_available.
1762         (#60854)
1763
1764         * gtk/gtkentry.c: Only enable the paste item if the clipboard
1765         contains text. (#60973)
1766
1767         * gtk/gtktextview.c: Only enable the paste item if the clipboard
1768         contains text. (#60975)
1769
1770 2001-10-22  Havoc Pennington  <hp@redhat.com>
1771
1772         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
1773         "height_lines" and "width_columns" properties, it doesn't make
1774         sense to set the size request on a text view really. #62103
1775
1776 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
1777
1778         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
1779         g_node_depth is broken, and that it's not worth being consistent
1780         with it.
1781
1782 2001-10-22  Havoc Pennington  <hp@redhat.com>
1783
1784         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
1785         docs, #61777
1786         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
1787         change the two boolean args to a flags field, so we can extend 
1788         to add case insensitive, regexp searches later. #61852
1789
1790 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
1791
1792         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
1793         reflect reality, #62810
1794
1795 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
1796
1797         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
1798
1799         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
1800         system.  Instead of having a window the size of the tree, we have
1801         a window the size of widget->allocation, and simply draw with the
1802         offset.
1803         (coords_are_over_arrow): ditto.  Move to window coordinates.
1804         (do_prelight): ditto
1805         (do_unprelight): ditto
1806
1807         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
1808         Minor fix from Kristian Rietveld to fix unsorted case.
1809
1810 2001-10-22  jacob berkman  <jacob@ximian.com>
1811
1812         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
1813         a PIXMAP cell (fixes crash when using PIXTEXT cells)
1814
1815 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
1816
1817         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
1818         (#58768, Vitaly Tishkov)
1819         
1820         * gtk/gtkobject.h: Deprecate with abandon. 
1821         (#61942, Vitaly Tishkov, Matthias Clasen)
1822
1823         * gtk/gtksignal.h: Deprecate everything.
1824
1825         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
1826         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
1827         (#61942, Matthias Clasen)
1828
1829         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
1830         Havoc Pennington)
1831
1832         * gtk/gtkitemfactory.h: Deprecate compat functions
1833         for GtkMenuFactory code. (#62071)
1834
1835         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
1836         gdk_draw_text,gdk_draw_text_wc. (#62071)
1837
1838 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
1839
1840         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
1841         g_thread_init(), we don't want to link to -lgthread if we don't
1842         have to.
1843
1844 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
1845
1846         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
1847         Add a function, gdk_threads_init() that must be explicitely 
1848         called to enable the GDK thread mutex.
1849
1850 2001-10-22  Jakub Steiner <jimmac@ximian.com>
1851
1852         * gtk/stock-icons/stock_stop.png: no body parts
1853         
1854 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
1855
1856         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
1857         problem with g_return_if_fail return value.
1858
1859         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
1860         virtual atom code from the gdk-multihead branch, removing the per-display
1861         part. Virtualizing atoms needs to be done now to prevent compat
1862         breakage in direct Xlib accessing code in the future. (#62208)
1863  
1864         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
1865         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
1866  
1867         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
1868         an opaque pointer type so the compiler catches attempts
1869         to mingle it with X atoms.
1870
1871         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
1872           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
1873           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
1874           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
1875           tests/testdnd.c,tests/testselection.c: 
1876         Fix up for above atom changes.
1877
1878         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
1879         now have the ability to add custom predefines.
1880
1881         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
1882         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
1883         to gtk_clipboard_get().
1884
1885         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
1886         for GdkAtom => pointer change.
1887
1888         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
1889         atoms, fix for GdkAtom => pointer change.
1890
1891 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
1892
1893         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
1894         new function spin_button_get_arrow_size() instead.
1895
1896         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
1897         arrow was hardcoded, it's now variable.
1898
1899         Fixes bug #50200
1900
1901 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
1902
1903         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
1904         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
1905         for those
1906
1907 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
1908
1909         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
1910         in favor of g_signal_*, gtk_object_* in favor of 
1911         g_object_*.
1912
1913 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
1914
1915         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
1916         from GObject now, we have to use the g_object_* functions, not
1917         gtk_object_*.
1918
1919 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
1920
1921         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
1922         nailed down now (this code is not yet ready for general consumption)
1923
1924 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
1925
1926         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
1927         for use_align
1928
1929 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
1930
1931         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
1932
1933 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
1934
1935         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
1936         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
1937         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
1938         GObject, not GtkObject. (#62621)
1939
1940 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
1941
1942         * tests/testsocket.c: Remove now useless include of unistd.h,
1943         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
1944         
1945 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
1946
1947         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
1948         Pango font API. #61933. (Untested, even for compilation.)
1949
1950 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
1951
1952         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
1953         export gtk_disable_setlocale(). (Caught by Sven Neumann)
1954
1955 2001-10-18  Havoc Pennington  <hp@redhat.com>
1956
1957         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
1958
1959 2001-10-18  Havoc Pennington  <hp@redhat.com>
1960
1961         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
1962         to GTK_RUN_LAST, #50239
1963
1964 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
1965
1966         * gtk/gtkimmodule.c (match_locale):
1967         Support "*" for all locales with least priority
1968         when to select default im module, #58201
1969
1970 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
1971
1972         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
1973         Fix docs. (#61976)
1974  
1975         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
1976
1977         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
1978
1979         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
1980         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
1981         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
1982         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
1983         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
1984         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
1985         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
1986
1987         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
1988
1989         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
1990         Don't restrict the width of the spinbutton entry field 
1991         to 10 digits. (#58681)
1992
1993 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
1994
1995         * tests/testtreeflow.c: new test program for the tree.
1996
1997 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
1998
1999         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
2000         reported by (Oleg Maiboroda), #62600
2001
2002 2001-10-18  Michael Meeks  <michael@ximian.com>
2003
2004         * gtk/gtkentry.c (gtk_entry_set_property),
2005         (gtk_entry_get_property): impl 'text'
2006         (gtk_entry_class_init): add the 'text' prop.
2007         (gtk_entry_insert_text): notify 'text' changed.
2008         (gtk_entry_delete_text): ditto.
2009
2010 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
2011
2012         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
2013         Documentation updates.
2014
2015 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
2016
2017         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
2018         in truncating length of text to MAX_SIZE. (Found by 
2019         Padraig O'Briain, #62055)
2020
2021 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
2022
2023         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
2024         MNEMONIC_ACTIVATE; signal was changed a long time
2025         ago.
2026
2027         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
2028         Fix wrong return statement. (Reported by HideToshi
2029         Tajima and others.)
2030
2031         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
2032         left over select_all vfunc.
2033
2034 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
2035
2036         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
2037         a utility function to translate coordinates relative to
2038         one widget's allocation to coordinates relative to another
2039         widget's allocation.
2040
2041         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
2042         that:
2043          - only accepts external focus if there is no active
2044            member of the group or the button is active.
2045          - makes arrow keys move the active button as well
2046            as the focus
2047          - make tab tab out directly.
2048         This makes a radio button group act as a single focus location.
2049         (#53577).
2050         
2051         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
2052         it was only a small optimization that didn't matter and made
2053         things more complicated.
2054
2055         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
2056         sorter for FOCUS_TAB as we did for the other focus directions,
2057         sort by center of widgets, not upper-left corner. (Shouldn't
2058         matter in general.)
2059
2060         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
2061         from the different types of focusing: encapsulate sorting the
2062         widgets for the focus direction into one routine
2063         (gtk_container_focus_sort()) and then share the work of moving the
2064         focus between the different focus directions.
2065
2066         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
2067         work correctly with focus chains containing non-immediate
2068         children. Sorting was being done using allocation coordinates for
2069         each widget in the focus chain, and if there were intermediate
2070         window-widgets, these allocations would not be in the same
2071         coordinate system.
2072
2073 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
2074
2075         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
2076         mnemonic_activate function to option menu.
2077
2078 2001-10-15  Murray Cumming <murrayc@usa.net>
2079
2080         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
2081           Corrected the type names used in some calls to g_signal_new().
2082         
2083 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
2084
2085         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
2086         specs, use g_pattern_spec_equal() instead of direct field accesses.
2087         upon compressing two equal paths of the same type, the resulting
2088         priority has to be the maximum.
2089         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
2090         GtkPathPriorityType enum and make it a macro.
2091
2092 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
2093
2094         * gtk/gtkwidget.c: Fix some doc comments.
2095
2096 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
2097
2098         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
2099         on empty models.
2100
2101 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
2102
2103         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
2104         Remove stale gdk backend includes.
2105  
2106 2001-10-10  Michael Meeks  <michael@ximian.com>
2107
2108         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
2109         and value_in_list properties.
2110         (gtk_combo_set_value_in_list): notify change.
2111         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
2112
2113 2001-10-11  James Henstridge  <james@daa.com.au>
2114
2115         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
2116         that gtk+ can be built with automake 1.5 while not breaking
2117         things for automake 1.4.
2118
2119 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
2122         (#60606)
2123
2124         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
2125         to disable calling setlocale (LC_ALL, "").
2126
2127         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
2128         docs that this function is not typically useful.
2129
2130         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
2131         Automatically initialize GDK for the current locale
2132         on gdk_init(). Don't reset locale to C when
2133         XSupportsLocale() fails.
2134
2135         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
2136         useless checks for UTF-8 locale breakage that mattered
2137         only for X.
2138
2139         * examples/calendar/calendar.c
2140         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
2141         gtk_set_locale().
2142
2143         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
2144         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
2145
2146 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
2147
2148         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
2149
2150         Fixes bug #61904
2151
2152 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
2153
2154         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
2155         new function, #61923
2156         (gtk_tree_selection_path_is_selected): Ditto
2157
2158 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
2159
2160         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
2161         not a GtkObject.  Thanks andersca.
2162
2163         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
2164
2165 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
2166
2167         * gtk/gtktreeviewcolumn.c
2168         (gtk_tree_view_model_sort_column_changed): fix broken code.
2169
2170 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
2171
2172         * gtk/gtkselection.c: s/succesfully/successfully/g
2173
2174 2001-10-08  Havoc Pennington  <hp@pobox.com>
2175
2176         * demos/gtk-demo/stock_browser.c: remove unused enum
2177
2178         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
2179         pass the current selection state of the node in to the user
2180         selection func
2181
2182 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
2183
2184         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
2185         non-existent function gdk_x11_cursor_get_xid 
2186         by gdk_x11_cursor_get_xcursor.
2187
2188 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
2189
2190         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
2191         warning.
2192
2193         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
2194         unref nodes, #okay61676
2195
2196         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
2197         to the property; no need to clear the other columns.  Also, we go
2198         to 'unsorted' if the model supports it.
2199
2200 2001-10-05  Sven Neumann  <sven@gimp.org>
2201
2202         * demos/testpixbuf-save.c
2203         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
2204         feature.
2205
2206 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
2207
2208         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
2209         destroy the search dialog
2210
2211         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
2212         added check to prevent creation of a search dialog if there's
2213         already one around
2214
2215         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
2216         it instead of "search-dialog" (when getting/setting the search dialog
2217         widget).
2218
2219 2001-10-05  Jakub Steiner <jimmac@ximian.com>
2220
2221         * gtk/stock-icons/stock_broken_image.png: broken images icon
2222
2223 2001-10-04  Havoc Pennington  <hp@pobox.com>
2224
2225         Fix #56586
2226         
2227         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
2228         accelerator setting here...
2229
2230         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
2231         because we try to use it when a menu bar hasn't necessarily been 
2232         initialized.
2233
2234 2001-10-03  Havoc Pennington  <hp@redhat.com>
2235
2236         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
2237         it previously verified incorrect behavior
2238
2239         Fixes for #61565
2240         
2241         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
2242         off the end
2243         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
2244         the end
2245         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
2246         the end
2247         (gtk_text_iter_forward_lines): if on the last line, move to end of
2248         it
2249
2250         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
2251         don't return a line off the end
2252
2253 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
2254
2255         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
2256         functions to do_insert_text and do_delete_text, add signals
2257         insert_text, delete_text and changed
2258
2259         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
2260         and changed. Updates to match new situation.
2261
2262         * gtk/gtkspinbutton.c: updates to match new situation
2263
2264         * gtk/gtkoldeditable.h: remove signals changed, insert_text
2265         and delete_text
2266
2267         * gtk/gtkoldeditable.c: updates to match new situation
2268
2269         * gtk/gtktext.c: updates to match new situation
2270
2271         Fixes bug #59803
2272
2273 2001-10-03  Havoc Pennington  <hp@redhat.com>
2274
2275         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
2276         position
2277
2278         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
2279         changes
2280
2281         * tests/testtextbuffer.c (logical_motion_tests): updates
2282
2283 2001-10-03  jacob berkman  <jacob@ximian.com>
2284
2285         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
2286         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
2287         * gtk/gtksettings.c (apply_queued_setting): 
2288         * gtk/gtkmain.c (gtk_init_check): 
2289         * gtk/gtkcontainer.c (gtk_container_child_get_property):
2290         s/retrive/retrieve/
2291
2292 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
2293
2294         * gtk/gtktreemodelsort.[ch]: preparation for surgery
2295         * tests/testtreesort.c: ditto
2296
2297 2001-10-02  Havoc Pennington  <hp@redhat.com>
2298
2299         Throughout: assorted docs
2300         
2301         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
2302         gdk_window_set_geometry_hints() should be used instead.
2303
2304         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
2305         document them
2306
2307         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
2308         seem to exist in any .c files
2309
2310         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
2311         g_return_if_fail (pixel < colormap->size).
2312
2313 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
2314
2315         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
2316         NULL for @target_list to mean, use
2317         gtk_drag_dest_get_target_list (widget).
2318
2319         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
2320         drop could hang when calling gtk_drag_finish with 
2321         success == FALSE and del == TRUE.
2322
2323         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
2324         drops without a matching target found would propagate
2325         to the parent widget rather than being rejected.
2326
2327         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
2328         Use text_view->dnd_mark instead of mark name to be
2329         consistent with the rest of the code.
2330
2331         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
2332         pendantically correct for a drop-only-in-some-places
2333         widget. (Check whether you can insert in drag_drop,
2334         not just in drag_motion ... matters in theory, and
2335         for Motif drag and drop in practice.)
2336
2337         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
2338         Damian Ivereigh to not allow drops on non-editable
2339         entries. (#61124)
2340
2341         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
2342         text to be moved from a non-editable entry.
2343         
2344 2001-10-03  James Henstridge  <james@daa.com.au>
2345
2346         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
2347         s/width/fixed_width/ in order to get things to compile.
2348
2349 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
2350
2351         * gtk/gtkcelleditable.c: docs
2352
2353         * gtk/gtktreemodel.h: more docs.
2354
2355 2001-10-02  Havoc Pennington  <hp@redhat.com>
2356
2357         * gdk/x11/gdkwindow-x11.c: docs
2358
2359         * tests/testtextbuffer.c (logical_motion_tests): add sentence
2360         boundary tests
2361
2362 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
2363
2364         * demos/gtk-demo/Makefile.am: add editable_cells.c,
2365         list_store.c and tree_store.c
2366
2367         * demos/gtk-demo/appwindow.c: remove tearoff item from
2368         File menu, put menubar and toolbar in handle boxes.
2369
2370         * demos/gtk-demo/genincude.pl: various changes to support trees
2371
2372         * demos/gtk-demo/main.c: various changes to support trees
2373
2374         * demos/gtk-demo/stock_browser.c: changed name of demo
2375         to Stock Item and Icon Browser, so geninclude.pl doesn't see
2376         it as child
2377
2378         * demos/gtk-demo/editable_cells.c: new file/demo
2379         * demos/gtk-demo/list_store.c: new file/demo
2380         * demos/gtk-demo/tree_store.c: new file/demo
2381
2382 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
2383
2384         * gtk/gtkrc.c gtk/gtksettings.c: 
2385         g_string_printfa => g_string_append_printf.
2386
2387 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
2388
2389         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
2390         and destroy handler.
2391
2392         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
2393
2394         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
2395         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
2396         Singh <yosh@gimp.org>.
2397
2398 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
2399
2400         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
2401         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
2402
2403         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
2404
2405 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
2406
2407         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
2408         scroll_to_cell delayed code to happen in size_allocate.
2409
2410         * gtk/gtkstyle.c (gtk_default_draw_expander): change
2411         prelight/normal arrow drawing.
2412
2413         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
2414
2415         * gtk/gtktreestore.c: refactor.
2416
2417 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
2418
2419         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
2420         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
2421         centers the child in relation to the to indicator height.
2422
2423 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
2424
2425         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
2426         correct
2427
2428 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
2429
2430         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
2431         property code using g_param_spec_int and changed from
2432         g_value_get_enum to g_value_get_int instead. Probably a better way
2433         to fix the problem :-)
2434
2435 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
2436
2437     * gtk/gtkcellrenderertext.c changed "weight" property type from 
2438       g_param_spec_int to g_param_spec_enum.
2439
2440 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
2441
2442         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
2443         fix: s/Wether/Whether/ in reorderable property description
2444
2445 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
2446
2447         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
2448         start editing when you select with a keyboard.
2449
2450         (gtk_tree_view_button_press_event): much more graceful now.
2451
2452         * gtk/gtkstyle.c: Draw togglebutton better.
2453
2454 2001-09-26  Havoc Pennington  <hp@redhat.com>
2455
2456         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
2457         of passing non-stock label in to gtk_dialog_new_with_buttons
2458
2459         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
2460         debugging updates
2461
2462         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
2463         are private
2464
2465         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
2466         exist, fall back to mnemonic label, not plain label, bug #61184
2467         
2468 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
2469
2470         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
2471         stupid and emitting the signal every time.
2472
2473         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
2474
2475 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
2476
2477        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
2478
2479        * contrib/gdk-pixbuf-xlib/Makefile.am: install
2480        gdk-pixbuf-xlib-2.0.pc.
2481
2482 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
2483
2484         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
2485         problem where menmonic wasn't removed properly when
2486         setting a label when there already is a label.
2487         Also, handle setting the tab label back to the same
2488         value. (#61160, #61161)
2489
2490         * gtk/gtkentry.c (paste_received): Patch from 
2491         Damian Ivereigh to replace selection if there is 
2492         one. (#61121)
2493
2494 2001-09-25  Darin Adler  <darin@bentspoon.com>
2495
2496         * tests/.cvsignore: Ignore new test program.
2497
2498 2001-09-25  Havoc Pennington  <hp@redhat.com>
2499
2500         * gtk/gtktextview.c: fix for #50317
2501         
2502 2001-09-25  Havoc Pennington  <hp@redhat.com>
2503
2504         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
2505         gtk_text_iter_can_insert
2506         
2507         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
2508
2509         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
2510          (gtk_text_iter_can_insert): new function to fix #60282, should
2511         also fix msw's "can paste into empty buffer" bug.
2512
2513         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
2514         "event object,"  #59091
2515
2516         * gtk/gtktextbtree.c: indentation fixes
2517
2518         * gtk/gtktextiter.c (find_by_log_attrs): fixes
2519
2520 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2521
2522         * configure.in: Version 1.3.9, interface age 0, binary age 0.
2523
2524         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
2525
2526         * NEWS: Updates.
2527
2528 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
2529
2530         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
2531         function for drawing cursors between gtkentry/gtklabel/gtktextview.
2532         Should this be public? It has a bit of an odd interface, but
2533         custom editing widgets probably should be using it.
2534         Function will draw with wider width for taller cursors, and
2535         draws a little indicator arrow to indicate directoin for split 
2536         cursors.
2537
2538         * gtk/gtktextview.c: Add a "cursor_color" property.
2539
2540         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
2541         gtk_text_layout_draw().
2542
2543         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
2544         _gtk_draw_insertion_cursor().
2545
2546 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
2547
2548         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
2549         the behavior where you could turn family_set (etc) back on
2550         and get back the values you had before.
2551
2552         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
2553         g_string_ascii_up() rather than looping through the
2554         string ourself.
2555
2556 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
2557
2558         * gtk/gtktreeviewcolumn.c
2559         (gtk_tree_view_column_set_cell_renderer): Removed
2560         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
2561
2562         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
2563         Patch from Detlef Reichl
2564
2565 2001-09-25  Havoc Pennington  <hp@redhat.com>
2566
2567         * tests/testtextbuffer.c (line_separator_tests): Add tests for
2568         line separators, addresses bug #57428
2569
2570 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
2571
2572         * gtk/gtkentry.c: Make a GtkCellEditable
2573         (get_widget_window_size): Change to let it honor size_allocate
2574         when a CellEditable.
2575
2576         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
2577         editable changes.
2578         (gtk_tree_view_set_cursor): Now you can set the cursor
2579         horizontally, as well as start editing.
2580
2581         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
2582         code to look more like the other check buttons.
2583
2584         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
2585         Change the way we calculate cell size.
2586
2587         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
2588
2589         * demos/gtk-demo/sizegroup.c: Add mnemonics.
2590
2591         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
2592         Fix logic.
2593
2594         * gtk/gtkcellrenderertext.c: Change to be editable.
2595
2596         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
2597
2598         * test/testtreesort.c: Fix misspelling
2599
2600         * test/testreecolumns.c: Add mnemonics.
2601
2602         * test/testreeedit.c: New test program.
2603
2604 2001-09-25  Havoc Pennington  <hp@pobox.com>
2605
2606         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
2607         etc. docs about how these are not going to do what you want for 
2608         the X/win32 ports. Futile attempt to avoid a FAQ...
2609
2610 2001-09-24  James Henstridge  <james@daa.com.au>
2611
2612         * gtk/gtkmarshal.list (VOID): add marshal function types.
2613
2614         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
2615         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
2616         GTK_TYPE_POINTER.
2617         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
2618         with no-op copy/free functions.
2619
2620         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
2621         GtkCTreeNode get_type function.
2622
2623 2001-09-24  Havoc Pennington  <hp@redhat.com>
2624
2625         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
2626         gtktextlayout.c:
2627         Get rid of the newline-that-could-not-be-deleted; buffers may 
2628         now be zero-length. Much easier to fix than expected, once 
2629         I figured out the right way to do it. However, there are 
2630         various subtle bugs introduced by this that will have to get 
2631         sorted out. Please use bugzilla.
2632
2633 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
2634
2635         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
2636         response back from the window manager if our size hasn't changed 
2637         since we won't get a response back from the window manager;
2638         there was code in there to do this, but it was in the wrong
2639         place so if the hints change and the size didn't we'd expect
2640         a response.
2641
2642         Also, optimize the position-only-changed case by running
2643         the resize queue immediately, and clean up some comments
2644         for the changes.
2645
2646 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
2647
2648         * gtk/gtknotebook.h: Add a compat macro that got lost.
2649
2650         * gtk/gtktreestore.c: Doc fixes.
2651
2652         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
2653         leak for windows that receive events after being destroyed.
2654         (#60863, Joshua N. Pritikin)
2655
2656         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
2657         rather than gtk_container_queue_resize().
2658
2659         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
2660         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
2661         gtk_container_child_composite_name. (#60217.)
2662
2663 2001-09-22  Hans Breuer  <hans@breuer.org>
2664
2665         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
2666
2667 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
2668
2669         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
2670         weight value should be an int
2671
2672 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
2673
2674         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
2675         to gtk_menu_scroll_item_visible(). Only call
2676         gtk_menu_scroll_item_visible() if the menu widget has been
2677         realized. Fixes bug #55310.
2678
2679 2001-09-21  Havoc Pennington  <hp@redhat.com>
2680
2681         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
2682         key press to IM context if cursor isn't in an editable location;
2683         bug #58425, patch from Hidetoshi Tajima
2684
2685 2001-09-21  Havoc Pennington  <hp@redhat.com>
2686
2687         Bug #60862
2688         
2689         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
2690         (_gtk_text_btree_unref): fix up mark memory management
2691
2692         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
2693
2694 2001-09-20  Havoc Pennington  <hp@redhat.com>
2695
2696         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
2697         try to handle alignment here, because it's done by PangoLayout
2698         after we set the layout width. Fix from Dov.
2699
2700 2001-09-21  Hans Breuer  <hans@breuer.org>
2701
2702         * gdk/gdk.def :
2703         * gtk/gtk.def : updated externals
2704
2705         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
2706         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
2707         Also handle that Win32 pathes cann't be hard-coded      
2708
2709         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
2710         module, themes etc directory calculations
2711
2712         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
2713         >16 bit right. The size limit within Win9x appears _not_ to be 32767
2714         but slightly smaller ...
2715
2716         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
2717         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
2718
2719         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
2720
2721         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
2722         handling. I'm not sure if it is better now, but at least not worse
2723
2724         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
2725
2726         * gdk/win32/gdkwin32.h : reflect recent API restrictions
2727
2728 2001-09-21  Matt Wilson  <msw@redhat.com>
2729
2730         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
2731         radio_menu_item->group to NULL after removing it from the list, as
2732         it is no longer in the group. (#60869)
2733
2734         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
2735
2736 2001-09-20  Havoc Pennington  <hp@pobox.com>
2737
2738         * configure.in (PANGO_REQUIRED_VERSION)
2739         (ATK_REQUIRED_VERSION): add variables and checks for specific 
2740         versions of dependencies. Previously we didn't verify the 
2741         Pango or ATk versions.
2742
2743 2001-09-09  Havoc Pennington  <hp@pobox.com>
2744
2745         * gtk/gtktextiter.c: fool with indentation
2746         (gtk_text_iter_in_range): add g_return_if_fail
2747
2748 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
2749
2750         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
2751         ref count on new tag to be 1.  Update doc.  (#60836)
2752
2753 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
2754
2755         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
2756         call to gdk_image_new_bitmap(). (#59094, reported by
2757         by Sven Neumann)
2758
2759 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
2760
2761         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
2762         day, as well as the current month and year.
2763         (#59047, reported by Vitaly Tishkov)
2764
2765 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
2766
2767         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
2768         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
2769         
2770 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
2771
2772         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
2773
2774         (build_option_menu): add func argument, connect ::changed
2775         signal to option menu instead of connecting the ::activate
2776         signal to the menu items,
2777
2778         (toplevel): get rid of RADIOMENUTOGGLED macro,
2779
2780         (list_toggle_sel_mode), (clist_toggle_sel_mode),
2781         (ctree_toggle_line_style), (ctree_toggle_expander_style),
2782         (ctree_toggle_justify), (ctree_toggle_sel_mode),
2783         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
2784         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
2785
2786         (notebook_type_changed): merged standard_notebook(),
2787         notabs_notebook(), scrollable_notebook() and borderless_notebook()
2788         into notebook_type_changed()
2789
2790         (create_list), (create_ctree), (create_notebook),
2791         (create_progress_bar): changed OptionMenuItem arrays into
2792         gchar * arrays. Removed "Extended" item where used.
2793
2794         Fixes bug #59885
2795
2796 2001-09-20  Sven Neumann  <sven@gimp.org>
2797
2798         * configure.in
2799         * gdk/Makefile.am
2800         * gtk/Makefile.am
2801         * gtk/gtkselection.c
2802         * gtk/gtktreeview.c
2803         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
2804
2805 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
2806
2807         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
2808         a missing pango_layout_iter_free ().
2809
2810 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
2811
2812         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
2813         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
2814
2815         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
2816         the function definition so we don't accidentally rely on
2817         the compat #define from gtk_radio_menu_item_group.
2818         (#60782, Jeff Franks)
2819
2820 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
2821
2822         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
2823         incorrect values for top, right and bottom due to cut-and-paste
2824         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
2825
2826 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
2827
2828         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
2829         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
2830         window, not just on the client leader. (#58463)
2831
2832 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
2833
2834         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
2835
2836         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
2837         non-public _gtk_menu_item_set_placement.
2838
2839         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
2840
2841 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
2842
2843         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
2844           gdk/linux-fb/gdkcolor-fb.c:
2845         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
2846         (#59723)
2847
2848 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
2849
2850         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
2851         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
2852         #59723)
2853
2854 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
2855
2856         Patch from Frank Belew #59037 for Solaris compilation.
2857
2858         * gtk/maketypes.awk: Change syntax slightly for a call
2859         to sub(), apparently making awk on Solaris happier.
2860
2861         * gtk/gtktreeview.c: Remove C++ comments.
2862
2863 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
2864
2865         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
2866         to handle '99% of the time. (#60473, reported by Christian Rose)
2867
2868         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
2869         which no longer exists. (#60379, reported by Vitaly Tishkov)
2870
2871 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
2872
2873         * Released 1.3.8.
2874
2875         * gdk/Makefile.am: kill EXTRA_DIST clearing.
2876         
2877 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
2878
2879         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
2880         as its broken in automake 1.4, add explicit object rule to
2881         generate this.
2882         
2883         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
2884         get rid of uneccessary stamps, group stuff more logically, and build
2885         sources due to object rules. fix srcdir!=builddir.
2886
2887 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
2888
2889         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
2890         incorrect parameter to compute_double_length
2891         (#58680, patch from Matthias Clasen)
2892
2893         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
2894
2895         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
2896
2897         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
2898         for GDK_RELEASE_MASK to avoid warnings with Forte.
2899
2900         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
2901         break; statements.
2902
2903 2001-09-18  Alex Larsson  <alexl@redhat.com>
2904
2905         * gtk/gtkcheckbutton.c:
2906         * gtk/gtkradiobutton.c:
2907         Don't draw with GTK_STATE_ACTIVE.
2908
2909         * gtk/gtkclist.c:
2910         * gtk/gtkctree.c:
2911         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
2912
2913         * gtk/gtktextdisplay.c:
2914         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2915         unfocused with base_gc [GTK_STATE_ACTIVE].
2916         
2917         * gtk/gtkentry.c:
2918         Add select all menu-item.
2919         Default cursor color is red.
2920         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2921         unfocused with base_gc [GTK_STATE_ACTIVE].
2922
2923         * gtk/gtklabel.[ch]:
2924         Add keynav + menu to selectable lables.
2925         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2926         unfocused with base_gc [GTK_STATE_ACTIVE].
2927
2928         * gtk/gtkfilesel.c:
2929         Add drag and drop support.
2930
2931         * gtk/gtkstyle.c:
2932         (This was checked in earlier)
2933         New default values for text/base SELECTED and ACTIVE
2934         
2935 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
2936
2937         * configure.in: up version to 1.3.8, interface age 0,
2938         binary age 0, depend on glib 1.3.8.
2939
2940         * NEWS: 1.3.8 updates.
2941
2942 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
2943
2944         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
2945         the editing code
2946
2947         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
2948         reason to call it beyond emiting the two signals.
2949
2950         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
2951         to GtkEntry.
2952
2953 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
2954
2955         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
2956           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
2957         PangoFontDescription.
2958
2959         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
2960         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
2961         structure.
2962   
2963         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
2964
2965         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
2966         direct access to style->font. Deprecate gtk_style_ref/unref.
2967   
2968         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
2969         Remove gtk_style_ref/unref with g_object_ref/unref.
2970   
2971         * gtk/gtkcalendar.c: Remove leftover macros accessing
2972         style->font.
2973   
2974         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
2975         variable.
2976   
2977         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
2978         style->font.
2979
2980 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
2981
2982         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
2983         "can_activate" properties in favor of
2984         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
2985         and GTK_CELL_RENDERER_MODE_EDITABLE
2986
2987 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
2988
2989         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
2990         editable widgets.  This function is private, and should only be
2991         used by GtkTreeView.
2992
2993 2001-09-18  Matt Wilson  <msw@redhat.com>
2994
2995         * docs/Makefile.am (EXTRA_DIST): don't use += before =
2996
2997         * docs/faq/Makefile.am (EXTRA_DIST): likewise
2998
2999         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
3000         
3001         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
3002         (EXTRA_HEADERS): likewise
3003
3004         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
3005         (EXTRA_HEADERS): likewise
3006         (EXTRA_DIST): likewise
3007         (CLEANFILES): likewise
3008
3009         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
3010
3011         * tests/Makefile.am (EXTRA_DIST): likewise
3012         
3013         * Makefile.am (install-data-local): changed to use
3014         install-data-hook, which runs after install-pkgconfigDATA, so that
3015         the pkgconfigdir will have been created and populated first.
3016
3017 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
3018
3019         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
3020         be the last big GtkTreeView API change.
3021
3022         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
3023         replace with "activate" and "start_editing".  Also, added a
3024         "can_activate" and "can_edit" property.
3025
3026         * gtk/gtktreeviewcolumn.c: modify to use above.
3027
3028 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
3029
3030         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
3031
3032 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
3033
3034         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
3035         icon instead of one with ugly white background.
3036
3037 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
3038
3039         * demos/gtk-demo/stock_browser.c (id_to_macro): make
3040         the uppercasing work. (#59550)
3041
3042 2001-09-14  Jakub Steiner <jimmac@ximian.com>
3043
3044         * gtk/stock-icons/dialog_error.png:
3045         * gtk/stock-icons/dialog_question.png: more road signs
3046
3047 2001-09-13  Jakub Steiner <jimmac@ximian.com>
3048
3049         * gtk/stock-icons/dialog_question.png:
3050         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
3051           like a road sign.
3052
3053 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
3054
3055         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
3056         signals to make them more clear.  Also, change ::range_changed to
3057         ::row_changed.
3058         * gtk/gtktreemodel.c: Adjust to interface change
3059         * gtk/gtktreemodel.h: ditto
3060         * gtk/gtktreemodelsort.c: ditto
3061         * gtk/gtktreestore.c: ditto
3062         * gtk/gtkliststore.c: ditto
3063         * gtk/gtktreeview.c: ditto
3064         * tests/testtreecolumns.c: ditto
3065         * gtk/gtkmarshal.list: Actually remove a marshaller!
3066
3067 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
3068
3069         * gtk/gtktextview.c
3070         Add support for Ctrl+Up/Down arrow to move cursor to beginning
3071         of previous/next paragraph. If within a paragraph cursor moves to
3072         beginning of that paragraph.
3073
3074 2001-09-12  Jakub Steiner <jimmac@ximian.com>
3075
3076         * gtk/stock-icons/dialog_question.png: replacing the shaky
3077           question mark with a sans-serif one.
3078         * gtk/stock-icons/stock_top.png, stock_bottom.png,
3079      stock_first.png, stock_last.png: using the new style arrows
3080         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
3081      colors.
3082         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
3083      color.
3084         * gtk/stock-icons/stock_zoom*: anti-aliased
3085         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
3086      '-' with a '_', removed the wrong files
3087
3088 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
3089  
3090         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
3091  
3092         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
3093         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
3094         than in gtk-2.0/major.minor.micro/<type>/. This
3095         works better for a search path for modules.
3096  
3097         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
3098         gtk_binary_version variable holding major.minor.(micro-binary_age).
3099  
3100         * modules/input/Makefile.am (moduledir): Fix installation
3101         directory to match change in lookup location.
3102  
3103         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
3104         suffixes. Needs to be handled in g_module_build_path().
3105
3106         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
3107         appropriate.
3108  
3109 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
3110
3111         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
3112         causing RC properties not to work.
3113
3114 2001-09-11  Jakub Steiner <jimmac@ximian.com>
3115
3116         * gtk/stock-icons/dialog-error.png: less drastic
3117         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
3118           "STOP" is international enough.
3119         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
3120         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
3121
3122 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
3123
3124         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
3125         (add|remove)_selection_clipboard symmetric. (bug #59836)
3126
3127         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
3128         Avoid SEGV for empty tree. (bug #60243)
3129
3130 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
3131
3132         * tests/testgtk.c (create_idle_test): slight fix for
3133         g_object_set() not usable for nesting anymore.
3134
3135         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
3136         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
3137         properties, supply ::shadow_type properties instead as most
3138         other widgets do.
3139
3140 2001-09-10  Alex Larsson  <alexl@redhat.com>
3141
3142         * demos/gtk-demo/stock_browser.c:
3143         * gdk/gdkcolor.c:
3144         * gdk/gdkfont.c:
3145         * gdk/gdkcursor.c:
3146         * gdk/gdkevents.c:
3147         * gdk/gdkrectangle.c:
3148         * gtk/gtktypeutils.c:
3149         Update to use the new g_boxed_type_register_static API.
3150
3151 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
3152
3153         * gtk/gtktreestore.c:
3154         Fix looping in gtk_tree_store_init() waiting for zero random int.
3155
3156 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
3157
3158         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
3159         behaviour which havoc broke. they have to default to 1.0 for
3160         expand behaviour.
3161
3162         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
3163
3164 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
3165
3166         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
3167         Amend previous change to avoid runtime error in g_param_spec_ref()
3168
3169 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
3170
3171         * gtk/gtkrc.c (insert_rc_property): Fix blank line
3172         in the wrong place.
3173
3174 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
3175
3176         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
3177         do a lookup immediately after creating style->property_cache,
3178         since bsearch crashes on zero length for Solaris.
3179         (Found by Padraig O'Briain.)
3180
3181 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
3182
3183         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
3184         Really return NULL if not set.
3185         (gtk_widget_init): Remove unused varaible.
3186         
3187 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
3188
3189         * configure.in:
3190         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
3191         in cvs.
3192
3193 2001-09-08  Havoc Pennington  <hp@pobox.com>
3194
3195         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
3196         people might want to use
3197
3198 2001-09-08  Havoc Pennington  <hp@pobox.com>
3199
3200         * gtk/gtkalignment.c (gtk_alignment_class_init): default
3201         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
3202
3203         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
3204
3205         * gtk/gtktextiter.c: fix docs
3206         (gtk_text_iter_spew): get rid of this
3207
3208         * gtk/gtklayout.c: docs
3209
3210         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
3211         to center image and label together, instead of having image on
3212         left and label centered, patch/suggestion from Jacob
3213
3214         * gtk/gtkdialog.c: docs
3215
3216 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
3217
3218         * gtk/gtkliststore.c: Write documentation
3219         * gtk/gtktreestore.c: Write documentation
3220
3221 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
3222
3223         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
3224         with GArray and bsearch(), to remove dependency on a still
3225         evolving interface that we want to keep private to glib/gobject. 
3226
3227 2001-09-08  Havoc Pennington  <hp@pobox.com>
3228
3229         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
3230         docs fixes
3231
3232         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
3233
3234         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
3235
3236         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
3237
3238         * gtk/gtkscrolledwindow.h: docs fixes
3239
3240         * gtk/gtkimage.c (gtk_image_new): docs fixes
3241
3242 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
3243
3244         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
3245         false alarm  constness warning with a cast.
3246
3247         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
3248         for the inside-gdk case.
3249
3250 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
3251
3252         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
3253         remove g_print.
3254
3255         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
3256         change models, #59899
3257
3258 2001-09-07  Havoc Pennington  <hp@pobox.com>
3259
3260         * gtk/gtkmain.c: move some docs inline
3261
3262 2001-09-07  Havoc Pennington  <hp@pobox.com>
3263
3264         * gtk/gtk.h: tsk tsk, jrb broke the build
3265
3266 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
3267
3268         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
3269         Removed 'fill' attribute.  It was silly b/c that was a property of
3270         the cell renderer, anyway.
3271         (gtk_tree_view_column_render): Actually render the packed
3272         renderers.
3273         * doc/tree-column-sizing.txt: initial devel documentation.
3274         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
3275         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
3276
3277         * tests/testtreefocus.c: fix up to reflect above changes.
3278         * tests/testtreeview.c: ditto
3279         * demos/gtk-demo/stock_browser.c: ditto
3280
3281 2001-09-07  Alex Larsson  <alexl@redhat.com>
3282
3283         * gdk/linux-fb/gdkcolor-fb.c:
3284         Removed unused function.
3285         
3286         * gdk/linux-fb/gdkdrawable-fb2.c
3287         * gdk/linux-fb/gdkfont-fb.c:
3288         Use PangoLanguage functions.
3289
3290         * gdk/linux-fb/gdkinput.c:
3291         * gdk/linux-fb/gdkselection-fb.c:
3292         Fix const warnings.
3293         
3294         * gdk/linux-fb/gdkwindow-fb.c:
3295         Fix warning. Implement gdk_window_set_icon_list() and
3296         gdk_window_get_frame_extents(). (No icon support yet though.)
3297
3298         * gtk/gtkwindow.c (gtk_window_get_position):
3299         If window->frame is set get the extents of it instead.
3300         
3301 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
3302
3303         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
3304         Make the default default colormap the GdkRGB colormap,
3305         not the system colormap.
3306
3307         * gtk/gtkinvisible.c (gtk_invisible_init) 
3308           gtk/gtkwindow.c (gtk_window_init): Set the current
3309         colormap, as returned by _gtk_widget_peek_colormap()
3310         on the widget.
3311
3312         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
3313         to GTK+. Make it return %NULL instead of the default
3314         colormap if no colormap has explicitely been pushed.
3315
3316         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
3317         colormaps on ancestral widgets before defaulting the
3318         the system default colormap.
3319
3320         * docs/Changes-2.0.txt: explain colormap changes.
3321
3322 2001-09-07  Havoc Pennington  <hp@redhat.com>
3323
3324         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
3325         #57424
3326
3327 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
3328
3329         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
3330         make gdk_set_use_xshm a noop. Remove --no-xshm command line
3331         option. If we aren't autodetecting properly, we need
3332         to fix the problem, or at least make it an environment
3333         variable setting, to avoid problems with propagating
3334         to embedded children, plugins, etc.
3335
3336         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
3337
3338         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
3339         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
3340         New function to render a pixmap and mask for a particular colormap.
3341
3342         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
3343         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
3344         of internal implementation of the same.
3345
3346 2001-09-07  Havoc Pennington  <hp@redhat.com>
3347
3348         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
3349         debug code that seems to have caused a breakpoint in valid cases
3350         
3351         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
3352         pointer on the first view when adding the second view, fixes
3353         crash when closing gtk-demo text test with active selection
3354
3355         * gtk/gtktextbuffer.c
3356         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
3357         clipboards in the list of clipboards - probably fixes #59836
3358
3359 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
3360
3361       Make gdkx.h the only installed header from gdk/x11.
3362       All structures in gdk/x11 are opaque.
3363
3364         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
3365         Don't install gdk{drawable,pixmap,window}-x11.h.
3366
3367         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
3368         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
3369         GdkVisualClass into C files.
3370
3371         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
3372
3373         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
3374         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
3375         Add public functions to replace previously exported direct
3376         structure access.
3377         gdk_x11_colormap_get_{xdisplay,xcolormap} 
3378         gdk_x11_cursor_get_{xdisplay,xcursor},
3379         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
3380         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
3381         gdk_x11_gc_get_{xdisplay,ximage}
3382         
3383         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
3384         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
3385
3386       Fix a number of variables and functions that were exported
3387       "accidentally" from GDK.
3388
3389         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
3390         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
3391         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
3392         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
3393         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
3394         gdk_event_queue_find_first, gdk_event_queue_remove_link,
3395         gdk_event_queue_append, gdk_event_button_generate,
3396         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
3397
3398         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
3399            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
3400         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
3401         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
3402         gdk_use_xshm, gdk_input_ignore_core.
3403
3404         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
3405         #defines to namespace functions into the private _gdk_ 
3406         namespace.
3407
3408         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
3409         to replace gdk_parent_root exported variable. Adjust and
3410         deprecate GDK_ROOT_PARENT().
3411
3412         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
3413         GDK_ROOT_PARENT usage, remove includes of port-specific
3414         headers.
3415
3416         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
3417         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
3418         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
3419
3420         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
3421         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
3422         gdk_wm_delete_window functions, gdk_wm_take_focus, 
3423         use gdk_atom_intern() instead.
3424
3425         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
3426           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
3427           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
3428           gtk/gtkselection.c 
3429         Unexport gdk_selection_property, just use 
3430         gdk_atom_intern ("GDK_SELECTION").
3431
3432         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
3433         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
3434         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
3435         GdkVisualprivate, gdk_x11_gc_flush.
3436
3437       Make a number of public exports of variables into functions
3438       to increase encapsulation.
3439
3440         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
3441         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
3442         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
3443
3444         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
3445         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
3446         gdk_error_warnings.
3447
3448         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
3449           docs/Changes-2.0.txt: 
3450         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
3451         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
3452         Add gdk_x11_get_default_xdisplay().
3453
3454         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
3455         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
3456         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
3457         Don't export gdk_progclass, move --class command line
3458         option and handling to common portion of GDK.
3459
3460       Miscellaneous fixes:
3461
3462         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
3463         g_return_val_if_fail that should have been g_return_if_fail.
3464
3465         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
3466         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
3467
3468         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
3469         X11 dependency.
3470
3471         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
3472         Remove unused gdk_key_repeat_disable/restore.
3473
3474         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
3475         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
3476         Remove unused gdk_null_window_warnings variable.
3477
3478         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
3479         it can be retrieved from the repository; it is too far
3480         from functional to be worth having people check out;
3481         it would be easier to start from scratch, I suspect.
3482
3483         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
3484
3485         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
3486         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
3487         Fix some accidentally global variables and unused global variables.
3488
3489         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
3490         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
3491         Fix some accidentally global variables and unused global variables.
3492
3493       Add some space for future expansion to multihead.
3494
3495         * gdk/gdkdrawable.h: Add four reserved function pointers
3496         for future expansion of GdkDrawableClass.
3497
3498         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
3499         where we can put a GdkScreen * later.
3500
3501 2001-09-07  Havoc Pennington  <hp@redhat.com>
3502
3503         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
3504         adjustments after validating destination yrange; fixes #53918
3505         (This may cause other issues, but I hope it won't)
3506         
3507 2001-09-05  Havoc Pennington  <hp@redhat.com>
3508
3509         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
3510         line into start line, update the character counts in parent nodes; 
3511         caused a bug when end and start line had different parent nodes.
3512
3513 2001-08-30  Havoc Pennington  <hp@redhat.com>
3514         
3515         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
3516         assertion that tag is in a table
3517
3518 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
3519
3520         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
3521         g_strcasecmp on NULL strings. (#59058)
3522
3523 2001-09-06  Alex Larsson  <alexl@redhat.com>
3524
3525         * gtk/gtkbin.c:
3526         * gtk/gtkfontsel.c:
3527         * gtk/gtkspinbutton.c:
3528         * gtk/gtktipsquery.c:
3529         Use GtkType/GType instead of uint.
3530
3531 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3532
3533         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
3534         sort column.
3535
3536         * gtk/gtktreestore.c (gtk_list_store_init): ditto
3537
3538         * gtk/gtktreesortable.c: add docs.
3539
3540 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
3541
3542         * Version 1.3.7
3543
3544         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
3545         docs for gtk-config
3546
3547         * modules/input/Makefile.am (install-data-local): Don't
3548         run gtk-query-immodules if DESTDIR is set.
3549
3550         * NEWS: Various additions.
3551
3552 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
3553
3554         * NEWS: updates for 1.3.7 release.
3555
3556 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
3557
3558         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
3559         handle default sort feature
3560
3561         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
3562         new function to handle default sort.
3563         (gtk_tree_sortable_has_default_sort_func): check if default sort
3564         is set.
3565
3566         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
3567         handle default sort feature
3568
3569 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
3570
3571         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
3572         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
3573         #59731
3574
3575 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3576
3577         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
3578         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
3579         time, #59727
3580
3581         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
3582         correctly.
3583
3584 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
3585
3586         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
3587         so that we don't eternally update the keymap after we
3588         get a change notification.
3589
3590         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
3591         incorrect cast.
3592
3593 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
3594
3595         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
3596         it working. It mostly works now, although there're still a few issues
3597         to be worked out.
3598
3599         * tests/testtreesort.c (main): changes to have a better test
3600         application for the GtkTreeModelSort.
3601
3602 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
3603
3604         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
3605         fix for bug #59222.
3606
3607         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
3608         gpointer search_data argument to function definition and
3609         prototype, to match GtkTreeViewSearchEqualFunc typedef.
3610
3611 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
3612
3613         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
3614         per jrb's request.
3615
3616 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
3617
3618         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
3619
3620         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
3621
3622 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
3623
3624         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
3625         Instead of always mirroring the selection to a single PRIMARY
3626         selection, allow it to be mirrored to any number of clipboards.
3627
3628         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
3629         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
3630
3631         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
3632         GtkClipboard argument, and for paste_clipboard, the
3633         @override_location argument from @paste_primary.
3634
3635         * gtk/gtktextview.c: Adapt to above change.
3636         
3637 2001-08-30  Havoc Pennington  <hp@redhat.com>
3638
3639         * gtk/gtktextview.c (invalidated_handler): put validate idle at
3640         resize - 2 just for flexibility
3641
3642 2001-08-30  Havoc Pennington  <hp@redhat.com>
3643
3644         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
3645         object from the empty-child-anchor case by drawing a little box.
3646         
3647         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
3648         if the child anchor has no anchored widgets - fixes #59328.
3649
3650         Also, remove bizarre deletion of preedit string that seems to have
3651         gotten in here somehow.
3652
3653 2001-08-30  Havoc Pennington  <hp@redhat.com>
3654
3655         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
3656         to #58420 from Hidetoshi Tajima and Matthias Clasen
3657
3658 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
3659
3660         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3661         change color when the GtkTreeView loses focus.
3662
3663         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
3664         ditto.
3665         
3666         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
3667
3668 2001-08-28  Havoc Pennington  <hp@pobox.com>
3669
3670         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
3671
3672 2001-08-28  Havoc Pennington  <hp@pobox.com>
3673
3674         * demos/gtk-demo/main.c (setup_default_icon): add default icon
3675
3676         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
3677         warning fix
3678         (gtk_radio_button_new_with_label): warning fix
3679
3680         * gtk/gtkdnd.c: used some random GtkImage private structs, 
3681         update to reflect GtkImage changes
3682
3683         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
3684         whether the hint is supported, just always set the icon. A task
3685         list might want to use it even if the WM doesn't, and the WM may
3686         change over time. Also, XDeleteProperty() if list == NULL.
3687
3688         * gtk/gtkwindow.c (gtk_window_set_icon_list)
3689         (gtk_window_get_icon_list)
3690         (gtk_window_set_icon)
3691         (gtk_window_get_icon)
3692         (gtk_window_set_default_icon_list)
3693         (gtk_window_get_default_icon_list):
3694         new functions
3695
3696         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
3697
3698         * gtk/gtkimage.c: Implement property support, bug #59408
3699
3700         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
3701         on reparent-without-removing-first a bit more helpful.
3702         Let's just destroy this FAQ.
3703
3704 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
3705
3706         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
3707         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
3708
3709 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
3710
3711         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
3712         of use_text_format to the end of the function. (#56447)
3713
3714 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
3715
3716         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
3717         only in response to an area_prepared signal.
3718
3719 2001-08-28  Alex Larsson  <alexl@redhat.com>
3720
3721         * gtk/gtkwidget.c (gtk_widget_class_init):
3722         Make unrealize GTK_RUN_LAST.
3723
3724 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
3725
3726         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
3727         with_label and with_mnemonic should create radio buttons, not
3728         check buttons
3729
3730 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
3731
3732         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
3733         * tests/treestoretest.c (make_window): ditto
3734         * demos/gtk-demo/main.c (create_tree): ditto
3735         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
3736
3737 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
3738
3739         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
3740         GTK selection types rather than GtkTreeSelectionMode.
3741
3742         * docs/Changes-2.0: Add comment about selection change.
3743
3744 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
3745
3746         * gtk/gtkenums.h (GtkSelectionMode): deprecate
3747         GTK_SELECTION_EXTENDED.
3748
3749         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
3750         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
3751
3752         * gtk/gtkctree.c: ditto
3753
3754         * gtk/gtklist.c: ditto
3755
3756         * gtk/gtktree.c: ditto
3757
3758 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
3759
3760         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
3761         of typos in compat macros. (#59624, Skip Montaro)
3762
3763 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
3764
3765         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
3766         macro.
3767
3768          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
3769  
3770         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
3771         interface to be a standard setter from gtk_menu_item_right_justify.
3772         (gtk_menu_item_get_right_justified): a getter to go with the setter
3773
3774         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
3775         gtk_menu_item_right_justify.
3776
3777         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
3778         gtk_menu_item_set_right_justified.
3779  
3780 2001-08-27  Jens Finke <jens@gnome.org>
3781
3782         * gtk+.spec.in: Updated to match gpp requirements, reworked the
3783         files section to make it work with 1.3.x releases.
3784
3785 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3786
3787         * gtk/gtkbutton.[ch]:
3788         Add properties for labels, mnemonics and stock items.
3789         Added C accessor functions for the properties.
3790         Removed deprecated button->child.
3791
3792         * gtk/gtkradiobutton.c:
3793         * gtk/gtktogglebutton.c:
3794         Update to use the functions in GtkButton.
3795
3796         * gtk/gtkcheckbutton.c:
3797         Update to use the functions in GtkButton.
3798         Changed size allocation of child. Now only gets as much
3799         space as it requests.
3800
3801         * gtk/gtkclist.c:
3802         Don't use GtkButton->child
3803
3804         * gtk/gtklabel.c:
3805         Fixed typo in docs
3806         
3807 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3808
3809         * tests/testgtk.c:
3810         * tests/Makefile.am:
3811         Ressurect the properties test.
3812         I don't care if it is inferior, I just want to test my property code.
3813
3814 2001-08-25  Chema Celorio  <chema@celorio.com>
3815
3816         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
3817         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
3818         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
3819
3820 2001-08-24  Havoc Pennington  <hp@pobox.com>
3821
3822         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
3823         these are already in gtkmenu.h, and the copies
3824         here were broken.
3825
3826         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
3827
3828         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
3829         special-case bitmaps to allow no colormap
3830         (bitmap1): implement no-colormap bitmap-getting
3831         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
3832         alpha
3833         (rgb8): indentation
3834         (rgb1a, rgb1): change the way we read the data out of the image, 
3835         old way didn't seem to work quite right.
3836
3837         I'm pretty sure a lot of the rgbconvert code is still broken.
3838         
3839         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
3840         above position constraint (I really intended to do this before,
3841         don't know what's up with that)
3842         (gtk_XParseGeometry): shut up gcc
3843
3844         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
3845         and "0" should have been. remove the attempted 4-bytes-at-once
3846         optimization, it was totally broken.
3847
3848 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
3849
3850         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
3851         on push to buttons (based on patch from Soeren Sandmann, #54720)
3852
3853           - Add child_displacement_x/y style properties to control how far the
3854             child moves when the button is depressed.
3855
3856           - Add non-exported function _gtk_button_set_depressed to clean
3857             up the handling of the in/out shadow and separate it frmo
3858             widget->state.
3859
3860           - Lots of code cleanup and simplification of state handling
3861             for GtkButton/GtkToggleButton.
3862  
3863         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
3864         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
3865
3866 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
3867
3868         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
3869         and make gtk_image_new() take no arguments. The compiler will
3870         catch it, and it is vastly more useful than having
3871         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
3872
3873         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
3874         to add tearoff-title property (#51319, Lee Mallabone)
3875
3876 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
3877
3878         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
3879         gtk_menu_item_configure(). (#58925)
3880
3881 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
3882
3883         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
3884         "use_align" to give people the option to just make a cell visible.
3885
3886         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
3887         we were scrolling past the end of the tree.
3888
3889         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
3890         rename gtk_tree_view_column_pack_start_cell_renderer to
3891         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
3892
3893 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
3894
3895         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
3896         a stray g_object_ref() left over from gtk_object_ref/sink.
3897         (Pointed out by Josh Pritikin.)
3898
3899 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
3900
3901         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
3902         to gtk_container_get_children. Added deprecated compatibility
3903         macro. (Suggested by Vitaly Tishkov, #59051)
3904
3905         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
3906         calls.
3907
3908 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
3909
3910         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
3911         gtk_menu_bar_append/prepend/insert, forgot to do this
3912         when we deprecated gtk_menu_append/prepend/insert.
3913
3914         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
3915         compat macros.
3916
3917         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
3918         renamed by compat macro.
3919
3920         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
3921         gtk_font_selection_dialog_get_font(). (Suggested by
3922         Vitaly Tishkov, #59383)
3923
3924 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
3925
3926         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
3927         Rename from gtk_text_tag_table_size(). (#59366)
3928
3929 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
3930
3931         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
3932         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
3933         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
3934         (#59173).
3935
3936 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
3937
3938         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
3939         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
3940         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
3941
3942 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
3943
3944         [ Patch from Sebastian Wilhelmi, 52790 ]
3945
3946         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
3947
3948         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
3949         Move compatibility macros from g[dt]kcompat.h to within 
3950         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
3951
3952         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
3953
3954         * demos/Makefile.am demos/gtk-demo/Makefile.am 
3955           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
3956           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
3957
3958         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
3959                  testpixbuf.c}: Fix usages of deprecated functions.
3960
3961 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
3962
3963         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
3964         when changing models.
3965
3966 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
3967
3968         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
3969         We check the current event for modifiers rather than try to trap
3970         all presses.
3971
3972 2001-08-22  Anders Carlsson  <andersca@gnu.org>
3973
3974         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
3975         It's LIST_STORE, not LISTSTORE.
3976
3977 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
3978
3979         * gtk/gtk.h: Remove commented out gtkpacker reference.
3980
3981 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3982
3983         * configure.in (all_loaders): Add tga loader, 
3984         patch by Nicola Girardi. (#56067)
3985
3986 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
3987
3988         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
3989         a little.  More needs to be done tomorrow.
3990
3991 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
3992
3993         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
3994
3995 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
3996
3997         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
3998         reported by Kristian Rietveld <kristian@planet.nl> to handle row
3999         == NULL.
4000         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
4001         <kristian@planet.nl> to change destroy order.
4002
4003 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
4004
4005         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
4006         correct marshaller.
4007
4008 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
4009
4010         * gtk/gtkliststore.c: Fix up warnings, #58928.
4011
4012         * gtk/gtktreeselection.h: Change signal prototype, #58647
4013
4014         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
4015         #59221.
4016
4017         * gtk/gtkstyle.c: Actually prelight arrow, #50981
4018         
4019 2001-08-18  Hans Breuer  <hans@breuer.org>
4020
4021         * gdk/gdk.def : updated externals
4022
4023         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
4024         is required to get (at least) visible in entry fields. Some selections
4025         are really handled now - even on win32 - but copying via middle
4026         mouse button into a different app needs to wait ... 
4027
4028         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
4029         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
4030
4031         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
4032         handling. I'm not sure if it is better now, but at least not worse
4033
4034         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
4035         with SetWindowPos () which allows more fine-tuning backing-store wise
4036
4037         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
4038         Also changed move/resize to be more like the X version.
4039
4040         * gtk/gtk.def : updated externals
4041
4042 2001-08-19  Sven Neumann  <sven@gimp.org>
4043
4044         * gtk/gtktooltips.c
4045         * tests/testtreesort.c
4046         * tests/treestoretest.c: inserted some casts to get rid of compiler
4047         warnings.
4048
4049 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
4050
4051         * gtk/gtktreeviewcolumn.c
4052         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
4053
4054         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
4055         (_gtk_tree_view_find_node): If *node is NULL,
4056         *tree should be NULL too.
4057
4058         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
4059         column/renderers.
4060         * tests/testtreecolumns.c: ditto
4061         * tests/testtreefocus.c: ditto
4062         * tests/testtreesort.c: ditto
4063         * tests/testtreeview.c: ditto
4064         * tests/treestoretest.c: ditto
4065
4066 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
4067
4068         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
4069         signals; is_expander/is_expanded.
4070
4071         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
4072         pixbufs.
4073
4074         * gtk/gtktreeview.c: set above properties.
4075
4076 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
4077
4078         * gtk/gtkwidget.h: Really remove set_default_style().
4079
4080         * docs/Changes-2.0.txt: added a note about
4081         gtk_widget_push/pop/set_default_style.
4082
4083 2001-08-18  Havoc Pennington  <hp@pobox.com>
4084
4085         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
4086         hints_changed in addition to the other cases.
4087         (gtk_window_move_resize): include last position from configure
4088         notify in debug spew
4089
4090 2001-08-18  James Henstridge  <james@daa.com.au>
4091
4092         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
4093         second argument to the weak ref notify, cleaning up some uglyness.
4094         (gtk_accel_group_attach): remove and add the weak notifier when
4095         changing the accel groups slist.
4096         (gtk_accel_group_detach): same here.
4097
4098 2001-08-17  Darin Adler  <darin@bentspoon.com>
4099
4100         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
4101         missing parameters to utf8 functions to make it compile.
4102
4103 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
4104
4105         * gtk/gtktreeprivate.h:
4106         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
4107         (gtk_tree_view_init), (gtk_tree_view_set_property),
4108         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
4109         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
4110         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
4111         (gtk_tree_view_set_destroy_count_func),
4112         (gtk_tree_view_set_enable_search),
4113         (gtk_tree_view_get_enable_search),
4114         (gtk_tree_view_get_search_column),
4115         (gtk_tree_view_set_search_column),
4116         (gtk_tree_view_get_search_equal_func),
4117         (gtk_tree_view_set_search_equal_func),
4118         (gtk_tree_view_search_dialog_destroy),
4119         (gtk_tree_view_search_position_func),
4120         (gtk_tree_view_interactive_search),
4121         (gtk_tree_view_search_delete_event),
4122         (gtk_tree_view_search_button_press_event),
4123         (gtk_tree_view_search_key_press_event),
4124         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
4125         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
4126         * gtk/gtktreeview.h:
4127         Add heavily modified patch from Kristian Rietveld to handle
4128         interactive searching.
4129
4130 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
4131
4132         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
4133         string parameter.
4134
4135         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
4136         GtkMenuShell::selection_done, now that we have it, instead of 
4137         ::deactivate so we're not tearing the menu apart and notify
4138         the user prematurely.
4139
4140 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
4141
4142         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
4143         window, clear window->need_default_position to avoid infinite loops.
4144         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
4145
4146 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
4147
4148         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
4149         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
4150         (gtk_tree_view_set_property): don't cast possible NULL objects.
4151         (gtk_tree_view_destroy): reset the model to NULL.
4152
4153         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
4154         parent_class handler.
4155
4156 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4157
4158         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
4159
4160 2001-08-17  Anders Carlsson  <andersca@gnu.org>
4161
4162         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
4163         point numbers so that the result will be floating point.
4164
4165 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4166
4167         * tests/testgtk.c (create_handle_box): 
4168         (create_toolbar): Replace gtk_window_set_policy calls by
4169         gtk_window_set_resizable.
4170
4171 2001-08-16  Jakub Steiner <jimmac@ximian.com>
4172
4173         * gtk/stock-icons/dialog_info.png: new style bulb
4174         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
4175         * gtk/stock-icons/dialog_warning.png: need a hand?
4176         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
4177           the aa border gets chopped off ok
4178         * gtk/stock-icons/stock_colorselector.png: using the new hand
4179         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
4180           this one is for, but the old icon was butt ugly.
4181         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
4182         * gtk/stock-icons/stock*_insert_object.png: "
4183         * gtk/stock-icons/stock_index.png: using new hand icon
4184         * gtk/stock-icons/stock*_new.png: the document template being used 
4185           elsewhere too
4186         * gtk/stock-icons/stock*_print*.png: new print and print preview 
4187           icons (panel/menu)  
4188         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
4189           icons based on Tuomas' floppy image.
4190         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
4191         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
4192         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
4193         * gtk/stock-icons/stock*_undelete.png: "
4194         * gtk/stock-icons/stock_preferences.png: I have a version with a 
4195           document base if the sliders are no good.
4196         * gtk/stock-icons/stock_properties.png: properties 
4197         
4198
4199         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
4200           (tigert@ximian.com) clipboard icons
4201         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
4202         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
4203         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
4204           little bigger IMHO
4205
4206 2001-08-16  Sven Neumann  <sven@gimp.org>
4207
4208         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
4209
4210 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
4211
4212         * gtk/gtkcellrenderertext.c:
4213         Avoid warning when specifying NULL for "attributes" property
4214
4215 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4216
4217         * docs/debugging.txt: Add a warning about --enable-debug=no,
4218         some editorial changes.
4219
4220 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4221
4222         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
4223         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
4224         debugging info, remove unused debug flags. (#58330)
4225
4226 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
4227
4228         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
4229         (gtk_tree_selection_select_all): Remove strict checking for rows.
4230
4231 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4232         
4233         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
4234         Don't remove the tooltip window when the tip text changes. (#15891)
4235
4236 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
4237
4238         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
4239         $(srcdir).
4240
4241 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
4242
4243         * Makefile.am (EXTRA_DIST): Fix problem with trying to
4244         dist files from intl/, which is no longer there.
4245
4246 2001-08-11  Hans Breuer  <hans@breuer.org>
4247
4248         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
4249           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
4250           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
4251           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
4252           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
4253           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
4254
4255         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
4256           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
4257         GDK_TYPE_EVENT signals
4258
4259         * gtk/gtkalignment.c : removed 'direct allocation bug',
4260         which Tim discovered while reading the patch
4261
4262 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
4263
4264         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
4265         compat macros for push/pop/set_visual that were supposed
4266         to be added a long time ago, but got dropped. 
4267
4268 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
4269
4270         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
4271         property notifies.
4272
4273 2001-08-07  Havoc Pennington  <hp@pobox.com>
4274
4275         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
4276
4277         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
4278         some fixage is needed here, but nothing simple. Owen understands
4279         it. ;-)
4280
4281         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
4282         sizing and positioning.  Also, fix bug in compute_geometry_hints
4283         (width/height confusion for setting min size). 
4284         (gtk_window_move): new function
4285         (gtk_window_resize): new function
4286         (gtk_window_get_size): new function
4287         (gtk_window_get_position): new function
4288         (gtk_window_parse_geometry): new function
4289         
4290         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
4291         (gtk_widget_get_size_request): new function
4292         (gtk_widget_get_usize): delete, that was a short-lived function
4293         ;-)
4294         (gtk_widget_set_usize): deprecate
4295         (gtk_widget_set_uposition): deprecate, make it a trivial 
4296         gtk_window_move() wrapper
4297         (gtk_widget_class_init): remove x/y/width/height properties,
4298         add width_request height_request
4299         
4300         * demos/*: update to avoid deprecated functions
4301         
4302         * gtk/gtklayout.c: add x/y child properties
4303
4304         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
4305         uses of "gint16"
4306
4307         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
4308         sizing test
4309
4310         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
4311         configure events on toplevel windows are always in root window
4312         coordinates, following ICCCM spec that all synthetic events 
4313         are in root window coords already, while real events are 
4314         in parent window coords. Previously the code assumed that 
4315         coords of 0,0 were parent window coords, which was 
4316         really broken.
4317   
4318         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
4319         warning
4320  
4321         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
4322         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
4323         hints in gtk_window_parse_geometry()
4324  
4325         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
4326         new USER_POS USER_SIZE hints    
4327
4328 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4329
4330         * tests/prop-editor.c (properties_from_type): Use 
4331         g_object_class_list_properties to get the param specs 
4332         for a given type. (#58609)
4333
4334 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4335
4336         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
4337         free the text_aa parts. (#57549)
4338
4339 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4340
4341         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
4342         not the foreground color. (#57621)
4343
4344 2001-08-09  Alexander Larsson <alexl@redhat.com>
4345
4346         * gdk/win32/gdkfont-win32.c:
4347         Update to the new pango win32 api.
4348
4349 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
4350
4351         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
4352         COMPOUND_TEXT instead of TEXT
4353         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
4354         interpret the return value of g_string_to_compound_text()
4355         (#55152)
4356
4357 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4358
4359         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
4360         fail if iter is NULL. (#58347)
4361
4362 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4363
4364         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
4365         some off-by-one issues, fixing selection of line-ends. (#50323)
4366
4367 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
4368
4369         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
4370         functions in order to make mouse operation work again in the
4371         color wheel. (#58604)
4372
4373 2001-08-07  James Henstridge  <james@daa.com.au>
4374
4375         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
4376         the accelerator when the accel object is changed.  Fixes bug
4377         #58628.
4378
4379 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
4380
4381         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
4382         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
4383         (gnome bugzilla #58202)
4384
4385 2001-08-06  Havoc Pennington  <hp@pobox.com>
4386  
4387         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
4388         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
4389         it was expecting a GdkWindow, not a GdkWindowImplX11.
4390  
4391         Also, we were getting the window rect in screen coords 
4392         and the screen rect in window coords then intersecting 
4393         them; instead, get window rect in window coords.
4394  
4395         Finally, there were codepaths that resulted in a stuck server grab
4396         (when the window was fully onscreen, or on gdk_image_new()
4397         failure); make the server ungrab thing a bit more
4398         robust/consistent.
4399
4400 2001-08-06  Sven Neumann  <sven@gimp.org>
4401
4402         * gdk/gdkpango.c (gdk_pango_context_destroy): 
4403         check if info->colormap != NULL before unref'ing it. It might have
4404         been set to NULL using gdk_pango_context_set_colormap().
4405
4406 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
4407
4408         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
4409         Fix conversion from float to int so that we don't get
4410         skew in the int => float => int roundtrip. 
4411         (#58120, reported by Vitaly Tishkov). Also fix problem
4412         where if no alpha was set, the returned alpha
4413         from (say) set_current_alpha() was returned as 1, not 65535.
4414
4415 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
4416
4417         * gtk/gtklist.c (gtk_list_clear_items): Fix
4418         problem with selecting a new focus child.
4419
4420         * gtk/gtklist.c (gtk_list_clear_items): Clear 
4421         list->undo/list_focus_child after unparenting
4422         child, since unparenting the child can result
4423         in list->last_focus_child being set. (#58024)
4424
4425         * Makefile.am (SUBDIRS): Add target specific pc
4426         files to DISTCLEANFILES.
4427
4428         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
4429         (58327, Matthias Clasen)
4430
4431 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
4432
4433         * tests/testgtk.c: Patch from Hans (with various modifications),
4434         to add the ability to use testgtk as a rough-and-ready
4435         benchmark. Try, 'testgtk --bench all:5' (if you want decent
4436         numbers, run without a window manager)
4437
4438 2001-08-04 Alexander Larsson <alexl@redhat.com>
4439
4440         * gdk/win32/gdkinput.c:
4441         Add #ifdef HAVE_WINTAB around wintab.h include.
4442
4443         * gtk/gtk.def:
4444         Removed marshals that have been moved to glib.
4445         Commented out plug and socket. They didn't compile for me 
4446         on win32.
4447
4448 2001-08-04  Hans Breuer  <hans@breuer.org>
4449
4450         * gtk/stocks-icons/makefile.msc : new file
4451         * gtk/makefile.msc.in : use it
4452
4453         * gtk/gtkstyle.c : not all platforms do provide M_PI and
4454         friends, but luckily there is G_PI
4455
4456         * gtk/gtk.def : updated
4457
4458         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
4459         windows WS_POPUP, but only those without a parent. This fixes the 
4460         mis-alignment between the selectable (temp, input only) window and 
4461         the window text of GtkLabel.
4462
4463         (gdk_window_show) : respect private->state when actually showing
4464         the window.
4465
4466         (gdk_window_set_transient_for) : Implementation from Wolfgang 
4467         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
4468         error handling. Should fix #50586.
4469
4470         * gdk/win32/gdkevents-win32.c : beautify log output
4471
4472 2001-08-04  Michael Natterer  <mitch@gimp.org>
4473
4474         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
4475         Need to show the image after adding it to the GtkImageMenuItem.
4476         This used to work without in testgtk because of the
4477         gtk_widget_show_all() at the end of the function.
4478         (Closes #54978).
4479
4480 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
4481
4482         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
4483         (gtk_notebook_set_child_property): fix finding of child's page,
4484         since we have to validly deal with labels and menus here as well.
4485         (gtk_notebook_get_child_property): fix warning.
4486         (gtk_notebook_class_init): property tab_pack is of type
4487         GTK_TYPE_PACK_TYPE (enum) not boolean.
4488         (gtk_notebook_find_child): don't always warn, we might be looking
4489         for a label or menu child.
4490         (gtk_notebook_map): fix mapping of panel.
4491
4492         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
4493         widget's mapped state, regardless of the value being set equals
4494         old settings, since things like REALIZED(parent) or MAPPED(parent)
4495         may have changed since the old value was set. make it an error to
4496         invoke this function on a toplevel widget.
4497
4498 2001-07-31  Darin Adler  <darin@bentspoon.com>
4499
4500         * gdk/gdkprivate.h:
4501         * gdk/x11/gdkx.h:
4502         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
4503
4504         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
4505         GTK_OBJECT.
4506
4507 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
4508
4509         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
4510         scoping error pointed out by matthiasc@poet.de.
4511
4512 2001-07-31  Sven Neumann  <sven@gimp.org>
4513
4514         * demos/gtk-demo/appwindow.c
4515         * demos/gtk-demo/item_factory.c
4516         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
4517
4518 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
4519
4520         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
4521         argument order for g_signal_has_handler_pending.
4522
4523 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
4524
4525         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
4526         instead of long deprecated g_scanner_stat_mode().
4527
4528 2001-07-29  Hans Breuer  <hans@breuer.org>
4529
4530         * gdk/makefile.msc : build in the backend dir after
4531         auto-generating files
4532
4533         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
4534         with code from win32-production-branch.
4535
4536         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
4537         before calling DestroyWindow, which indirectly calls 
4538         gdk_window_destroy_notify ()
4539
4540         (performance patch merged from win32-production-branch)
4541         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
4542         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
4543         R2_COPYPEN rop). It is claimed to be much faster.
4544
4545 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
4546
4547         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
4548         add an "attributes" property to the text renderer for ATK.
4549
4550 2001-07-26  Alex Larsson  <alexl@redhat.com>
4551
4552         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
4553         Initialize image->bits_per_pixel from the drawable, not from
4554         the root window.
4555
4556         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
4557         Fix cast. argument is an IMPL already.
4558
4559 2001-07-15  James Henstridge  <james@daa.com.au>
4560
4561         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
4562         (gtk_window_remove_accel_group): same here.
4563         (gtk_window_key_press_event): same here.
4564
4565         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
4566         (gtk_widget_remove_accelerator): same here.
4567         (gtk_widget_remove_accelerators): same here.
4568
4569         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
4570
4571         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
4572         instead of GtkObject.
4573
4574         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
4575         now takes GObjects.
4576
4577         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
4578         pass a GObject to gtk_accel_group_entries_from_object.
4579         (gtk_item_factory_create_item): s/accel_widget/accel_object/
4580
4581         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
4582
4583         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
4584
4585         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
4586         GObjects can have accelerators set now.  Add compatibility
4587         defines.
4588
4589         * gtk/gtkmarshal.list: add missing marshallers.
4590
4591         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
4592         accelerators on plain GObjects.  gtk_accel_group_object_destroy
4593         has been converted into a weak reference, and
4594         gtk_accel_group_delete_entries is now a destroy notify for that
4595         piece of data.
4596
4597 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
4598
4599         * gdk/gdkdraw.c: Added a check on the colormap depth to
4600         gdk_drawable_set_colormap()
4601         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
4602         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
4603         for pixmaps without visuals (more specifically, bitmaps)
4604         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
4605         doesn't set a colormap with the wrong depth
4606
4607
4608 2001-07-22  Anders Carlsson  <andersca@gnome.org>
4609
4610         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
4611         expander_height and expander_width properties with a single
4612         property, expander_size.
4613         (gtk_tree_view_init): Set the tab_offset to expander_size
4614         plus some padding.
4615         (gtk_tree_view_unrealize): Remove the expand/collapse
4616         timeout if it exists.
4617         (coords_are_over_arrow): Fix a small bug.
4618         (gtk_tree_view_motion_draw_column_motion_arrow): Use
4619         expander_size.
4620         (gtk_tree_view_draw_focus): Use "treeview" instead of
4621         "add-mode" as detail when drawing the focus.
4622         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
4623         instead of "add-mode" as detail when drawing the focus.
4624         (gtk_tree_view_deleted): If we have a node currently being
4625         expanded or collapsed, remove the timeout and set the node 
4626         to NULL.
4627         (gtk_tree_view_queue_draw_arrow): New function that just
4628         redraws the arrow of a node.
4629         (gtk_tree_view_draw_arrow): Use expander_size instead of
4630         expander_width/expander_height, also pass a different
4631         expander_style to gtk_paint_expander depending on the 
4632         state of the node being drawn.
4633         (expand_collapse_timeout): New function for expanding 
4634         or collapsing a node depending on the previous state.
4635         (gtk_tree_view_real_expand_row): Add timeout and set 
4636         correct state for node being expanded.
4637         (gtk_tree_view_real_collapse_row): Add timeout and set
4638         correct state for node being collapsed.
4639
4640         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
4641         information about the node currently being expanded or
4642         collapsed, and also a timeout id.
4643
4644         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
4645         with expander_style for draw_expander.
4646
4647         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
4648         expander_style.
4649         (create_expander_affine): New function for creating an 
4650         expander affine.
4651         (apply_affine_on_point): New function for applying an 
4652         affine to a point.
4653         (gtk_default_draw_expander): Modified to take expander_style
4654         instead of is_open, and to draw the rectangle rotated differently
4655         depending on the expander style.
4656         (gtk_paint_expander): Replace is_open with expander_style.
4657
4658         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
4659
4660         * gtk/gtkenums.h: Add expander style enum.
4661
4662 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
4663
4664         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
4665         value from gtk_tree_model_get_iter, the model might be empty.
4666
4667 2001-07-20  Hans Breuer  <hans@breuer.org>
4668
4669         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
4670         gdk/gdkinput.c like the other backends
4671
4672         * gdk/win32/gdkinput-win32.h :
4673         * gdk/win32/gdkinput.c :
4674         * gdk/win32/gdkvisual-win32.c :
4675         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
4676         GdkVisual GObjectification. UNTESTED for pen-devices because
4677         I simply have none.
4678
4679         * gdk/gdk.def :
4680         * gtk/gtk.def : updated externals
4681
4682         * gtk/gtkiconfactory.c :
4683         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
4684         before passing &error to functions to avoid strange crashes
4685         
4686         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
4687
4688         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
4689
4690         * gtk/makefile.msc.in : updated
4691
4692 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
4693
4694         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4695         Add property support. (#51858)
4696
4697 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
4698
4699         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
4700         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
4701         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
4702
4703 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
4704
4705         * gtk/gtkcolorsel.c: Add propery support (roughly
4706         based on patch from Lee Mallabone, #51014)
4707
4708         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
4709         deprecated, since we already g_warning() on it.
4710
4711 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
4712
4713         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
4714         typo that sometimes caused selection not to work properly.
4715
4716         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
4717         entry when tabbing in. (#57743)
4718         
4719         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
4720         user drags up above or down below the entry, move
4721         to the end or the beginning of the entry. (Suggestion
4722         from Jay Cox, #50940)
4723
4724         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
4725         a current selection, then when moving by chars or
4726         words, move to the end of the selection rather than
4727         from entry->current_pos. (Suggestion from Jay Cox,
4728         #50942)
4729         
4730 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
4731
4732         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
4733         set window->decorated. (Patch from Hidetoshi Tajima,
4734         #55846)
4735
4736 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
4737
4738         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
4739         the widget/child realization/mapping invariants.
4740
4741         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
4742         gtk_widget_[get/set]_child_visible() to control
4743         whether visible children of a mapped window are
4744         mapped.
4745
4746         * docs/widget_system.txt: Updated for changes in
4747         container contract, and addition of GTK_CHILD_VISIBLE.
4748
4749         * gtk/gtkcontainer.c: Add generic map()/unmap()
4750         functions that work for almost all containers.
4751
4752         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
4753         gtk_widget_set_child_visible() where necessary.
4754
4755         * gtk/*.c: Remove excess map(), unmap(), and 
4756         realization/mapping invariant enforcing code
4757         from many containers.
4758
4759 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
4760
4761         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
4762         Get the foreground color from 'text', nor 'fg'. (#57568)
4763
4764 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
4765
4766         * gtk/*.c: Patch from Matthias Clasen to remove remove
4767         all instances of g_return_if_fail (foo != NULL); that are
4768         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
4769         since the second check catches the NULL anyways.
4770
4771 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4772
4773         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
4774         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
4775         GDK_THREADS_ENTER()/LEAVE() pairs.
4776
4777         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
4778         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
4779         pairs. (Problem found by M. Meeks)
4780
4781 2001-07-18  Darin Adler  <darin@bentspoon.com>
4782
4783         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
4784         that we don't get a g_warning message every time we register a new
4785         icon size.
4786
4787         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
4788         using pixel variable of the correct type.
4789         
4790 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
4791
4792         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
4793         so that using X functions on a GdkWindow is possible, if
4794         a little hairy.
4795
4796         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
4797         and ts_origin of a GC, so that external parties can offset/restore
4798         a GC, when using gdk_window_get_internal_paint_info().
4799
4800 2001-07-17  Darin Adler  <darin@bentspoon.com>
4801
4802         * .cvsignore: Ignore the sgml directory made by gtkdoc.
4803         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
4804         instead of the deprecated gtk_window_set_policy.
4805         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
4806         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
4807         function to get rid of warning and some code too.
4808         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
4809         missing const.
4810         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
4811         unused local.
4812         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
4813         const.
4814         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
4815         (gdk_utf8_to_compound_text): Add missing const.
4816         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
4817         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
4818         cast and get rid of an unnecessary one.
4819         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
4820         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
4821         local.
4822         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
4823         Remove unused local.
4824         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
4825         missing const.
4826         * tests/testsocket.c: (add_child): Add cast so the printf format
4827         doesn't make us implicitly depend on what integer type
4828         gtk_socket_get_id returns.
4829         * tests/testtextbuffer.c: Add missing const.
4830         * tests/testtreefocus.c: (main): Remove unused local.
4831         * tests/treestoretest.c: (iter_remove): Remove unused local.
4832         (uppercase_value): Remove unused function.
4833         (make_window): Add statement to quiet the compiler's uninitialized
4834         variable warning.
4835
4836 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
4837
4838         * gtk/gtkrange.c:
4839         (second_timeout): 
4840         (initial_timeout): 
4841         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
4842         (gtk_range_calc_layout): compute the new layout based on an
4843         adjustment->value being passed in as argument.
4844         (gtk_range_button_press): for button2 slider warps, first recalc
4845         the layout, then adjust the value. also, use update_slider_position()
4846         for adjusting the value, so we keep pixel quantisation at which we
4847         usually operate (upon motion or button releases). the reason for this
4848         is that, we can't change the adjustment upon button2 presses to a non
4849         quantised value and upon button2 release re-quantise the value since
4850         that'd alter the value even if we didn't get any motion events (causing
4851         unexpected scroll area warps upon release and/or slider pixel-jitter).
4852         (gtk_range_motion_notify): update the slider position from queried
4853         coordinates, not event coordinates.
4854
4855 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
4856
4857         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
4858         the default gc values are: width=0, CapBut, JoinMiter.
4859
4860 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
4861
4862         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
4863         into account the xpad and ypad when calculating the width and the
4864         height of the pixbuf cel.
4865
4866 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
4867
4868         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
4869         Rename to gtk_radio_menu_item_get_group(), add deprecated
4870         alias. (#57044)
4871
4872         * gtk/gtkfilesel.c: Indentation fix.
4873
4874 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
4875
4876         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
4877         Hasselmann to fix warnings in compat macros. 
4878         (#56773)
4879
4880         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
4881         stupid wrong cast added in last patch.
4882
4883 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
4884
4885         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
4886         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
4887
4888 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
4889
4890         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
4891         missing cast.
4892
4893         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
4894         NULL/FALSE return value confusion.
4895
4896         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
4897         problem when scrollbar completely fills range. (Patch
4898         from  Matthias Clasen, #57047)
4899
4900 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
4901
4902         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
4903         clean up when handling events for move-resize emulation.
4904         (Problem traced down by Matthias Clasen, #57271)
4905
4906 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
4907
4908         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
4909           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
4910           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
4911           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
4912           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
4913           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
4914           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
4915         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
4916
4917 2001-07-09  Peter Williams  <peterw@ximian.com>
4918
4919         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
4920         for when srcdir != builddir
4921
4922 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
4923
4924         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
4925         gtk_tree_model_get_iter_root.
4926
4927         * gtk/gtkliststore.c: Add a bunch of g_return statements.
4928         (gtk_list_store_iter_n_children): Fix up.
4929
4930         * gtk/gtktreestore.c: Add a bunch of g_return statements.
4931
4932 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
4933
4934         * gtk/gtkwidget.c (gtk_widget_class_init):
4935         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
4936         restore some workingness.
4937
4938         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
4939         handle of window type for input-only windows.
4940
4941 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
4942
4943         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
4944         Patch from Gregory Merchan to add 
4945         gtk_button_box_set_secondary(), which separates
4946         the child into a separate group from the normal
4947         buttons. (#56331)
4948
4949         * gtk/gtkdialog.c: Make help buttons secondary by
4950         default.
4951
4952         * gtk/gtkbbox.c: Added a child property "secondary".
4953
4954         * gtk/testgtk.c: Turn on the help button for the 
4955         color selector to check that it properly appears
4956         as secondary.
4957
4958 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
4959  
4960         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
4961         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
4962         Add gdk_set_pointer_hooks() to allow pointer-querying to
4963         be hooked by an event record/playback system like GERD.
4964         (#56914)
4965         
4966 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
4967
4968         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
4969         in the right value of initial_emission to
4970         gtk_widget_set_style_internal (#57091)
4971
4972 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
4973
4974         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
4975         Make compile.
4976
4977         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
4978         with calling gtk_widget_set_style_internal() with
4979         the old style, not the new style. (#56989)
4980
4981 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
4982
4983         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
4984           gtk/gtkwidget.c:
4985         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
4986         not GTK_WIDGET_GET_ANCESTOR ... see 
4987         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
4988         Indicate the best practice in the docs for gtk_widget_get_toplevel().
4989
4990         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
4991         so GtkPlug can give the correct signals when transforming
4992         from a child to a toplevel.
4993         
4994         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
4995         reparentation correctly.
4996
4997         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
4998         Propagate the previous_toplevel argument down properly.
4999
5000         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
5001         of wrong atr list.
5002
5003         * gtk/gtkplug.[ch]: Add an "embedded" signal.
5004
5005         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
5006         signals.
5007
5008         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
5009         functions gtk_plug_get_id(), gtk_socket_get_id(),
5010         to avoid the user having to worry about realization,
5011         and gdkx.h.
5012
5013         * tests/testsocket.c: Extend to try out the new signals
5014         and gtk_plug/socket_get_id().
5015
5016         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
5017         setting of underline attributes.
5018
5019         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
5020         DestroyNotify events from SubstructureNotifyMask
5021
5022         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
5023         Switch GDK_WINDOW_TYPE (window) as needed.
5024
5025         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
5026         allow creation of toplevel windows as children of
5027         foreign windows.
5028
5029         * gtk/gtkplug.c: Remove hacks involving changing private
5030         fields of GdkWindow.
5031
5032         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
5033         exactly the same signals and notification
5034         be emitted for local embedding as for inter-process
5035         embedding.
5036
5037 2001-07-04  James Henstridge  <james@daa.com.au>
5038
5039         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
5040
5041 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
5042
5043         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
5044         XEMBED embedding add a _XEMBED_INFO property to the
5045         client with version number and a "mapped" flags.
5046         Use the mapped flag instead of the racy MapRequestEvent
5047
5048         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
5049         code to reliably set things (when the child is a passive
5050         embedder participating in the XEMBED protocol) intead
5051         of just being a hack for embedding non-participating
5052         programs. Fix various bugs and race conditions.
5053         
5054         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
5055         work by simply making the GtkSocket the gtk parent
5056         of the GtkPlug. Set a flag in this case and make
5057         the GtkPlug work like a normal container by overriding
5058         methods such as check_resize and "chaining past" GtkWindow
5059         to GtkBin.
5060
5061         * gtk/gtkentry.c (gtk_entry_real_activate)
5062           gtk/gtkmain.c (gtk_propagate_event): 
5063         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
5064         
5065         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
5066         gtk_widget_get_ancestor):
5067         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
5068         might not give the expected result and recommend
5069         an alternative.
5070
5071         * tests/testsocket.c tests/testsocket_child.c
5072         tests/testsocket_common.c tests/Makefile.am: Extended
5073         to test different type of adding plugs to sockets
5074         (local,active,passive), and to test mapping/unmapping
5075         the plug.
5076
5077         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
5078         mark the window as destroyed until after we
5079         called _gdk_windowing_window_destroy().
5080         (_gdk_windowing_window_destroy() may use GDK functions
5081         on the window.)
5082
5083         * gdk/x11/gdkinput.c: Remove the check for finalization - 
5084         devices can be finalized under some circumnstances.
5085  
5086         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
5087         small problem with GDK_TYPE_DEVICE.
5088  
5089 2001-07-02  Havoc Pennington  <hp@pobox.com>
5090
5091         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
5092         use constants not atoms.
5093
5094 2001-07-02  James Henstridge  <james@daa.com.au>
5095
5096         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
5097         PANGO_TYPE_TAB_ARRAY.
5098
5099         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
5100         for PANGO_TYPE_TAB_ARRAY.
5101
5102         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
5103         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
5104
5105         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
5106         the file.  Remove Pango types from defs -- they are now defined in
5107         libpango.
5108
5109 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
5110
5111         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
5112
5113         * gtk/gtkobject.c (gtk_object_destroy): invoke
5114         g_object_run_dispose().
5115
5116         * gtk/gtkwindow.c: 
5117         * gtk/gtkwidget.c: 
5118         * gtk/gtkobject.c:
5119         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
5120         method.
5121
5122 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
5123
5124         * gtk/gtktypeutils.c (gtk_type_class): Remove
5125         change check for GTK_TYPE_OBJECT derivation to
5126         G_TYPE_OBJECTS - it's Tim-approved to use this 
5127         for arbitary objects.
5128
5129         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
5130         prefix gtk_container_dequeue_resize_handler().
5131
5132         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
5133         to the hierarachy_changed signal, since you otherwise
5134         have to always keep that around.
5135
5136         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
5137         for extra argument to hierarchy_changed.
5138
5139 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
5140
5141         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
5142         for style to mean "revert to default style"
5143
5144         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
5145           gtk_widget_restore_default_style): Make this functions
5146         deprecated aliases for gtk_widget_set_style (widget, NULL).
5147
5148         * gtk/gtkwidget.[ch]: Remove:
5149            gtk_widget_set_default_style ()
5150            gtk_widget_push_style ()
5151            gtk_widget_pop_style ()
5152         These functions interact are overriden by RC files, and
5153         thus virtually useless, and complicated.
5154
5155 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
5156
5157         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
5158         most of the previous global variables in gtkrc.c. This is
5159         in preparation for multi-head, since each screen can
5160         have different GtkSettings and RC information.
5161
5162         * gtk/gtkrc.[ch]: 
5163
5164         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
5165         GtkSettings parameter to GtkRcStyle::parse.
5166
5167         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
5168         Add two new settings gtk-theme-name, gtk-key-theme-name,
5169         for RC files that are loaded by name after reading
5170         the default RC files.
5171         
5172         * gtk/gtkrc.c: Allow priorities for styles, as wll as
5173         bindings.
5174
5175         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
5176         and use it by default for RC files loaded via 
5177         gtk-theme-name, gtk-key-theme-name.
5178
5179         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
5180         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
5181         tests/testgtkrc: Require pathnames to be absolute.
5182
5183         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
5184         the source when parsing, since the operation of looking up a
5185         pixmap from an RC file depends on the parsing context.
5186
5187         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
5188         reset RC styles on all widgets when files are reparsed.
5189
5190         * tests/testgtk.c (create_rc_file) 
5191           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
5192         Simplify, now that gtk_rc_reparse_all() resets styles on
5193         all widgets itself.
5194
5195         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
5196         return value.
5197
5198         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
5199         GtkSettings argument.
5200
5201         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
5202         gtk_settings_get_global().
5203
5204         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
5205         to get the appropriate GtkSettings for a widget. (For now,
5206         just gets the default GtkSetttings.) 
5207
5208         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
5209           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
5210         changes.
5211
5212         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
5213         getting a style for a path without actually having a widget.
5214         (Allows using a style for a subpart of a widget, for
5215         example.)
5216
5217         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
5218         the RC files to be reloaded for just one GtkSettings
5219         (not sure how useful this really is.)
5220
5221         * gtk/gtkrc.h: Deprecate
5222         gtk_rc_add_widget_name/widget_class/class_style
5223
5224 2001-06-30  Alex Larsson  <alexl@redhat.com>
5225
5226         * gdk/linux-fb/gdkinput-none.c:
5227         * gdk/linux-fb/gdkinput.c:
5228         * gdk/linux-fb/gdkinputprivate.h:
5229         Convert GdkDevice to a GObject.
5230
5231         * linux-fb/gdkprivate-fb.h:
5232         * linux-fb/gdkvisual-fb.c:
5233         Convert GdkVisual to a GObject.
5234
5235 2001-06-29  Alex Larsson  <alexl@redhat.com>
5236
5237         * gdk/gdkvisual.h:
5238         * gdk/gdkcolor.c:
5239         * gdk/x11/gdkx.h:
5240         * gdk/x11/gdkvisual-x11.c:
5241         Convert GdkVisual to a GObject.
5242
5243         * gdk/gdkinput.h:
5244         * gdk/gdkevents.c:
5245         * gdk/x11/gdkinputprivate.h:
5246         * gdk/x11/gdkinput-gxi.c:
5247         * gdk/x11/gdkinput-none.c:
5248         * gdk/x11/gdkinput-x11.c:
5249         * gdk/x11/gdkinput-xfree.c:
5250         * gdk/x11/gdkinput.c:
5251         Convert GdkDevice to a GObject.
5252
5253 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
5254
5255         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
5256         to just plain new, fixing the number of columns, and column types
5257         at creation time.
5258
5259         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
5260
5261         * gtk/gtkcellrenderertext.c
5262         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
5263         height to a specific font.
5264
5265         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
5266
5267         * tests/*c: change to work with new store models.
5268
5269 2001-06-29  Havoc Pennington  <hp@redhat.com>
5270
5271        * Throughout: fixes to compile with G_DISABLE_COMPAT
5272         (s/g_signal_connectc/g_signal_connect/,
5273         s/g_signal_newc/g_signal_new/,
5274         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
5275
5276 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
5277
5278         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
5279         add path argument to selection callbacks.
5280
5281 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
5282
5283         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
5284         walk through a model in a depth first manner, with the option to
5285         break out.
5286
5287 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
5288
5289         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
5290         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
5291         column and follow it when draged, rather than a location in the
5292         view. "expander_column" property and drawing functions changed
5293         accordingly.  Fixes bug #55942.
5294
5295         (gtk_tree_view_{set,get}_expander_column): Now works with a
5296         GtkTreeViewColumn* instead of int.
5297
5298 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
5299
5300         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
5301
5302 2001-06-28  Havoc Pennington  <hp@pobox.com>
5303
5304         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
5305         image data to the screen, using a server grab to avoid race
5306         conditions.
5307
5308         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
5309         check for NULL return from gtk_image_new_from_stock(), it never
5310         returns NULL.
5311         (gtk_item_factory_create_item): fix bug where we parsed the stock
5312         ID as an inline pixbuf
5313
5314         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
5315
5316         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
5317         support (should be using binding set here)
5318
5319         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
5320         support (should be using binding set here)
5321
5322         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
5323         support
5324
5325         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
5326
5327         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
5328
5329         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
5330
5331         * gtk/gtkimcontextsimple.c
5332         (gtk_im_context_simple_filter_keypress): keypad
5333
5334         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
5335
5336         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
5337
5338         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
5339
5340         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
5341         should be binding-setted)
5342
5343         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
5344
5345         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
5346
5347         * gtk/gtkcalendar.c: numeric keypad fixes
5348
5349         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
5350         support
5351
5352         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
5353         screwup
5354
5355         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
5356         clip the render area to the drawable's clip region in advance,
5357         so we don't get data from the server that we don't need.
5358
5359         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5360         check return value of gdk_pixbuf_get_from_drawable(), fall back 
5361         to bilevel alpha if we can't get the pixbuf to composite against.
5362
5363         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
5364
5365         * gdk/gdkimage.c (gdk_image_get_colormap): add
5366         gdk_image_set_colormap, gdk_image_get_colormap
5367
5368         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
5369         take a region of the image, instead of converting the entire
5370         image.
5371
5372         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
5373         keybinding signal. Add default bindings for it. Add default
5374         handler for show_help that shows the tooltip for the widget.
5375
5376         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
5377         "close" keybinding signal, remove key press handler.
5378
5379         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
5380         it's not our usual practice to leave a deprecated function around
5381         with a runtime warning, plus we don't want it to appear in docs,
5382         plus if we make them yellow no one will want to change them
5383         anyhow.
5384
5385 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
5386
5387         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
5388         GTK_WIDGET_REALIZE() for resize queueing.
5389
5390         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
5391         GTK_WIDGET_REALIZE() for post event delivery destruction upon
5392         GDK_DESTROY.
5393         
5394         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
5395         sompensate for former (pre-2.0) connect_after() facility.
5396         (gtk_widget_send_expose): 
5397         (gtk_widget_event): assert the widget is realized, since event delivery
5398         to non-realized widgets is essentially a bug. event handlers should
5399         be able to unconditionally rely on widget->window (unless they
5400         emit events on their own which can trigger widget destruction).
5401         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
5402         logic. event delivery happens as follows:
5403         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
5404         b) if !was_handled in (a) and the widget is still realized, emit event-
5405            specific signal (RUN_LAST handler). returns was_handled.
5406         c) emission of GtkWidget::event-after for notification if the widget is
5407            still realized (regardless of was_handled from previous stages, no
5408            class handler). no return value.
5409         d) was_handled gets passed on to caller, to determine further
5410            propagation. if the widget got unrealized meanwhile, was_handled
5411            is returned as TRUE.
5412
5413         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
5414         gdk_event_get_coords().
5415
5416 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
5417
5418         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
5419         age 0, binary age 0. depend on glib 1.3.7.
5420
5421         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
5422
5423         * gtk/gtkmenubar.c: same here.
5424         
5425         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
5426
5427         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
5428
5429         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
5430         
5431         * gtk/gtkmenubar.c (add_to_window): likewise.
5432         
5433         * gtk/gtktextbtree.c: and here...
5434         
5435         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
5436         
5437         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
5438         
5439         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
5440         
5441         * gtk/gtktreeviewcolumn.c:
5442         (_gtk_tree_view_column_set_tree_view): yet again.
5443
5444         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
5445         signal connections without g_signal_connect_data().
5446         
5447         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
5448         demo of the matter.
5449         
5450         * demos/testpixbuf.c (main): running out of equality phrases for the
5451         ChangeLog, but had to adapt connections here as well.
5452         
5453         * demos/testanimation.c (progressive_timeout): and for the fun of it,
5454         tackled this the same way.
5455         
5456         * tests/testtext.c (create_view): ok, it's becoming a pain at this
5457         point, but had enough enery for one more fix.
5458
5459         * tests/testtreecolumns.c (main): stand up man, do your work!
5460
5461         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
5462         fix, either that's been all of it or CVS gtk is broken yet again.
5463         
5464 2001-06-29  James Henstridge  <james@daa.com.au>
5465
5466         The following changes correspond to bug #56812
5467
5468         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
5469         code for GdkDevice.
5470
5471         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
5472         GdkCursor.
5473
5474 2001-06-19  Havoc Pennington  <hp@pobox.com>
5475
5476         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
5477         for mapping a window without fooling with stacking order, but
5478         updating the "withdrawn" flag
5479
5480         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
5481         filtering as soon as possible, moving move resize and wmspec_check
5482         handling after the event filter.  Make default filter apply to all
5483         events, not just those with no GdkWindow wrapped around the X
5484         window. Fix a FIXME about how the window could be a pixmap using 
5485         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
5486
5487         Also, be robust against events not on a known GdkWindow.
5488
5489         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
5490         gdk_x11_ungrab_server): export reference-counted server grabs, so
5491         other people can grab server over a GDK function that also does
5492         so.
5493
5494 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
5495
5496         * gtk/gtktreeviewcolumn.c
5497         (gtk_tree_view_column_pack_start_cell_renderer): New function to
5498         reflect that you can (hypothetically) pack cell renderers into a
5499         column.
5500         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
5501         (gtk_tree_view_column_cell_is_visible): Move more functionality to
5502         the column.
5503         (gtk_tree_view_column_cell_can_focus): Move more functionality to
5504         the column.
5505
5506         * gtk/gtktreeview.c: Move to use new column-packing code.
5507         (gtk_tree_view_real_expand_row): remove totally braindead code.
5508         (gtk_tree_view_real_collapse_row): ditto.
5509
5510 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
5511
5512         * gtk/gtktreeviewcolumn.c: Fix a typo.
5513         
5514 2001-06-26  Joel Becker  <jlbec@evilplan.org>
5515
5516         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
5517           at the end of the file
5518
5519 2001-06-26  Havoc Pennington  <hp@redhat.com>
5520
5521         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
5522
5523 2001-06-26  Havoc Pennington  <hp@redhat.com>
5524
5525         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
5526         property
5527
5528 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
5529
5530         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
5531         stupid missing statement
5532
5533         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
5534         private function for ATK.  It notifies you of how many _visible_
5535         children are deleted when a node is deleted.  Should be used by
5536         atk only.
5537
5538 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
5539
5540         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
5541         Use new pango_context_get_metrics() to fix problems
5542         with font lists in descriptions. (#56184, reported by
5543         Jonas Borgström)
5544
5545 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
5546
5547         * gtk/gtkiconfactory.c:
5548         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
5549         item factory so inlined pixbufs actually work.
5550
5551 2001-06-25  Havoc Pennington  <hp@redhat.com>
5552
5553         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
5554         s/RESIZEABLE/RESIZABLE/
5555
5556         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
5557
5558 2001-06-25  Alexander Larsson  <alexl@redhat.com>
5559
5560         * configure.in:
5561         Added --enable-fbmanager. This is some experimental code
5562         that lets several GtkFB apps coordinate their access to the
5563         framebuffer.
5564         
5565         * acconfig.h:
5566         Added ENABLE_FB_MANAGER.
5567
5568         * gdk/linux-fb/Makefile.am:
5569         Added gdkfbmanager and gdkfbswitch.
5570
5571         * gdk/linux-fb/gdkkeyboard-fb.c:
5572         * gdk/linux-fb/gdkmouse-fb.c:
5573         * gdk/linux-fb/gdkprivate-fb.h:
5574         Split device init and open so that
5575         they can be opened and closed while switched
5576         away.
5577
5578         * gdk/linux-fb/gdkmain-fb.c:
5579         Add the basic manager communication.
5580
5581         * gdk/linux-fb/gdkrender-fb.c:
5582         Don't update to the shadow fb if we're
5583         blocked by the fb manager.
5584
5585 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
5586
5587         * docs/Changes-2.0.txt: Add note about child property
5588         changes.
5589
5590 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
5591
5592         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
5593         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
5594
5595         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
5596         with un'reffing wrong list reported by Jeff Franks.
5597
5598         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
5599
5600         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
5601         for the default icon. Remove inline XPM.
5602
5603         * gtk/gtkstock.h gtk/gtkiconfactory.c:
5604         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
5605         is used for GTK_STOCK_DND, but it is a bit too small.)
5606
5607         * gtk/stock-icons/stock_dnd_multiple.png
5608         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
5609
5610         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
5611         TRUE when starting a drag. In other cases, we are
5612         just observing. (#52995)
5613
5614         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
5615         function to set the icon for a drag from a GdkPixbuf
5616         or stock ID.
5617
5618         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
5619         Likewise, for drag sources.
5620
5621         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
5622         (Now should be done using the stock system.)
5623
5624 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
5625
5626         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
5627         Removed - didn't work and not particularly useful anyways
5628         if it did. 
5629
5630 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
5631
5632         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
5633         introduced last night that was making things decidedly not work.
5634
5635         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
5636         so that we have getter/setter pairing everywhere it makes
5637         sense. (#55767)
5638
5639         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
5640         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
5641         deprecated compat macro. (#55516)
5642
5643         * gtk/gtklabel.[ch]: Add functions
5644         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
5645         gtk_label_set_label(), which mirror the property API for GtkLabel.
5646         Make gtk_label_get_attributes() only reflect the attributes
5647         set by gtk_label_set_attributes.
5648
5649         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
5650         from gtk_notebook_set_page().
5651
5652 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
5653
5654         * configure.in: Fix tests for XShm.h.
5655
5656         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
5657         gdk_image_new() by use of goto, properly use g_object_unref().
5658
5659 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
5660
5661         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
5662         calls, as GdkImage is an object. these should be g_obejct_unref()
5663         instead but that won't work because of the g_error() statement
5664         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
5665         to spot these places.
5666
5667 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
5668
5669         * modules/input/gtkimcontextxim.c: Fixup some problems with 
5670         text length handling in error cases.
5671
5672         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
5673         a bit to make test actually warn on attempt to allocation
5674         a negative size. (#56101, Matthias Clasen)
5675
5676 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
5677
5678         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5679         noticed by Brian Cameron.
5680         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
5681         Cameron.
5682
5683 2001-06-22  Hans Breuer  <hans@breuer.org>
5684
5685         * gdk/gdk.def : updated externals
5686
5687         * gdk/win32/gdkdrawable-win32.c : corrected some casts
5688         in GDK_NOTEs
5689
5690         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
5691         to translate coordinates to the internal > 16 bit system
5692         Try to handle WM_WINDOWPOSCHANGED to get better performance for
5693         when moving/resizing
5694
5695         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
5696         and gdk_keymap_get_direction (). The latter is untested for
5697         the RTL case
5698
5699         * gtk/gtk.def : updated externals
5700
5701         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
5702         from pango_language_from_string (), not an already freed pointer
5703
5704         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
5705         binary (-kb) to be useable on windoze
5706  
5707 2001-06-21  Alexander Larsson  <alexl@redhat.com>
5708
5709         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
5710         Update to new PangoLanguage changes.
5711         
5712         * gtk/gtkwindow-decorate.c:
5713         * gtk/gtkwindow.[ch]:
5714         Added setting argument to gtk_window_set_has_frame ()
5715         
5716 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
5717
5718         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
5719         the case without XKB properly.
5720
5721         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
5722         unused gtk_rc_auto_parse variable.
5723
5724         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
5725         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
5726         longer needed with GdkPixbuf.
5727
5728         * gtk/gtkrc.c (_gtk_rc_init): Make private.
5729
5730 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
5731
5732         * gtk/gtkentry.h: Mark deprecated functions with
5733         GTK_DISABLE_DEPRECATED.
5734
5735 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
5736
5737         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
5738
5739         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
5740
5741         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
5742           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
5743           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
5744           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
5745           to recent changes in Pango.
5746
5747         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
5748           to test whether the basic engine honors them.
5749
5750 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
5751
5752         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
5753         gtk_container_child_get_property().
5754
5755 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
5756
5757         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
5758         (gtk_tree_view_move_cursor_page_up_down): implement.
5759
5760 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
5761
5762         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
5763         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
5764         don't use automatic fixed size buffer for printf-ing floats, doubles
5765         can expand to really _huge_ strings, use g_strdup_printf() instead.
5766
5767 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
5768
5769         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
5770         construct property in 1.2 and still needs to be.
5771
5772         * gtk/gtkwidget.c: "composite_child" is not a settable property.
5773
5774 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
5775
5776         * gtk/gtkliststore.c (gtk_list_store_clear): 
5777         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
5778         clear a model.
5779
5780 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
5781
5782         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
5783
5784         * gtk/Makefile.am:
5785         * gtk/gtk.h: disabled GtkPacker compilation.
5786
5787         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
5788
5789         * gtk/gtknotebook.c:
5790         * gtk/gtktable.c:
5791         * gtk/gtkbox.c: ported this over to child properties.
5792
5793         * gtk/gtksettings.c: fetch class properties via
5794         g_object_class_list_properties().
5795
5796         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
5797         child arg interface. use gobjectnotifyqueue.c for child property
5798         notification.
5799
5800         * gtk/gtkwidget.[hc]: provide necessary means for container child
5801         properties, i.e. ::child_notify signal,
5802         gtk_widget_freeze_child_notify(),
5803         gtk_widget_child_notify(),
5804         gtk_widget_thaw_child_notify().
5805
5806         * tests/testgtk.c: removed inferior property handling code, for
5807         property editing, a generic module should be used, and GLE
5808         coincidentally fullfills that purpose.
5809
5810         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
5811         needs to be adapted to g_object_class_list_properties() before this
5812         builds again.
5813
5814 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
5815
5816         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
5817         test if a node is expanded.
5818
5819 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
5820
5821         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5822         where collapsing a selected row would result in the cursor/anchor
5823         getting screwed up.
5824
5825 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
5826
5827         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
5828         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
5829         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
5830         Now I can really reorder/sort all Store widgets.  treesorttest
5831         seems to just work now.
5832         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
5833         testtreesort worked through a big coincidence all this time.
5834         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
5835         code.
5836         * tests/testtreecolumns.c: Big 'ol warning at the top letting
5837         people know that this code should never ever ever be copied.
5838
5839 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
5840
5841         * gtk/gtkwindow.h: Fixed a small typo, it should be
5842         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
5843         on line 134.
5844
5845 2001-06-14  Havoc Pennington  <hp@redhat.com>
5846
5847         Docs fixups, and:
5848         
5849         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
5850         GTK_DISABLE_DEPRECATED
5851
5852 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
5853
5854         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
5855         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
5856         finish it off tonight, though it basically works now when it's a
5857         list.  Also, I have a sinking feeling neither GtkTreeStore or
5858         GtkListStore actually resort when adding a new item.  I'll look
5859         into it.
5860
5861 2001-06-14  Havoc Pennington  <hp@redhat.com>
5862
5863         * demos/gtk-demo/main.c (load_file): fix bug identified by
5864         warnings I just added to gtktextbuffer
5865
5866 2001-06-14  Havoc Pennington  <hp@redhat.com>
5867
5868         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
5869
5870         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
5871
5872         * gtk/gtktextbtree.c: don't leak node data all over the place.
5873
5874         * demos/gtk-demo/main.c (main): create fontify tags for the right
5875         buffer
5876
5877         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
5878         to mention tags in the same table can't have the same name,
5879         suggested by Skip Montanaro
5880
5881 2001-06-11  Havoc Pennington  <hp@redhat.com>
5882
5883         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
5884         for trying to add two tags with same name to the tag table
5885
5886         * demos/gtk-demo/main.c (main): fix colors ;-)
5887
5888 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
5891         that allows grouping together multiple windows so that grabs
5892         within that set of windows only affect those windows.
5893
5894         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
5895         signal for notification when a widget becomes shadowed
5896         by a grab or is no longer shadowed by a grab.
5897
5898         * gtk/gtkwidget.c (gtk_widget_propagate_state)
5899           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
5900         insenstive widgets to maintain a grab.
5901
5902 2001-06-14  Alexander Larsson  <alexl@redhat.com>
5903
5904         * docs/README.linux-fb:
5905         Add some example config files that can be used with the URW fonts.
5906         
5907         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
5908         Set up the color ramps for DirectColor mode.
5909
5910 2001-06-11  Havoc Pennington  <hp@redhat.com>
5911
5912         * Release 1.3.6
5913          
5914 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5915
5916         * gdk/linux-fb/gdkwindow-fb.c:
5917         Unify shaped window code and make it repaint the area that used
5918         to be part of the shape, but isn't anymore.
5919
5920 2001-06-11  Havoc Pennington  <hp@redhat.com>
5921
5922         * NEWS: Updates
5923
5924         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
5925
5926         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
5927         
5928 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5929
5930         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
5931         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
5932         passes zero instead, so do we.
5933         
5934 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5935
5936         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5937         Deep copy dash_list too.
5938         (_gdk_fb_gc_new): Set default cap_style before
5939         setting values.
5940
5941 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
5942
5943         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
5944         gdk_keymap_get_direction): New functions.
5945
5946 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
5947
5948         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
5949         gtk_tree_model_get_flags by adding a second flag for atk.
5950
5951         * gtk/gtktreemodel.c: make cursor behavior interact better with
5952         mouse presses.
5953
5954 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
5955
5956         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
5957         expand_row/collapse_row to be 2 signals each -- test_expand_row
5958         and row_expanded as well as test_collapse_row and row_collapsed.
5959
5960 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
5961
5962         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
5963         signal name to be changed instead of selection_changed.
5964
5965 2001-06-08  Havoc Pennington  <hp@redhat.com>
5966
5967         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
5968         "scroll_offset" property for notification when the layout offsets
5969         may have changed
5970         (gtk_entry_adjust_scroll): add notify for scroll_offset
5971         (gtk_entry_layout_index_to_text_index): function to compensate for
5972         preedit string when doing coordinate stuff on the entry's layout
5973         (gtk_entry_text_index_to_layout_index): inverse function
5974         (gtk_entry_get_layout_offsets): hook to get current position of
5975         the layout      
5976         (gtk_entry_get_layout): hook to get the layout itself.
5977
5978         * gtk/gtklabel.c (gtk_label_get_layout): new function
5979
5980 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
5981
5982         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
5983         keybinding.
5984         (gtk_tree_view_focus): Fix merge conflict.
5985
5986 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
5987
5988         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
5989         clean up cursor handling.
5990
5991 2001-06-08  Havoc Pennington  <hp@redhat.com>
5992
5993         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
5994         function
5995
5996         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
5997         this function
5998
5999 2001-06-08  Alex Larsson  <alexl@redhat.com>
6000
6001         * gtk/gtkcompat.h.in:
6002         Added compat macros for all old GTK_TYPE_GDK_xxx types.
6003         Fixes bug #52892
6004
6005 2001-06-08  Havoc Pennington  <hp@redhat.com>
6006         
6007         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
6008         parent still
6009
6010 2001-06-08  Havoc Pennington  <hp@redhat.com>
6011
6012         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
6013         don't call g_list funcs on GSList
6014
6015         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
6016         gtk_container_focus(), since some widgets have focusable locations
6017         which are not other widgets. These widgets should not have to be 
6018         containers just to manage the focus. For example, GtkHSV is
6019         currently a container for no good reason. Also, this cleans
6020         up the "if (is_container && is_sensitive && is_drawable)
6021         container_focus ()" mess in widget implementations.
6022
6023         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
6024         function, and have it just call gtk_widget_child_focus().
6025
6026         * gtk/gtkhsv.c: derive from widget not container
6027         
6028         Throughout: fix to reflect GtkContainer::focus change
6029         
6030 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
6031
6032         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
6033         range.  Fix bug #55921
6034
6035         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
6036         (#55920).
6037
6038 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
6039
6040         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
6041         and gdk_keymap_get_current_direction().
6042
6043         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
6044           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
6045         the current locked group, use it to set the keymap
6046         direction.
6047
6048         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
6049         to determine whether we draw a split cursor or use
6050         a jumping cursor based on the current direction.
6051
6052         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
6053         Obey the split cursor setting. 
6054
6055 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
6056
6057         * gtk/gtkimmulticontext.c (activate_cb): Only activate
6058         when toggling on, not when toggling off... (#55906)
6059
6060 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
6061
6062         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
6063         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
6064         in docs. (#55812, Vitaly Tishkov)
6065
6066 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
6067
6068         * demos/gtk-demo/main.c (create_tree): Changed signal name from
6069         selection_changed to changed in signal connection to GtkTreeSelection,
6070         also used g_signal_connectc since GtkTreeSelection is now a GObject.
6071
6072 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
6073
6074         * gtk/gtktreeselection.c: Now it's a GObject instead of a
6075         GtkObject.  The GtkTreeSelection::selection_changed signal is now
6076         the GtkTreeSelection::changed signal.
6077
6078         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
6079         object.
6080
6081         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
6082         object.
6083
6084 2001-06-07  Havoc Pennington  <hp@redhat.com>
6085
6086         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
6087
6088 2001-06-07  Havoc Pennington  <hp@redhat.com>
6089         
6090         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
6091         (not tested yet because with absolute path to srcdir I can't build
6092         atk, but it was broken anyway so this may help) 
6093
6094 2001-06-07  Havoc Pennington  <hp@redhat.com>
6095
6096         * configure.in: output m4macros/Makefile
6097         
6098 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
6099
6100         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
6101         buttons.  Fixes #55460 reported by matthiasc@poet.de.
6102
6103 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
6104
6105         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
6106         expansion/collapsing so it only happens in one place.
6107         (gtk_tree_view_real_expand_row): ditto.
6108
6109 2001-06-07  Havoc Pennington  <hp@redhat.com>
6110
6111         * tests/Makefile.am: add missing -I flag
6112
6113         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
6114
6115         * configure.in: use pkg-config to see if GModule is
6116         supported; fix to properly turn on included loaders 
6117         when GModule isn't supported; don't use AC_CHECK_LIB 
6118         when libs are not installed yet
6119
6120         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
6121
6122         * Makefile.am (SUBDIRS): add m4macros subdir
6123
6124         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
6125         dependencies also.
6126
6127 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
6128
6129         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
6130         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
6131
6132 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
6133
6134         * gtk/gtktreeview.c
6135         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
6136         bindings to expand and collapse rows.
6137         (gtk_tree_view_real_select_cursor_parent): New key binding.
6138         (gtk_tree_view_real_toggle_cursor_row): New key binding.
6139
6140         * gtk/gtkmarshal.list: new
6141         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
6142
6143 2001-06-06  Havoc Pennington  <hp@redhat.com>
6144
6145         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
6146
6147         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
6148         Down to move visually rather than logically, since it confuses 
6149         people. Add -/+ and Ctrl--/+ bindings for logical movement.
6150
6151 2001-06-06  Alex Larsson  <alexl@redhat.com>
6152
6153         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6154         Fix up error messages.
6155
6156 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
6157
6158         * gtk/gtktooltips.h: Include gtkwidget.h 
6159         (#55798, Karl Nelson)
6160
6161         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
6162         a valid latin-1 character. (Marc Lehmann, #35467)
6163
6164         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
6165         (Marc Lehmann, #35467)
6166         
6167 2001-06-05  Alex Larsson  <alexl@redhat.com>
6168
6169         * demos/gtk-demo/appwindow.c (do_appwindow):
6170         Don't swap the order of the args to gtk_widget_destroyed.
6171
6172         * tests/testgtk.c (destroy_properties):
6173         Don't crash when the properties window is destroyed.
6174
6175         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
6176         Use with_mnemonics to handle the case of stock items with
6177         underscores in them.
6178
6179 2001-06-05  Havoc Pennington  <hp@redhat.com>
6180
6181         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
6182         gtk_text_iter_reorder
6183
6184 2001-06-05  Havoc Pennington  <hp@redhat.com>
6185
6186         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
6187
6188 2001-06-05  Havoc Pennington  <hp@redhat.com>
6189
6190         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
6191         to the range that was set
6192
6193         * gtk/gtkrange.c: add value_changed signal, primarily 
6194         intended for use with GtkScale
6195         (gtk_range_set_increments): new function
6196         (gtk_range_set_range): new function with weird name
6197         (gtk_range_set_value): new function
6198         (gtk_range_get_value): new function
6199
6200         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
6201         from gtk_spin_button_get_value_as_float(). Compat #define
6202         added for get_value_as_float.
6203
6204         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
6205
6206         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
6207
6208 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
6209
6210         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
6211
6212 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
6213
6214         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
6215
6216         * tests/testgtk.c (create_tooltips): Remove usage of
6217         gtk_widget_set().
6218
6219 2001-06-05  Havoc Pennington  <hp@redhat.com>
6220
6221         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
6222
6223         Applying patch from Jeff Franks, with function docs added.
6224         
6225         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
6226         remove call to set_mnemonic_widget, change docs a bit.  
6227
6228         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
6229         new function
6230
6231         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
6232         new function
6233
6234         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
6235
6236         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
6237         function
6238         (gtk_radio_button_new_with_mnemonic_from_widget): new function
6239
6240         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
6241         new function
6242
6243         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
6244         function        
6245
6246         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
6247         auto-selection of mnemonic widget.
6248
6249 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
6250
6251         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
6252         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
6253         (gtk_tree_view_column_set_min_width): ditto.
6254
6255 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
6256
6257         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
6258         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
6259
6260 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
6261
6262         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
6263         gtk_clist_thaw().
6264
6265 2001-06-04  Havoc Pennington  <hp@pobox.com>
6266
6267         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
6268 r       eleases for buttons 6, 7
6269
6270 2001-06-04  Havoc Pennington  <hp@redhat.com>
6271
6272         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
6273         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
6274         #55562
6275
6276 2001-06-04  Havoc Pennington  <hp@redhat.com>
6277
6278         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
6279         where text_view->layout == NULL by assuming its size is 0, 
6280         i.e. same as if we haven't done any reflow. Reported by 
6281         Hidetoshi Tajima #55448 
6282
6283 2001-06-04  Havoc Pennington  <hp@redhat.com>
6284
6285         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
6286         and 7 for scroll left/right, from Thomas Broyer
6287
6288 2001-05-10  Havoc Pennington  <hp@redhat.com>
6289
6290         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
6291         we need to parse the xsetting as if it were an RC file string.
6292
6293         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
6294         value of palette from settings, not from static variable
6295
6296         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
6297         xsettings translation table
6298
6299         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
6300         hardcoding the toolbar style conflicts with new customizable 
6301         toolbar style philosophy
6302         (gtk_toolbar_class_init): add settings for default toolbar style;
6303         these are used unless the app specifically forces a toolbar style
6304
6305         * gtk/gtksettings.c (settings_install_property_parser): only
6306         return at the start if we warn and parser == NULL
6307
6308         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
6309         palette changed handler so we don't notify dead color selections
6310
6311         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
6312         xthickness/ythickness of 0 or 1 properly 
6313         (gtk_default_draw_resize_grip): clear the background behind the
6314         resize grips, and align to bottom right if we square the 
6315         area to be drawn.
6316
6317         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
6318         statusbar label to 1, so it doesn't make toplevels resize oddly
6319         (gtk_statusbar_size_request): add grip size to request
6320         (gtk_statusbar_size_allocate): hack so the hbox still works with 
6321         the grip size in the request
6322
6323         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
6324         bug where showing all on a toplevel makes the toolbar 
6325         button text appear despite the toolbar mode
6326
6327         * gtk/gtkmenubar.c: add internal padding style property
6328
6329         * gtk/gtktoolbar.c: Add internal padding style property; add
6330         shadow type style property
6331
6332         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
6333         state; and put Container::border_width outside the frame
6334
6335         * gtk/gtktextview.c: don't draw focus rectangle if we're in
6336         interior focus mode, we just use blinking cursor
6337
6338 2001-06-04  Havoc Pennington  <hp@redhat.com>
6339
6340         * configure.in: Make gdk-pixbuf have same version number as GTK
6341
6342 2001-06-04  Havoc Pennington  <hp@redhat.com>
6343
6344         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
6345         digits greater than 6. If there actually are limits (which there
6346         likely aren't), should clamp to them not warn.
6347         (gtk_spin_button_new_with_range): don't take log of 0
6348         (gtk_spin_button_size_request): use digits to compute size
6349         request, rather than step increment.
6350
6351         * tests/testgtk.c (create_spins): test larger values of digits
6352         
6353         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
6354         font on map not expose, so we don't get weirdness during scrolling
6355
6356 2001-06-04  Havoc Pennington  <hp@redhat.com>
6357
6358         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
6359         Sam Solon, bug #54577, update value even if not drawable.
6360
6361 2001-06-04  Havoc Pennington  <hp@redhat.com>
6362
6363         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
6364         SCROLL_LEFT, reported by Thomas Broyer.
6365
6366 2001-06-04  Havoc Pennington  <hp@redhat.com>
6367
6368         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
6369         Process updates immediately, to prevent funny lag effect
6370         when scrolling, at some mild potential efficiency cost.
6371
6372 2001-06-04  Havoc Pennington  <hp@redhat.com>
6373
6374         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
6375         slider on the click.
6376
6377 2001-06-03  Havoc Pennington  <hp@pobox.com>
6378
6379         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
6380         hscale/vscale details, so we can use it for scrollbar as well.
6381
6382         * tests/testgtk.c (reformat_value): honor digits from GtkScale
6383
6384         * gtk/gtkenums.h (GtkTroughType): Remove this enum
6385         (GtkScrollType): add START and END from GtkTroughType
6386
6387         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
6388         its x/y arguments
6389
6390         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
6391         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
6392         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
6393         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
6394         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
6395
6396         Notable changes in the process:
6397          
6398         - stepper_size style property is the height for vertical 
6399           ranges, width for horizontal; the other dimension matches
6400           the trough size
6401         - add ability to do NeXT-style steppers (and several other styles
6402           that don't make any sense)
6403         - added min_slider_length, fixed_slider_length properties to
6404           GtkScrollbar
6405         - cleaned some private (or at least useless) functions out of
6406           gtkscale.h    
6407         - moved bindings to GtkScale from subclasses, even arrow keys,
6408           since blind users don't know scale orientation.
6409         - change move_slider action signal to use new GtkScrollType,
6410           remove GtkTroughType argument
6411         - digits rounds the values a range will input to the given 
6412           number of decimals, but will not try to force adjustment 
6413           values set by other controllers. That is, we no longer
6414           modify adjustment->value inside a value_changed handler.
6415         - added getters for GtkScale setters
6416         - middle-click begins a slider drag
6417         
6418 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
6419
6420         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
6421         getting the focus code to work.
6422         (gtk_tree_view_class_init): Add a bunch of keybindings.
6423
6424         * gtk/gtktreeviewcolumn.c
6425         (gtk_tree_view_column_set_cell_data_func):
6426         s/GtkCellDataFunc/GtkTreeCellDataFunc.
6427         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
6428         of "properties_changed" to help justify the death of the latter
6429         signal. (-:
6430
6431         * tests/testtreefocus.c (main): Let some columns be focussable to
6432         test focus better.
6433
6434 2001-06-01  Havoc Pennington  <hp@redhat.com>
6435
6436         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
6437         
6438         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
6439         overwrite in overwrite mode if we already deleted the selection
6440         and replaced it with new text.  
6441
6442         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
6443         selection to an empty range, clear the clipboard if we owned it.
6444         (gtk_label_set_selectable): give up selection if we become
6445         unselectable.
6446         (gtk_label_state_changed): override state changed to unselect text
6447         when insensitive
6448         (get_text_callback): add paranoia check that indexes aren't
6449         outside of label->text
6450         (gtk_label_select_region): make -1 for start_offset mean "end of
6451         label," for consistency with GtkEditable
6452
6453         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
6454         GTK_DIALOG_NO_SEPARATOR flag
6455
6456 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
6457
6458         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
6459         notifications on non-existant "enable_arrow_keys".
6460         (#53753, Skip Montanaro)
6461
6462 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
6463
6464         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
6465         GDK_TYPE_RECTANGLE.
6466
6467         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
6468         of allocation argument be GDK_TYPE_RECTANGLE.
6469
6470 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
6471
6472         * gtk/gtkoptionmenu.c: Account for the fact that the border
6473         width is _outside_ the window. (Fixes #54585, bug found
6474         by Bastien Nocera.)
6475
6476 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
6477
6478         * gtk/gtksettings.c (gtk_settings_get_property): Validate
6479         value from GDK settings against parameter spec.
6480
6481         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
6482         to temporary values and use g_value_transform(), since
6483         thinking that GValue was going to be easy or efficient
6484         to use was, of course, a mistake.
6485
6486         * gtk/gtksettings.c: Add cursor blink setting.
6487         
6488         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
6489
6490         * gtk/gtkentry.c: Add cursor blinking.
6491
6492         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
6493         cursor blink global settings.
6494
6495         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
6496         for :text_position in places where it is missing.
6497
6498 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
6499
6500         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
6501
6502 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
6503
6504         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
6505         not pkg-config. (#51032)
6506
6507         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
6508         (fixes #51952, James Henstridge)
6509         
6510 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
6511
6512         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
6513         Rename to the more correct gtk-go-up.
6514
6515         * gtk/stock-icons/stock_menu_sort_ascending.png:
6516         Added new file.
6517         
6518         * gtk/stock-icons/stock_menu_sort_descending.png:
6519         Changed to show descending instead of ascending.
6520
6521         * gtk/gtkiconfactory.c:
6522         Added menu size icon to sort ascending.
6523
6524         * gtk/stock-icons/Makefile.am:
6525         Added stock_menu_sort_ascending.png.
6526         
6527         * gtk/gtkseparatormenuitem.c:
6528         Use correct typenames.
6529
6530 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
6531
6532         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
6533         gulong as in GSignal.
6534
6535 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
6536
6537         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
6538         instances of GtkCellRenderer in code (all but dnd icon code).
6539         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
6540         there, and I can do multiple Cells per column.
6541
6542         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
6543
6544         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
6545         when model was unreffed prior to removing the row reference.
6546
6547 2001-05-25  Havoc Pennington  <hp@redhat.com>
6548
6549         * gtk/gtkiconfactory.c: fix so that default icons are created if 
6550         you call gtk_stock_list_ids()
6551
6552         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
6553         in list
6554
6555 2001-05-25  Havoc Pennington  <hp@redhat.com>
6556
6557         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
6558         set can render without falling back to missing image icon
6559
6560         * gtk/gtktextview.c (gtk_text_view_size_request): request full
6561         size of text, instead of random values
6562
6563         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
6564         size of tree view, instead of random values
6565
6566         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
6567         image in an appropriate size
6568
6569         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
6570         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
6571
6572         Throughout: fix GTK_STOCK_BUTTON_ instances
6573         
6574         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6575         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
6576         Add a bunch of new stock items/icons
6577
6578         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
6579         new function, convenience for inserting columns with a data func
6580
6581         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
6582         (_gtk_icon_factory_list_ids): use list of all factories to
6583         generate a list of all known IDs
6584
6585         * gtk/gtkstock.c (gtk_stock_list_ids): replace
6586         gtk_stock_list_items() with a function that returns all IDs known
6587         including those for GtkIconFactory.
6588
6589 2001-05-25  Hans Breuer  <hans@breuer.org>
6590
6591         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
6592         work -> check boxes and radio buttons are drawn now, even on win9x.
6593         Improved line settings a bit, still no clue how to get really dotted
6594         lines on win9x, on NT it's PS_ALTERNATE.
6595
6596         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
6597         GDK_HINT_MIN_SIZE as well
6598
6599         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
6600
6601         * gtk/gtk.def : updated
6602
6603         * gtk/gtktreeprivate.h : change column_drop_func to be a function
6604         pointer not a function pointer pointer
6605
6606         * tests/testdnd.c : include <stdlib.h> for putenv prototype
6607
6608         * tests/testsocket.c : made it compile on win32 again
6609
6610         * tests/makefile.msc : one more test-app uses prop-editor.obj
6611
6612 2001-05-22  Havoc Pennington  <hp@pobox.com>
6613
6614         * gtk/gtkbin.c (gtk_bin_get_child): New function
6615
6616 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
6617
6618         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
6619         to ignore when doing compose processing.
6620
6621 2001-05-22  Joe Shaw  <joe@ximian.com>
6622
6623         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
6624         Simplify as suggested by Havoc. Just get the last iter and work
6625         backward to the tag instead of getting a line and working back from
6626         there. Fixes passing in an invalid offset to
6627         iter_init_from_byte_offset().
6628
6629 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
6630
6631         * gtk/gtktreeview*.h: 
6632         * gtk/gtkcell*.h:
6633         * gtk/gtk*store.h:
6634         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
6635         macros to all objects.
6636
6637 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
6638
6639         * gtk/gtkcellrenderertext.c
6640         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
6641         with very large (TM) amounts of text.  May be moved to
6642         GtkCellRenderer in the future, though I'm not sure it wants to be
6643         this accessible.
6644
6645         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
6646         More sanity brought to this class.  I like it.
6647
6648         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
6649         case.  Kids, don't try this at home.
6650
6651         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
6652         convenience function.
6653
6654         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
6655
6656 2001-05-21  Alexander Larsson  <alexl@redhat.com>
6657
6658         * gtk/gtkfontsel.c:
6659         Added properties. Based on patch by Lee Mallabone.
6660
6661         * gtk/gtkruler.c:
6662         * gtk/gtkhruler.c:
6663         * gtk/gtkvruler.c:
6664         * gtk/gtktext.c:
6665         * gtk/gtktextview.c:
6666         Converted GtkArg to GParam. Based on patches by John Margaglione.
6667
6668         * tests/Makefile.am:
6669         * tests/testtext.c:
6670         Add a property editor to testtext.
6671         
6672 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
6673
6674         * gtk/gtk{h,v,}paned.c: Only show the separator if 
6675
6676         * configure.in: Fixed reversed conditional causing all image
6677         libraries to be linked in.
6678
6679 2001-05-21  Joe Shaw  <joe@ximian.com>
6680
6681         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
6682         that top_y needs to be >= 0.
6683
6684 2001-05-11  Havoc Pennington  <hp@pobox.com>
6685         
6686         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
6687         losing connection to the X server.
6688
6689 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
6690
6691         * configure.in: Start checks for X from pangox/pangoxft
6692         CFLAGS to avoid duplicate libraries.
6693
6694         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
6695
6696         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
6697         to include gobject.
6698         
6699 2001-05-18  Alexander Larsson  <alexl@redhat.com>
6700
6701         * gtk/gtkspinbutton.c:
6702         Convert GtkArgs to GParams. Based on patch by John Margaglione.
6703         Also do size request reasonable for MAXDOUBLE. Previously it printed
6704         the limits to a buffer and overran it. Instead do it using log10() and
6705         limit the width to 10 digits.
6706         
6707         * gtk/gtkwidget.c (gtk_widget_get_property):
6708         Correctly handle setting the parent property to NULL.
6709
6710 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
6711
6712         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
6713         style attributes even if the widget isn't realized.
6714
6715         * demos/gtk-demo/main.c: Use a slightly smaller font.
6716
6717 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
6718
6719         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
6720         This is something that only a widget writer would ever want
6721         to change.
6722
6723         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
6724         gtk_signal_emit_by_name().
6725
6726         * gtk/gtkviewport.c: Fix some warnings.
6727
6728         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
6729         allowing the requisitions of multiple widgets to be grouped
6730         together.
6731
6732         * tests/testgtk.c: Add GtkSizeGroup test
6733
6734         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
6735
6736         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
6737         warnings.
6738
6739         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
6740
6741 2001-04-28  Martin Baulig  <baulig@suse.de>
6742
6743         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
6744         to gtk_image_menu_item_set_icon() and made it work if there's already
6745         an image.
6746         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
6747         (gtk_image_menu_item_new_with_label): New function.
6748
6749 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
6750
6751         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
6752         highlighting code!!!!  The result is okay so long as you don't try
6753         to stress it.  It also highlights a bug in the TextView so it's in
6754         an unproportional font right now until it's fixed.
6755
6756         *demos/gtk-demo/*.c: Clean up code a bit to make it
6757         ugly-parser(TM) friendly. (-:
6758
6759 2001-05-17  Joe Shaw  <joe@ximian.com>
6760
6761         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
6762         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
6763         if it is only partially onscreen.
6764
6765 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
6766
6767         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
6768         not by characters.
6769
6770         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
6771         are not zero or one; that is, when graphemes of multiple characters
6772         are involved.
6773
6774         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
6775         FIXME.
6776
6777 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
6778         
6779         * gtk/gtkbbox.c:
6780         Add properties, based on patch by Lee Mallabone.
6781
6782         * gtk/gtknotebook.c:
6783         * gtk/gtktoolbar.c:
6784         Convert from GtkArg to GParam, based on patch by John Margaglione.
6785         
6786         * gtk/gtkhscale.c:
6787         * gtk/gtkvscale.c:
6788         * gtk/gtkhscrollbar.c:
6789         * gtk/gtkvscrollbar.c:
6790         * gtk/gtkrange.c:
6791         Move adjustment property to GtkRange.
6792
6793         * gtk/gtklabel.c:
6794         Setup mnemonics on property changes
6795
6796         * gtk/gtkwidget.c (gtk_widget_get_property):
6797         GdkExtensionMode is an enum, not a flag. Set it with
6798         g_value_set_enum ().
6799
6800         * tests/prop-editor.c:
6801         Better propery editor.
6802
6803         * tests/testgtk.c:
6804         Add new property test. Pass zero to the property editor to
6805         get properties from all derived types.
6806         
6807 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
6808
6809         * autogen.sh (have_automake): Require libtool-1.4,
6810         automake-1.4p1.
6811
6812         * acinclude.m4: Remove libtool macros.
6813
6814         * gdk-pixbuf/Makefile.am: Add dependencies to loade
6815         modules.
6816
6817         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
6818         for libgdk.
6819
6820         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
6821         libgdk.la for libgtk.
6822
6823         * modules/input/Makefile.am: Make modules have full
6824         dependencies.
6825
6826 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
6827
6828         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
6829         #54699 where paths weren't being checked for correctness.
6830
6831 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
6832
6833         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
6834         in any order you wan, whether or not the column is added to the
6835         tree, or the tree is realized.  Yay!
6836
6837         * gtk/gtktreeviewcolumn.c
6838         (gtk_tree_view_column_setup_sort_column_id_callback): handle
6839         sorting columns a lot saner
6840
6841         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
6842         new function to actually set wether or not a column is
6843         reorderable.
6844
6845         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
6846         if we have 'em.
6847
6848         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
6849         Fix nasty bug where we were showing the button just before
6850         realizing it.  As a result, the parent window was
6851         tree_view->window instead of tree_view->priv->header_window.
6852
6853         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
6854         to let you easily reorder a list or tree.
6855
6856 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
6857
6858         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
6859         from args to properties.
6860
6861 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
6862
6863         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
6864         from args to properties. (#51957)
6865
6866         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
6867         calls to after ->set_property call.
6868
6869 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
6870
6871         * tests/prop-editor.c: Block against redundant changes.
6872
6873         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
6874         properties.
6875
6876 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
6877
6878         * gdk/gdkpixmap.h: Remove creative formatting.
6879
6880 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
6881
6882         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
6883         property API. (#51669)
6884
6885         * gtk/gtkscale.c: Patch from John Margaglione converting to
6886         property API. (#51891)
6887
6888         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
6889         to property API. (#50985)
6890
6891 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
6892
6893         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
6894         buffering state across expose event, so we still call end_paint().
6895
6896 2001-05-11  Alexander Larsson  <alexl@redhat.com>
6897
6898         * gtk/gtkhsv.c (paint_triangle):
6899         Expose the ring in the triangle at the correct place when
6900         exposing just a part of the triangle.
6901
6902         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
6903         Return FALSE, or window focusing will not work.
6904
6905 2001-05-11  Havoc Pennington  <hp@pobox.com>
6906
6907         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
6908         #54144
6909
6910         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
6911         bug #54330
6912
6913 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
6914
6915         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
6916         propagate exposes to NULL child.
6917
6918         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
6919         against not having one of the scrollbars.
6920
6921         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
6922         we don't keep a mnemonic window if we have no mnemonic installed.
6923
6924 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
6925
6926         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
6927         it has the _important_ side effect of initializing a class.
6928
6929 2001-05-10  Alexander Larsson  <alexl@redhat.com>
6930
6931         * gdk/linux-fb/gdkprivate-fb.h:
6932         Make sure you can compile out the implementation/wrapper assert
6933         macros.
6934
6935         * gdk/linux-fb/gdkdrawable-fb2.c:
6936         Check implementation/wrappers, initialize type for pixmap dummys.
6937
6938         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
6939         Hide the cursor if reading from the screen.
6940
6941         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6942         Fix sign bug in tiling code.
6943
6944         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6945         Handle background pixmaps.
6946
6947 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
6948
6949         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
6950         function to let user control where columns are dragged.
6951
6952         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
6953         Escape is pressed.
6954
6955 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
6956
6957         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
6958         "columns_changed" signal.
6959         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
6960         motion code to draw arrows to the side if indicator is outside the
6961         widget.
6962         (gtk_tree_view_map_expanded_rows): Implement.
6963
6964 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6965
6966         * demos/testpixbuf-save.c: 
6967         * demos/testpixbuf-drawable.c:
6968         Include gdkfb.h on linux-fb.
6969
6970 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6971
6972         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
6973         New function for getting toplevel window at position.
6974         (gdk_drag_find_window): Use get_toplevel_window () instead
6975         of gdk_window_get_pointer(). (gdk_drag_status): Use
6976         correct context for getting window.
6977
6978         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
6979         g_strdup the atom name.
6980
6981         * gdk/linux-fb/gdkwindow-fb.c:
6982         Costmetic fix.
6983
6984         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
6985         Add code for changing cursor on linux-fb backend (same as
6986         win32).
6987
6988 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
6989
6990         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
6991         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
6992         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
6993         report was not for the development branch of GTK+, but it applies
6994         anyways).
6995
6996 2001-05-04  Havoc Pennington  <hp@redhat.com>
6997
6998         * configure.in: fix some shell typos
6999
7000         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
7001
7002         * gtk/gtkimage.c: handle animations
7003
7004         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
7005         border_width * 2, not just border_width
7006
7007         * gtk/gtkscale.c: add "format_value" signal to allow people
7008         to override the way values are drawn.
7009         (gtk_scale_get_value_size): fix width/height mistake,
7010         and compute size from actual displayed text, not 
7011         from made-up text.
7012
7013         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
7014         signal registration
7015
7016         * tests/testtext.c: Add "Remove all tags" menu item for testing
7017
7018         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
7019
7020         * demos/gtk-demo/main.c (main): add hack so we can find modules
7021         without installing gtk
7022
7023         * demos/gtk-demo/textview.c (insert_text): demo font scaling
7024
7025         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
7026         factor)
7027         (gtk_cell_renderer_text_set_property): remove some bogus
7028         g_object_notify
7029
7030         * gtk/gtktexttag.c: add "scale" property which is a font scaling
7031         factor
7032
7033         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
7034         to layout
7035
7036         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
7037         gtk_text_iter_is_first
7038
7039 2001-01-06  Hans Breuer  <hans@breuer.org>
7040
7041         * gdk/gdk.def : updated exports
7042
7043         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
7044         gdk won't compile anymore
7045  
7046         * gdk/win32/gdkevents-win32.c : initialize ret_val when
7047         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
7048         Improved gdk_flush () to not only do pending drawing operations
7049         but also process all currently pending events. This should make
7050         the behaviour more similar to the X11 version.  
7051
7052         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
7053         option needs to be set even if there is no GDK_GC_BACKGROUND.
7054         (gdk_win32_hdc_get) : use predraw_set_background () independent
7055         of value_mask. This allows to draw dashed lines leaving the original
7056         background intact.
7057
7058         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
7059         after processing, because we can't reuse it as the X11 version does.
7060
7061         * gtk/gtk.def : updated exports
7062
7063         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
7064         would like to get rid of this file again, and use straight
7065         makefile.msc again, as the other Gtk+ subdirs do)
7066
7067         * test/makefile.msc (new file) : build the test apps here
7068
7069 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
7070
7071         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
7072         strike-through setting
7073         (gdk_draw_layout_line_with_colors): Render strike-through
7074
7075 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
7076
7077         * Release 1.3.5
7078
7079         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
7080
7081         * NEWS: Updated
7082
7083         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
7084         Makefile breakage.
7085
7086 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
7087
7088         * demos/gtk-demo/images.c (progressive_timeout): Fix
7089         typo in filename.
7090
7091         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
7092         out FIXME warning; just too annoying.
7093
7094 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
7095
7096         * gdk/linux-fb/gdkcolor-fb.c:
7097         Better error messages.
7098
7099         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
7100         Initialize abs_x and abs_y.
7101         
7102         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
7103         Correct handling of stipple offset.
7104
7105         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
7106         Treat directcolor framebuffers as truecolor.
7107         
7108 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
7109
7110         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
7111         dependency on Atk for accessibility support.
7112
7113         * configure.in **/Makefile.am: Major reworking of substituted
7114         variables for CFLAGS/LIBS to make a lot more sane and 
7115         keep the the compile/link lines a bit shorter.
7116
7117         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
7118
7119 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
7120
7121         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
7122         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
7123         use _gtk_boolean_handled_accumulator.
7124
7125 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
7126
7127         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
7128         to fix things so clicking inside selection leaves cursor
7129         at point where clicked. (#50324)
7130
7131         * gtk/gtksettings.c (gtk_settings_class_init): Restore
7132         sane value for default double click time.
7133
7134         * tests/testtext.c (test_init): Really path to input modules.
7135
7136 2001-05-03  Sven Neumann  <sven@convergence.de>
7137
7138         * demos/testpixbuf-save.c: include target-specific headers as
7139         done in testpixbuf-drawable.c
7140
7141 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
7142
7143         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
7144         new_text_length appropriately when we run into the 
7145         size limit for the entry. (#53445, reported by Jeff Franks)
7146
7147         * tests/testgtk.c (create_entry): Remove most of the
7148         property toggle buttons. Replace with a "Props" button
7149         that brings up a property editor.
7150
7151         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
7152         Split the property editor code out for reuse, improve.
7153
7154 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
7155
7156         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
7157         trap errors around calls to XSetInputFocus since we have
7158         no way of knowing reliably whether we are viewable or
7159         not. (#53947)
7160
7161 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
7162
7163         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
7164         fix bug in dropping columns.  Moving columns now basically works
7165         modula some fine tuning.
7166
7167 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
7168
7169         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
7170         autoscroll support.  It mostly works, but could use some fine
7171         tuning.
7172         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
7173         Actually move the column.
7174
7175 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
7176
7177         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
7178           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
7179           New default theme! A slighly improved version of the 2.0 Raleigh
7180           theme, with Windows-esque focus/drawing default. 
7181           (GtkWidget::interior_focus defaults to TRUE.)
7182
7183         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
7184
7185 2001-04-30  Havoc Pennington  <hp@pobox.com>
7186
7187         * tests/testtext.c (line_numbers_expose): fix to work with
7188         gtk_paint_layout change
7189
7190 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
7191
7192         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
7193           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
7194           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
7195           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
7196
7197         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
7198           with GtkWidget::interior_focus = TRUE better.
7199
7200         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
7201         ::default_outside_border for more flexibility.
7202
7203         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
7204         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
7205         change that had to be made with g_object_get.
7206
7207 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
7208
7209         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
7210         (gtk_tree_view_move_column_after): Clean up interface. 
7211
7212 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
7213
7214         * gtk/gtkpacker.h:
7215         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
7216          to gtkenum.h.
7217
7218         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
7219         handled in switch).
7220
7221         * gtk/Makefile.am:
7222         (gtk.defs): generate enum portions with  glib-mkenums.
7223         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
7224         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
7225         
7226         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
7227         addition.
7228
7229         * docs/Changes-2.0.txt: keep a note on signal handlers now
7230         not getting emitted during the emission they were connected within.
7231
7232 2001-04-28  Havoc Pennington  <hp@pobox.com>
7233
7234         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
7235
7236 2001-04-24  Havoc Pennington  <hp@redhat.com>
7237
7238         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
7239         (gtk_text_layout_move_iter_to_next_line): fix these two for
7240         invisible text, lots of other stuff still hosed.
7241
7242         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
7243         new function, replaces the get/set palette stuff. This function 
7244         is intended for use by libgnomeui which should set the hook to a
7245         thing which sets the palette in GConf, and we need the
7246         GConf-to-xsettings proxy which will result in the change being
7247         propagated back to the GTK app.
7248
7249         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
7250         about unusable signals that it may be because the signal has 
7251         parameters.
7252
7253         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
7254         style, otherwise gtkrc.c won't know to create a new GtkStyle for
7255         it.
7256         (gtk_widget_modify_color_component): call
7257         gtk_widget_modify_style() so the rc style will get copied.
7258         (gtk_widget_modify_font): ditto
7259
7260         * gtk/gtkrc.c: make a couple variables static
7261
7262         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
7263         help button by default, since it does nothing
7264
7265         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
7266         around with UI
7267
7268         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
7269         so we can have tooltips
7270
7271         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
7272         can have tooltips
7273
7274         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
7275         GDK_ENABLE_BROKEN, because its memory behavior is completely
7276         hosed.
7277
7278         * gtk/gtknotebook.c: remove key press handler, replace with
7279         binding set, add numeric keypad support
7280
7281         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
7282
7283         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
7284
7285         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
7286         addition to plain Delete
7287
7288         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
7289         GDK_KP_Enter in addition to GDK_Return
7290
7291         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
7292         activate on entry instead of key press
7293         (gtk_font_selection_on_clist_key_press): get
7294         rid of this signal handler, not needed with new font sel.
7295
7296         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
7297         no-longer-needed emit_stop_by_name(), just return TRUE
7298
7299         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
7300         cruft, this widget is no longer focusable.
7301
7302         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
7303         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
7304         move_slider action signal, add binding set for vscale/hscale, in
7305         the process support numeric keypad
7306
7307         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
7308         make GDK_Return and GDK_KP_Enter activate the entry via 
7309         binding set, instead of hardcoded.
7310
7311 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
7312
7313         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
7314         code.  Some documentation added.
7315
7316 2001-04-27  Havoc Pennington  <hp@redhat.com>
7317
7318         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
7319
7320         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
7321
7322         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
7323         line/para separators
7324         (gtk_entry_create_layout): set single paragraph mode on the layout
7325
7326         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
7327         spacing between the image and label; instead, inside a button box 
7328         the button will get extra space that will go there, but if people 
7329         configure button box for 0 chubbiness, then there's no spacing.
7330
7331         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
7332         and min/max size style properties, so people can tune their
7333         chubbiness.
7334
7335         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
7336         functions
7337
7338         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
7339         space_style, and button_relief into style properties, remove
7340         functions for setting them
7341         
7342         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
7343         it back down
7344
7345         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
7346         types from gtk_widget_style_get
7347
7348         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
7349         with a style property.
7350
7351         * gdk/x11/gdkevents-x11.c: namespace the settings
7352
7353         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
7354
7355         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
7356         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
7357         be used. Also, translate doc strings for settings. Also, namespace
7358         the double-click-time property. Also, remove bell properties crap.
7359
7360 2001-04-27  Sven Neumann  <sven@gimp.org>
7361
7362         * Makefile.am: before creating links, check if pkg-config files
7363         exist for the default target. Otherwise link to the pkg-config files
7364         that got installed with this build.
7365
7366 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
7367
7368         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
7369         dragging code.  Revealed some (potential) GdkWindow bugs.
7370
7371         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
7372         _gdk_window_init_position to the end of reparent to fix the case
7373         of reparenting when new_x != old_x and new_y != old_y.
7374
7375 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
7376
7377         * gtk/gtkentry.c (strstr_len): Fix optimization that
7378         was correct for the use here, but completely incorrect
7379         in general.
7380
7381 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
7382
7383         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
7384         until patch adding gtk_window_set_size() is recommitted. 
7385
7386         * **Makefile.am configure.in gdk/x11/gdkim-11.c
7387           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
7388           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
7389           (#10784)
7390
7391 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
7392
7393         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
7394         window == NULL in a number of cases.
7395
7396         * tests/testdnd.c: Set module path for gdk-pixbuf.
7397
7398 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
7399
7400         * gtk/Makefile.am xembed.h: File containing #defines
7401         for XEMBED protocol.
7402
7403         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
7404
7405         - Change protocol from old plug/socket specific protocol
7406           to XEMBED draft
7407         - Various fixes to work with GTK+-2.0
7408
7409         Still quite a bit of work to do here to handle initiation
7410         from the socket side (as specified by XEMBED), to handle
7411         the more advanced features of XEMBED, and to figure out
7412         a good way to handle same-app embedding with less overhead
7413         than using full XEMBED.
7414
7415 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
7416
7417         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
7418         track of whether the toplevel has the focus; only send
7419         focus-in events to the focus widget when the window
7420         actually has the focus.
7421
7422 2001-04-25  Havoc Pennington  <hp@pobox.com>
7423
7424         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
7425         were still in the header
7426
7427 2001-04-24  Alexander Larsson  <alexl@redhat.com>
7428
7429         * gtk/gtkclist.[ch]:
7430         * gtk/gtkctree.c:
7431         When there is a row highlighted for D'n'D it must alse
7432         be painted hightlighted on exposes. Otherwise exposes from
7433         the icon being dragged will mess up the hightlight.
7434
7435         * gtk/gtkfontsel.c:
7436         Don't recenter selected font when exposing the font family
7437         clist. This means you can now actually scroll the font family
7438         list.
7439
7440         * gtk/gtknotebook.c:
7441         Fix focus movement on scrolling tabs that are placed on the left
7442         and right.
7443
7444 2001-04-21  Havoc Pennington  <hp@pobox.com>
7445
7446         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
7447         empty/invisible lines.
7448
7449         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
7450         (gtk_text_iter_set_visible_line_index): new functions to set
7451         indexes excluding invisible text
7452
7453         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
7454         index
7455
7456         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
7457         (gtk_text_iter_get_visible_line_offset): new functions to 
7458         get indexes excluding invisible text
7459
7460         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
7461         bunch of extra padding that served no purpose
7462
7463         * gtk/gtkdialog.c: Make all the spacings configurable via style
7464         properties, for chubbiness configuration in themes
7465
7466         * tests/testtext.c: fix path to the immodules.
7467         
7468 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
7469
7470         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
7471         got munched by #endif.
7472
7473         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
7474
7475         * gtk/gtktreeview.c: Refactored code to clean up a number of
7476         events.
7477
7478         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
7479         values to make consistent with other functions.  Spotted by Jeff
7480         Franks <jcf@tpg.com.au>.
7481
7482         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
7483         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
7484
7485 2001-04-23  Sven Neumann  <sven@gimp.org>
7486
7487         * gtk/Makefile.am
7488         * gtk/gtkplug.c
7489         * gtk/gtksocket.c: on request of Owen, reverted my last change 
7490         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
7491
7492 2001-04-23  Sven Neumann  <sven@gimp.org>
7493
7494         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
7495         compile for non-X11 targets again
7496
7497 2001-04-20  Alexander Larsson  <alexl@redhat.com>
7498
7499         * gtk/gtkcolorsel.[ch]:
7500         API Change. Take GdkColor arguments instead of gdouble *.
7501         Leave the old gtk_color_selection_set_color for compatibility,
7502         but marked deprecated.
7503         Do correct rounding when converting RGB <-> HSV.
7504         
7505         * gtk/gtkcolorseldialog.c:
7506         * tests/testgtk.c:
7507         Use new GtkColorSelection API.
7508
7509         * gtk/gtkhsv.c:
7510         Fix problem selecting colors in triangle when Hue is 330.
7511         Fix some black dots around the HSB triangle.
7512         
7513         * gtk/gtkfilesel.c:
7514         return FALSE from the focus_in_event handler to fix focus problems.
7515
7516 2001-04-18  Havoc Pennington  <hp@redhat.com>
7517
7518         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
7519         set, so keybindings are configurable    
7520         (gtk_window_activate_default): Change to activate the focus widget
7521         instead if there's a focus widget, to be consistent with the
7522         behavior that previously existed in key_press_event
7523
7524 2001-04-18  Havoc Pennington  <hp@redhat.com>
7525
7526         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
7527
7528 2001-04-18  Havoc Pennington  <hp@redhat.com>
7529
7530         Close bug #50615:
7531         
7532         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
7533         the layout
7534
7535         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
7536
7537         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
7538
7539         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
7540         
7541         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
7542         to blue for base, in addition to bg
7543         
7544 2001-04-18  Havoc Pennington  <hp@redhat.com>
7545
7546         * tests/testgtk.c (create_image): allow shrinking the image window
7547         to test that we clip to allocation.
7548
7549         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
7550         #9845
7551
7552         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
7553
7554 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
7555
7556         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
7557         mode on shm segments to 0600. We'll see who complains.
7558
7559         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
7560         _gdk_windowing_window_destroy() AFTER recursing through
7561         children.
7562
7563         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
7564         testsocket_child on X.
7565
7566         * tests/testsocket[_child].c: Fix uses of
7567         gtk_window_get_default_accel_group().
7568
7569         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
7570
7571         * gdk/gdkimage.c: (gdk_image_get):
7572         Deal with the possibility that XGetImage() might return NULL.
7573         Allocate the GdkImagePrivate structure only after XGetImage()
7574         succeeds in order not to dereference a NULL ximage pointer.  This
7575         prevents a core dump when XGetImage() fails - which is unlikely,
7576         but can happen due to race conditions accessing the geometries of
7577         drawables.  An x error will still be triggered, but the gdk image
7578         wrapper at least wont seg fault.
7579         
7580 2001-04-18  Havoc Pennington  <hp@redhat.com>
7581
7582         * gtk/gtkimage.c: fix to properly queue resizes when the image is
7583         set
7584
7585         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
7586         if the insertion point isn't editable
7587
7588         * demos/gtk-demo/images.c: Added a GtkImage demo
7589
7590         * demos/gtk-demo/drawingarea.c: drawing area demo
7591         
7592         * demos/gtk-demo/menus.c (create_menu): cleanups
7593
7594 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
7595
7596         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
7597           gdk/x11/gdkevents-x11.c: Introduce an extra child
7598         of toplevel windows that serves to hold the focus to
7599         avoid events being delivered to embedded windows.
7600
7601         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
7602         some extra variables to clean up code and reduce the
7603         number of casts.
7604
7605         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
7606         guint for 1 bit bit fields, not gboolean.
7607
7608 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
7609
7610         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
7611         not TRUE. (Fixes #52925)
7612
7613 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
7614
7615         * Released 1.3.4
7616
7617         * NEWS: Updated
7618
7619         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
7620         use GTK_TYPE_ENUM.
7621
7622 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
7623
7624         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
7625
7626         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
7627         names to compatibility #defines so docs work.
7628
7629         * gtk/gtkenums.h: Remove GtkMenuFactoryType
7630
7631         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
7632
7633         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
7634
7635         * tests/testgtkrc: No magenta cursors, please.
7636
7637         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
7638
7639         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
7640         
7641 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
7644         grabs, since they are no longer necessary.
7645
7646         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
7647         by signal_connect() and call gtk_button_pressed() rather
7648         than signal_connect_after().
7649
7650         * tests/testgtk.c: Restore radio menu items to combos 
7651         since they'll look OK with Raleigh, and it is easier
7652         than finishing the process of removing them that was
7653         started earlier.
7654
7655 2001-04-16  Hans Breuer  <hans@breuer.org>
7656
7657         * gdk/gdk.def :
7658         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
7659
7660         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
7661         we are interested in the functions return value not the function address
7662         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
7663
7664         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
7665
7666 2001-04-14  Hans Breuer  <hans@breuer.org>
7667
7668         * gdk/gdk.def :
7669         * gdk/makefile.msc : updated
7670
7671         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
7672         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
7673         (the testgtk::text backgound pixmap is drawn again)
7674         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
7675         Win32 Pango change
7676         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
7677
7678         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
7679         Not sure if the returned settings have the right unit, because I couldn't
7680         find any docs for the X version ...
7681
7682         * gtk/gtk.def :
7683         * gtk/makefile.msc.in : updated
7684
7685 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
7686
7687         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
7688         wording problems. (Compared to version from Johannes Stezenbach to
7689         check correctness.)
7690
7691 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
7692
7693         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
7694         this to compile.
7695
7696 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
7697
7698         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
7699         not pixbufpos.
7700
7701         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
7702
7703         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
7704         are unsigned insts, therefore use g_value_set_uint.
7705         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
7706
7707 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
7708
7709         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
7710
7711         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
7712         GTK_TYPE_STRING.
7713
7714         * gtk/gtktreeview.c: New functions to allow initial column
7715         dragging work.
7716
7717         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
7718
7719         * tests/testtreefocus.c: give dave some love.
7720
7721         * tests/testtreesort.c: Modify test to check really long samples.
7722
7723 2001-04-11  Alexander Larsson  <alexl@redhat.com>
7724
7725         * gtk-2.0.m4: Pass pkg-config options
7726         before the other args so it works even if
7727         POSIXLY_CORRECT is set.
7728
7729 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
7730
7731         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
7732         0, interface 0).
7733
7734 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
7735
7736         * gtk/gtkcalendar.c (gtk_calendar_button_press):
7737         check for action_func != NULL
7738
7739 2001-04-04  Sven Neumann  <sven@gimp.org>
7740
7741         * tests/testgtk.c (test_init): corrected path to gtk.immodules
7742
7743 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
7744
7745         * Released Gtk+-1.3.3.
7746
7747 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
7748
7749         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
7750
7751 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
7752
7753         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
7754         files to/from source dir. (if we don't stay in builddir, we
7755         can't reach make-inline-pixbuf.
7756
7757         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
7758         deps.
7759
7760         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
7761         ages 0).
7762
7763 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
7764
7765         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
7766         moved to the GtkTreeSortable interface.
7767
7768         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
7769         Make more efficient (fixes #50262).
7770
7771 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
7772
7773         * NEWS: Updated.
7774
7775         * configure.in: Remove support for uninstalled glib.
7776
7777         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
7778         so as not to stop emission.
7779
7780         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
7781         is no longer supported.
7782
7783         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
7784         into tests, change build order to build modules before
7785         gtk/.
7786
7787         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
7788         to here.
7789
7790 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
7791
7792         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
7793         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
7794         GPatternSpec. this is actually unlikely to cause breakage in
7795         third-party apps since except for gle, pretty much ever caller
7796         passes NULL here.
7797
7798         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
7799
7800         * *.c: use g_pattern_*() API.
7801
7802         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
7803
7804         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
7805         directions aren't passed in.
7806
7807         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
7808         functionality to be usable from gtkstyle.c as well, give precedence
7809         for conversion to user-supplied parsers.
7810         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
7811
7812         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
7813         _gtk_settings_parse_convert() for rcporperty value conversion.
7814
7815 2001-04-03  Alexander Larsson  <alexl@redhat.com>
7816
7817         * gdk/linux-fb/gdkevents-fb.c:
7818         Add empty gdk_setting_get().
7819
7820 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
7821
7822         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
7823         variable names.
7824         
7825         * gtk/makeenums.pl: touch this so enum files get remade.
7826
7827 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
7828
7829         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
7830         work again when not sorted.
7831
7832         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
7833         and "expand_row" signal, closing bug 52578.
7834
7835         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
7836         support.
7837
7838         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
7839         support.
7840
7841 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
7842
7843         * gdk/gdkevents.h: Add GdkEventSetting event for notification
7844         of changes to system settings, gdk_setting_get() to retrieve
7845         a single system setting.
7846
7847         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
7848         to the draft XSETTINGS mechanism.
7849
7850         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
7851         XSETTINGS.
7852
7853         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
7854         of GDK settings changes to the GtkSettings object.
7855
7856         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
7857         double-click-timeout property to GDK.
7858
7859         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
7860         Define GDK boxed types here.
7861
7862         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
7863         gdk/gdkenumtypes.[ch] for enum definitions.
7864
7865         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
7866         * gtk/gtk-boxed.defs: Comment out GDK types
7867         * gtk/gtktypeutils.h: Remove GDK types
7868         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
7869
7870 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
7871
7872         * Applied patch from Ron Steinke to add signal accumulators
7873         so that signals with the convention 'TRUE return means
7874         handled' stop emission on a TRUE return.
7875
7876         * gtk/gtkmain.[ch]: Add private accumulator 
7877         _gtk_boolean_handled_accumulator, used throughout GTK+.
7878         
7879         * gtk/gtkspinbutton.c: Add accumulator for ::output.
7880
7881         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
7882         
7883         * gtk/gtkwidget.c: Add accumulators for event signals,
7884         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
7885         for ::mnemonic-activate.
7886
7887         * gtk/gtkwindow.c: Add accumulator for ::frame_event
7888
7889 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
7890
7891         * gtk/gtkwidget.c: Add missing include.
7892
7893 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
7894
7895         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
7896         marshaller.
7897
7898         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
7899         "changed" signal to "range_changed".
7900
7901         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
7902         removing a tree from one model would remove all trees from that
7903         model.
7904         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
7905         changed signal instead.
7906
7907 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
7908
7909         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
7910         chaining up to parent impl, since we have a INPUT_ONLY
7911         window.
7912
7913         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
7914         foreground color for the cursor.
7915
7916 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
7917
7918         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
7919         param spec when caching property values, since we unref it
7920         later when we free the style.
7921
7922         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
7923         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
7924
7925 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
7926
7927         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
7928         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
7929         stupidity.
7930
7931 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
7932
7933         [ First pass at adding style properties. Still needs some definite
7934         fine-tuning. ]
7935
7936         * gtk/gtkbutton.c: Add ::default_spacing style property.
7937          
7938         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
7939         ::indicator_spacing style properties.
7940
7941         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
7942         style properties.
7943
7944         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
7945         rather than a normal property.
7946
7947         * gtk/gtkwidget.c: Add an ::interior_focus style property to
7948         draw focus inside buttons, in the Windows/Java Metal/etc. style.
7949
7950         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
7951         Honor ::interior_focus.
7952         
7953         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
7954         TRUE.
7955
7956         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
7957         Add ::slider_width, ::trough_border, ::stepper_size,
7958         ::stepper_spacing style properties.
7959
7960         * gtk/gtkscale.[ch] Add ::slider-length style property.
7961
7962 2001-04-02 Alexander Larsson   <alexl@redhat.com>
7963
7964         * gdk/linux-fb/gdkwindow-fb.c:
7965         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
7966         warnings that were spewed on startup.
7967
7968         * gtk/gtkwindow-decorate.c:
7969         gtk_window_reposition -> _gtk_window_reposition
7970
7971 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
7972
7973         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7974         Add boxed type for GtkRequistion. Use it for ::size-request.
7975
7976         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7977         Add a new GtkBorder structure useful for geometry properties
7978         for widgets. Add corresponding GTK_TYPE_BORDER.
7979         
7980         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
7981         Support automatic parser selection like
7982         gtk_settings_install_property_parser().
7983
7984         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
7985         functionality for use by gtk_widget_class_install_style_property.
7986         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
7987
7988 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
7989
7990         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
7991         g_param_spec_unichar(). 
7992
7993 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
7994
7995         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
7996         _NET window managers.
7997
7998         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
7999
8000 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
8001
8002         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
8003         bad needs to be nuked, not just deprecated.
8004
8005         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
8006         gtk_widget_popup().
8007
8008         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
8009         
8010         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
8011         widget.
8012         
8013         * docs/Changes-2.0.txt: updates.
8014         
8015 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
8016
8017         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
8018         for (i = 0; i < 100; i ++)
8019           g_print ("I will confirm it compile before committing\n");
8020
8021 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
8022
8023         * gtk/gtktreestore.c: Initial work on implementing the
8024         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
8025
8026 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
8027
8028         * gtk/gtkwidget.c: fixed a bunch of notifications, added
8029         reference counts around emissions where the widget is used afterwards.
8030         added freeze/thaws around multiple properties being notified.
8031         (_gtk_widget_get_aux_info): cleanups.
8032         
8033         * gtk/gtksettings.c (gtk_settings_install_property): provide
8034         default parsing functions for gdkcolor, enums and flags.
8035
8036         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
8037         applied by owen.
8038         backed out gtk_window_get_location(), gtk_window_set_location(),
8039         gtk_window_get_size() and gtk_window_set_size(), these
8040         have to be sorted out wrg x/y/width/height/default_with/default_height
8041         properties.
8042         kept a flag in GtkWindowGeometryInfo to handle user
8043         resetting default sizes.
8044         cleaned up ZVT comments.
8045         bunch of assorted bug fixes, notification fixes.
8046         (_gtk_window_reposition): make this a really internal function.
8047         
8048         * gtk/testgtk.c: fixups.
8049         
8050 2001-03-31  Hans Breuer  <hans@breuer.org>
8051
8052         * config.h.win32.in : disable USE_MMX for msvc build cause
8053         the assembler doesn't fit and is out of my scope. Disable
8054         USE_GMODULE for msvc build as wel. The right way to share
8055         binaries on win32 would be to use libtiff.dll etc. To reduce
8056         installation hassles IMO it's better to include all fileformats
8057         builtin to gdk-pixbuf
8058
8059         * gdk-pixbuf/makefile.msc : new file
8060
8061         * gdk/gdk.def : updated
8062
8063         * gdk/win32/gdkevents-win32.c : don't erase the background if
8064         .no_bg is set. It improves the scrolling (e.g. of testgtk main
8065         buttons
8066         * gdk/win32/gdkgeometry-win32.c : added comment about the above
8067
8068         * gdk/win32/gdkwindow-win32.c : added three new functions like
8069         the X version. Only one is implemented, because the other two
8070         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
8071         be default behaviour on win32 anyway ...
8072
8073         * gtk/gtk.def : updated
8074
8075         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
8076         from where it was built and add an additional rule to automagically
8077         build gtkmarshal.[hc]
8078
8079         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
8080         before array access for the current entry isn't finished
8081
8082         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
8083         use g_return_val_if_fail
8084
8085         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
8086         for the static array, but let the compiler calculate it. It
8087         makes me wonder if gcc isn't capable to catch bugs like this ...
8088
8089 2001-03-31  James Henstridge  <james@daa.com.au>
8090
8091         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
8092         constant "-1" in the aux info structure.
8093
8094 2001-03-30  Alexander Larsson  <alexl@redhat.com>
8095
8096         * gtk/gtkbutton.c (gtk_button_get_property):
8097         * gtk/gtklabel.c:
8098         Remove leaks.
8099         
8100         * gtk/gtkcontainer.c:
8101         * gtk/gtkhscale.c:
8102         * gtk/gtkhscrollbar.c:
8103         * gtk/gtklayout.c:
8104         * gtk/gtkmisc.c:
8105         * gtk/gtkprogress.c:
8106         * gtk/gtkprogressbar.c:
8107         * gtk/gtkrange.c:
8108         * gtk/gtktable.c:
8109         * gtk/gtkviewport.c:
8110         * gtk/gtkvscale.c:
8111         * gtk/gtkvscrollbar.c:
8112         * gtk/gtkwidget.c:
8113         Property patches, based on patches from John Margaglione and Lee Mallabone.
8114
8115 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
8116
8117         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
8118         adjustment. Cleaned redundant preconditions (spin != NULL). Added
8119         inline API function docs.
8120         (gtk_spin_button_new_with_range): New convenience constructor.
8121         (gtk_spin_button_set_increments): New adjustment helper.
8122         (gtk_spin_button_set_range): New adjustment helper.
8123
8124         * gtk/testgtk.c : added test of the new convenince constructor and
8125         value_changed signals.
8126
8127 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
8128
8129         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
8130         listen to the reorder signal.
8131
8132 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
8133
8134         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
8135         to get the aux info structure fo the widget.
8136
8137         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
8138         above function.
8139
8140         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
8141
8142         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
8143         to get the size of the window manager frame, basically the same
8144         code that gdk_window_get_root_origin() had
8145         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
8146
8147         * gtk/gtkwindow.c (gtk_window_set_default_size): use
8148         gdk_window_resize() if the window is realized and resizeable
8149
8150         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
8151         typo so that setting gravity works
8152
8153         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
8154         allocation if auto_shrink is on, even if the default size
8155         has not changed.
8156
8157         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
8158         g_return_if_fail
8159
8160 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
8161
8162         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
8163         reordering/sorting work.  Now pretty much works.
8164
8165         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
8166         reorder mostly work.  Still need to get the parity correct.
8167
8168         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
8169         signal, so I can listen for the sort_column_changed signal so I
8170         can change my "sort_indicator" property.  Cool.
8171
8172 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
8173
8174         [ Patch from Havoc Pennington, hp@redhat.com ]
8175
8176         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
8177         Add functions gdk_window_begin_resize_drag/begin_move_drag
8178         to start resizing or moving a toplevel window. This
8179         is done either using the _NET_WM_MOVERESIZE protocol,
8180         or, if that isn't present, by emulation.
8181
8182         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
8183         to export the above to GTK+-land.
8184
8185         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
8186         
8187         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
8188         Move this function into gdkwindow, since we need it
8189         when implementing fallback resizing.
8190
8191         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
8192         Fix typo when setting gravity.
8193
8194         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
8195         Add an optional (but on by default) resize grip for resizing 
8196         the parent window.
8197
8198 01-03-29  Alexander Larsson  <alexl@redhat.com>
8199
8200         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
8201         Don't return TRUE from the event handler, that blocks all
8202         event signals on the tooltip widget. Now you can press buttons
8203         in toolbars again.
8204
8205 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
8206
8207         * gtk/testtext.c (create_buffer): Add missing NULL on
8208         valist.
8209
8210         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
8211         c-n-p problem with INCONSISTENT property.
8212
8213         [ Patch from Havoc Pennington  <hp@redhat.com> ]
8214
8215         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
8216         hook.
8217
8218         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
8219         signal as a hook for extending the default popup menu
8220
8221         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
8222         use radio menu items for the input method menuitems
8223
8224         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
8225         inserted unicode from Ctrl-Shift-hex input method
8226
8227         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
8228         validatation here, already done at GtkTextBuffer level.
8229
8230         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
8231         popup_menu run action signal and Shift+F10 and Menu keybindings.
8232
8233         * gtk/gtkentry.c: implement a default handler for popup_menu
8234
8235         * gtk/gtktextview.c: implement a default handler for popup_menu
8236
8237         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
8238         from a key event
8239         
8240         * gtk/gtklabel.c: remove "trailer" cruft
8241
8242 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
8243
8244         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
8245         handle reordering of trees.  Seems to mostly work w/ the exception
8246         of the parity flag.
8247
8248         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
8249         signal.
8250
8251 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
8252
8253         * gtk/gtkwidget.h: c++ fixes.
8254
8255 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
8256
8257         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
8258         memory.
8259
8260 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
8261
8262         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
8263         Nils Barth fixing event return values. (#51041)
8264
8265         * gtk/gtkwidget.c: Fix some return values for default
8266         functions.
8267
8268         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
8269         return values for trough_keys functions.
8270
8271         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
8272         value for add_accelerator (shoudl have been a void
8273         return.)
8274
8275         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
8276         Fix return type of EVENT.
8277
8278         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
8279         signal return a boolean.
8280
8281 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
8282
8283         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
8284         reordered signal.
8285
8286         * tests/testtreesort.c (main): fix spelling.
8287
8288 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
8289
8290         * gtk/gtkliststore.c: More work on implementing sortable
8291         interface.
8292
8293 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
8294
8295         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
8296         reference the widgets in the resulting list. (#11821)
8297         This makes this consistent with gtk_container_children.
8298
8299         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
8300         uses of gtk_window_list_toplevels.
8301
8302 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
8303
8304         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
8305         a virtual function to set whether the IM context should use 
8306         the preedit string. (#51922)
8307         
8308 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
8309
8310         * gdk/gdkpango.h: Remove stale FIXME comment.
8311
8312 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
8313
8314         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
8315         Fixed bug that returned NULL if a filename was selected.
8316
8317 2001-03-24  Havoc Pennington  <hp@pobox.com>
8318
8319         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
8320         to contain the word "theme"
8321
8322 2001-03-24  Havoc Pennington  <hp@pobox.com>
8323
8324         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
8325         slower but finer-grained
8326         (gtk_hsv_focus): get initial focus on the ring or triangle 
8327         according to tab direction
8328
8329         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
8330
8331 2001-03-23  Havoc Pennington  <hp@pobox.com>
8332
8333         * gtk/gtkhsv.c: make this somewhat key-navigable
8334
8335         * gtk/gtkfontsel.c: mnemonics
8336
8337         * gtk/gtkgamma.c: mnemonics
8338
8339         * gtk/gtkcolorsel.c: add mnemonics to labels
8340
8341 2001-03-22  Havoc Pennington  <hp@pobox.com>
8342
8343         Applied big patch from Seth Lytle to fix event handler return
8344         values, slightly modified.
8345
8346         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
8347         handled.
8348         (gtk_calendar_key_press): return TRUE for GDK_space triggers
8349         select_day
8350
8351         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
8352         (gtk_clist_button_release): return TRUE if handled
8353
8354         * gtk/gtkcolorsel.c (mouse_release):
8355         (palette_activate): 
8356         (palette_press): 
8357         (palette_new): 
8358         (mouse_press): 
8359         (get_screen_color): 
8360         fixed return type (void to gboolean), return TRUE,
8361         added GTK_SIGNAL_FUNC cast
8362
8363         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
8364         (void to gboolean), and return TRUE
8365         (gtk_combo_button_release): changed return value to TRUE after
8366         gtk_grab_add on combo->popwin
8367
8368         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
8369         collapse or expand
8370
8371         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
8372         button/motion
8373
8374         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
8375         press/release and motion that trigger act
8376
8377         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
8378
8379         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
8380         for GDK_Return
8381         
8382         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
8383         (gtk_list_button_release): return TRUE if selection
8384
8385         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
8386         press
8387
8388         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
8389         (gtk_menu_shell_button_release): chain parent_menu_shell retval
8390
8391         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
8392         nothing triggered
8393         (gtk_notebook_button_release): return TRUE if we do anything
8394
8395         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
8396         (gtk_spin_button_button_release): return TRUE or chained retval
8397
8398         * gtk/gtktext.c (gtk_text_button_press): 
8399         (gtk_text_button_release): return TRUE
8400         (gtk_text_key_press): remove redundant retval code
8401         
8402         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
8403         and sensitive
8404         (gtk_tree_item_subtree_button_click): changed type to gint, and return
8405         TRUE if sensitive
8406
8407         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
8408         return TRUE
8409
8410 2001-03-23  Havoc Pennington  <hp@redhat.com>
8411
8412         * gtk/testgtk.c: fix warnings
8413
8414         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
8415
8416         * gtk/gtktextview.c: fix warnings
8417
8418         * gtk/gtktext.c (find_cursor_at_line): fix warning
8419
8420         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
8421
8422         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
8423         of this function
8424
8425         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
8426         fix warning
8427
8428         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
8429
8430         * gtk/gtkfontsel.c: fix warning
8431
8432         * gtk/gtkcolorsel.c: fix warnings
8433
8434 2001-03-23  Havoc Pennington  <hp@redhat.com>
8435
8436         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
8437
8438         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
8439
8440         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
8441         and deprecated gtk_check_menu_item_set_show_toggle().
8442         
8443         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
8444
8445         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
8446
8447         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
8448
8449 2001-03-23  Havoc Pennington  <hp@redhat.com>
8450
8451         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
8452         some docs
8453
8454 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
8455
8456         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
8457         this.
8458
8459         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
8460         set_cell to set_value
8461
8462         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
8463         set_cell to set_value
8464
8465 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
8466
8467         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
8468         fix braino.
8469         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
8470         support.
8471
8472         * gtk/gtktreeview.c: Addition of initial sortable support.
8473
8474         * gtk/gtktreestore.c: Addition of initial sortable support.
8475
8476         * gtk/gtkliststore.c: Addition of initial sortable support.
8477
8478         * gtk/gtkmarshal.list: yet another marshaller.
8479
8480         * gtk/gtktreedatallist.[ch]: shared code between the store models
8481         for handling sorting headers.
8482
8483 2001-03-22  Havoc Pennington  <hp@redhat.com>
8484
8485         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
8486         (gtk_container_unset_focus_chain): Add ability to override the 
8487         focus chain for a container explicitly
8488
8489 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
8490
8491         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
8492         added PROP_MNEMONIC_WIDGET.
8493
8494         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
8495         (gtk_window_remove_mnemonic): 
8496         (gtk_window_add_mnemonic): fixed assertions.
8497         (gtk_window_activate_mnemonic): constrain modifier checks to those
8498         permitted by gtk_accelerator_get_default_mod_mask().
8499         got rid of gtk_window_get_default_accel_group().
8500
8501         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
8502         activatable widgets either by focussing or a warning.
8503         added a signal accumulator to ::activate_mnemonic which stops the
8504         emission once a handler returned TRUE.
8505
8506 2001-03-22  Havoc Pennington  <hp@pobox.com>
8507
8508         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
8509         the stock item label
8510
8511         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
8512
8513         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
8514
8515         * demos/gtk-demo/*.c: Add mnemonics all over the place
8516
8517         * gtk/gtklabel.h: mark parse_uline deprecated
8518
8519 2001-03-21  Alexander Larsson  <alexl@redhat.com>
8520
8521         * gtk/gtkitemfactory.[ch]:
8522         Add support for stock and normal imagemenuitems.
8523         
8524         * gtk/testgtk.c:
8525         Add some tests for mnemonics, stock toolbars, stock
8526         and image menuitems in itemfactory and gdk_window_scroll.
8527
8528 2001-03-21  Alexander Larsson  <alexl@redhat.com>
8529
8530         * gtk/gtkbutton.[ch]:
8531         * gtk/gtkdialog.c:
8532         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
8533         removed accel_group argument. Renamed gtk_button_new_accel() to
8534         gtk_button_new_with_mnemonic() and removed accel_group argument.
8535
8536         * gtk/gtkcheckbutton.[ch]:
8537         New function gtk_check_button_new_with_mnemonic().
8538
8539         * gtk/gtkentry.c:
8540         Override activate_mnemonic and just grab focus.
8541
8542         * gtk/gtkitemfactory.c:
8543         Don't add menu uline accel group, instead use mnemonics support.
8544
8545         * gtk/gtklabel.[ch]:
8546         New support for mnemonics.
8547
8548         * gtk/gtkmarshal.list:
8549         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
8550
8551         * gtk/gtkmenu.[c]:
8552         * gtkmenushell.c:
8553         Use mnemonics instead of accel groups for uline
8554         support in menu items.
8555         Removed gtk_menu_get_uline_accel_group() and
8556         gtk_menu_ensure_uline_accel_group().
8557
8558         * gtk/gtkmenuitem.c:
8559         Override activate_mnemonic to handle switching between
8560         menu items if there are collisions.
8561         
8562         * gtk/gtknotebook.c:
8563         Connect to activate_mnemonic on the tab_label, so that
8564         activating it switches to that notebook page.
8565
8566         * gtk/gtkwidget.[ch]:
8567         Add activate_mnemonic signal. New function
8568         gtk_widget_activate_mnemonic() to emit it.
8569         Default implementation does activate/grab_focus.
8570
8571         * gtk/gtkwindow.[ch]:
8572         Add support for mnemonics in windows.
8573         New functions:
8574         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
8575         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
8576
8577         * gtk/testgtk.c:
8578         Update to function name changes.
8579         
8580 2001-03-21  Alexander Larsson  <alexl@redhat.com>
8581
8582         * gtk/gtkimagemenuitem.[c]:
8583         Add gtk_image_menu_item_new_from_stock()
8584
8585 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
8586
8587         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
8588         Fix buglet in meeting.
8589
8590 2001-03-19  Havoc Pennington  <hp@redhat.com>
8591
8592         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
8593         add a bunch of accessor functions. This is because we have
8594         reasonable expectations of extending what fields it contains in
8595         the future.
8596
8597         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
8598         changes
8599
8600         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
8601         GtkIconSource   
8602
8603 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
8604
8605         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
8606         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
8607
8608         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
8609           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
8610           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
8611           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
8612         Change float to double everywhere with the exception of 0<->1.0 alignment
8613         and GtkCurve.
8614
8615 2001-03-19  Tor Lillqvist  <tml@iki.fi>
8616
8617         * gdk/win32/gdkdrawable-win32.c
8618         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
8619         output.
8620
8621         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
8622         gdkwin32.h.
8623
8624 2001-03-18  Tor Lillqvist  <tml@iki.fi>
8625
8626         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
8627         print_event_state, print_event): Use preprocessor macro to make
8628         code more compact. Print also GDK_WINDOW_STATE events.
8629         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
8630         
8631         * gtk/gtk.def
8632         * gtk/makefile.mingw.in: Update.
8633
8634         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
8635         to catch also Cygwin.
8636
8637 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
8638
8639         * gtk/gtkspinbutton.[hc]: added rc-style argument
8640         GtkSpinButton::shadow_type.
8641         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
8642         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
8643         rc-style settings.
8644
8645         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
8646
8647         * gtk/gtkwidget.c: quark cleanups.
8648
8649         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
8650         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
8651         to create_rc_style() (we don't do cloning in standard OO sense).
8652         added per rc style properties.
8653         
8654         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
8655         property values and for caching those. some cleanups.
8656         
8657         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
8658         
8659         * gtk/gtksettings.[hc]: new file for global rc-file properties
8660         (at least currently, should get extended to support X properties
8661         and other communication mechanisms).
8662         
8663         * gtk/gtkwidget.[hc]: added style property support:
8664         (gtk_widget_class_install_style_property_parser): install style
8665         property pspec with parser function for rc-file values other
8666         than LONG, DOUBLE or STRING.
8667         (gtk_widget_class_install_style_property): same as above without
8668         parser (parsers are going to be needed quite infrequently).
8669         (gtk_widget_style_get_property): retrive style property value.
8670         (gtk_widget_style_get_valist): same as above with varargs support,
8671         has NOCOPY semantics.
8672         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
8673
8674 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
8675
8676         * demos/gtk-demo/main.c (row_activated_cb): modified to use
8677         "row_activated" signal.
8678
8679         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
8680         stupidity.  Lets actually pass in the row with this signal...
8681
8682 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
8683
8684         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
8685
8686         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
8687
8688         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
8689         everything into the ::destroy function, and freed a lot more.
8690
8691 2001-03-16  Havoc Pennington  <hp@redhat.com>
8692
8693         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
8694         instead of gint16, to avoid overflow issues, since sizes > 16-bit
8695         are now allowed.
8696
8697 2001-03-16  Havoc Pennington  <hp@redhat.com>
8698
8699         * Applied patch from Nils Barth (bug # 51041) to 
8700         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
8701         in various places.
8702
8703 2001-03-15  Havoc Pennington  <hp@redhat.com>
8704         
8705         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
8706         for properties to set on the tag.
8707
8708         * gtk/testtext.c: fixups to reflect create_tag change
8709         
8710         * gtk/gtktexttag.c (gtk_text_tag_set_property):
8711         background/foreground stipple are objects, not boxed.
8712
8713         * demos/gtk-demo/textview.c: intellihancing
8714
8715 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
8716
8717         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
8718         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
8719
8720 2001-03-16  Alexander Larsson  <alexl@redhat.com>
8721
8722         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
8723         Fix sign error with queued region translations.
8724
8725 2001-03-15  HideToshi Tajima  <tajima@happy>
8726
8727         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
8728         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
8729         * gtk/gtkentry.c (update_im_cursor_location): 
8730         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
8731         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
8732         set_cursor_pos to set_cursor_location in GtkInputContext class
8733
8734 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
8735
8736         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
8737         the location of the cell relative to its area.
8738         * gtk/gtkcell*: modified for above change
8739         * gtk/gtktreeview.c: modified for above change.
8740
8741 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
8742
8743         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
8744          (gtk_tree_view_finalize): actually unref the model.  Thanks to
8745         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
8746
8747 2001-03-14  Havoc Pennington  <hp@redhat.com>
8748
8749         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
8750         
8751         * gtk/gtk.h: remove gtkdata.h
8752
8753         * gtk/Makefile.am: remove gtkdata
8754         
8755         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
8756         not "disconnect" on the adjustments.
8757         
8758         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
8759         GtkData
8760
8761         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
8762         not GtkData
8763
8764         * configure.in: handle case where X render exists, but Pango lacks
8765         Xft support.
8766
8767 2001-03-15 Alexander Larsson  <alexl@redhat.com>
8768
8769         * gtk/gtktoolbar.[ch]:
8770         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
8771         to add stock items to toolbars.
8772
8773         * gtk/Makefile.am:
8774         Remove ../gdk/gdkim.h from gdk_headers.
8775
8776 2001-03-15  Sven Neumann  <sven@gimp.org>
8777
8778         * gdk/gdkim.h: removed
8779         
8780         * gdk/gdkprivate.h
8781         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
8782
8783 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
8784
8785         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
8786         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
8787         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
8788         set_cursor_pos() virtual method
8789
8790         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
8791         (gtk_im_context_xim_set_cursor_pos): add implementation for
8792         set_cursor_pos() method
8793
8794         * gtk/gtkentry.c (recompute_idle_func): set current cursor
8795         position to input methods
8796
8797 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
8798
8799         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
8800         code a lot.
8801
8802         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
8803         g_mem_chunk.
8804         (_gtk_tree_data_list_alloc): use g_mem_chunk.
8805         (_gtk_tree_data_list_node_to_value): Fix to switch on
8806         G_TYPE_FUNDAMENTAL.
8807         (_gtk_tree_data_list_value_to_node): Fix to switch on
8808         G_TYPE_FUNDAMENTAL.
8809         (_gtk_tree_data_list_node_copy): Fix to switch on
8810         G_TYPE_FUNDAMENTAL.
8811
8812 2001-03-12  Havoc Pennington  <hp@redhat.com>
8813
8814         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
8815         to convert to new property API. Also, change default_width and
8816         default_height get_property to return 0 as the flag value for
8817         "unset"; -1 is not a valid value for these fields.
8818
8819 2001-03-12  Havoc Pennington  <hp@redhat.com>
8820
8821         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
8822         enum with registration for icon sizes, instead of strings.
8823
8824         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
8825         gtkwidget.c: Fix to reflect GtkIconSize
8826         
8827 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8828
8829         Make GtkFB compile and link.
8830         
8831         * gdk/linux-fb/gdkdrawable-fb2.c:
8832         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8833         
8834         * gdk/linux-fb/gdkwindow-fb.c:
8835         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8836         Added gdk_window_shape_combine_region.
8837         Added assorted placeholders for unimplemented new GdkWindow API calls.
8838
8839 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8840
8841         * gtk/gtkfilesel.c:
8842         Add more test when converting filenames from/to utf-8.
8843         Don't allow entering text in the filename entry which isn't allowed in
8844         a filename. Just beep instead.
8845
8846 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8847
8848         * gtk/gtkclist.c:
8849         Scroll using gdk_window_scroll(). Don't wait for exposes.
8850         Move the column headers in an order that makes them flash less.
8851
8852 2001-03-10  Hans Breuer  <hans@breuer.org>
8853
8854         * gdk/gdk.def : updated
8855
8856         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
8857         to offseting the clip_mask at the right place
8858
8859         * gdk/win32/gdkwindow-win32.c : don't create background brushes
8860         for all the gdkClasses, especially not for the input_only case.
8861         Otherwise flickering wont be avoidable, because we don't get
8862         WM_ERASEBKGND message for these windows.
8863
8864         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
8865         and fixed massive redraw problems apparently triggered by Alexanders 
8866         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
8867         but it seems to work quite well :-)
8868
8869         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
8870         prototype
8871
8872 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
8873
8874         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
8875         (gtk_list_store_set_cell): Fix a stupid typo.
8876
8877 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
8878
8879         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
8880         select_all not work if you're in SINGLE mode (it doesn't make that
8881         much sense, anyway.)
8882
8883         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8884         handle types more sanely.
8885         (_gtk_tree_data_list_value_to_node): handle types more sanely.
8886         (_gtk_tree_data_list_node_copy): handle types more sanely.
8887
8888         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
8889         GValue better. Converts the type as well.
8890
8891         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
8892         GValue better. Converts the type as well.
8893
8894 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
8895
8896         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
8897         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
8898         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
8899         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
8900
8901         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
8902         gdk_im/gdk_ic.
8903
8904 2001-03-09  Hans Breuer  <hans@breuer.org>
8905
8906         * gdk/gdk.def : updated
8907
8908         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
8909         for their palette
8910
8911         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
8912         removing
8913
8914         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
8915         removing and implemented Havoc's GdkWindow state functions; 
8916         stick/unstick only as no-op, cause I don't know how to emulate 
8917         on win32 ...
8918
8919         * gtk/gtk.def : updated
8920
8921         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
8922
8923         * gtk/gtktypeutils.c : #include <string.h>
8924
8925         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
8926
8927 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
8928
8929         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
8930         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
8931         not a boxed.
8932
8933 2001-03-09  Alexander Larsson  <alexl@redhat.com>
8934
8935         * docs/Changes-2.0.txt:
8936         Document expose event->region change and that gtk_widget_event
8937         doesn't allow passing expose events.
8938
8939         * gdk/gdkevents.h:
8940         Add region to expose event.
8941         
8942         * gdk/gdkevents.c:
8943         Handle event->region in gdk_event_copy() and gdk_event_free().
8944
8945         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
8946         Generate expose_event->region when creating expose events.
8947
8948         * gdk/x11/gdkevents-x11.c:
8949         Generate expose events with regions when translating X events.
8950
8951         * gtk/gtkcontainer.[ch]:
8952         Default expose handler that propagates expose events to NO_WINDOW
8953         children. New function gtk_container_propagate_expose()
8954
8955         * gtk/gtkwidget.[ch]:
8956         Moved gtk_widget_event implementation to gtk_widget_event_internal.
8957         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
8958         expose events. New function gtk_widget_send_expose() to send expose
8959         events. New function gtk_widget_region_intersect() to calculate
8960         window/region intersections.
8961         
8962         * gtk/gtkmain.c (gtk_main_do_event):
8963         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
8964         Use gtk_widget_send_expose() to send expose events.
8965         
8966         * gtk/gtkbin.c:
8967         * gtk/gtkbox.c:
8968         * gtk/gtkfixed.c:
8969         * gtk/gtkimagemenuitem.c:
8970         * gtk/gtklist.c:
8971         * gtk/gtkpacker.c:
8972         * gtk/gtktable.c:
8973         * gtk/gtktree.c:
8974         Remove expose handler, using the default container implementation
8975         instead.
8976         
8977         * gtk/gtkbutton.c:
8978         * gtk/gtkcheckbutton.c:
8979         * gtk/gtkeventbox.c:
8980         * gtk/gtkfixed.c:
8981         * gtk/gtkhandlebox.c:
8982         * gtk/gtklayout.c:
8983         * gtk/gtklistitem.c:
8984         * gtk/gtkmenu.c:
8985         * gtk/gtkmenubar.c:
8986         * gtk/gtkmenuitem.c:
8987         * gtk/gtknotebook.c:
8988         * gtk/gtkoptionmenu.c:
8989         * gtk/gtkpaned.c:
8990         * gtk/gtkscrolledwindow.c:
8991         * gtk/gtktogglebutton.c:
8992         * gtk/gtktoolbar.c:
8993         * gtk/gtktreeitem.c:
8994         * gtk/gtkviewport.c:
8995         Chain expose handler to parent class handler. Use
8996         gtk_container_propagate_expose() to propagate exposes.
8997
8998         * gtk/gtkclist.c (check_exposures):
8999         * gtk/gtktext.c (process_exposes):
9000         Use gtk_widget_send_expose instead of gtk_widget_event.
9001
9002 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
9003
9004         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
9005
9006 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
9007
9008         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
9009         unref the nodes.   Fixes bug #50058.
9010
9011         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
9012         "::ref_iter" to "::ref_node".
9013         (gtk_tree_model_unref_node): change "::unref_iter" to
9014         "::unref_node". Fixes bug #50064.
9015
9016 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
9017
9018         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
9019         support for invisible cells.
9020          (gtk_tree_view_bin_expose): ditto
9021
9022 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
9023
9024         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
9025         on gobjects.
9026
9027         * tests/testtreefocus.c (main): New test file.
9028
9029         * tests/testtreeview.c: update to latest glib changes.
9030
9031         * tests/testtreecolumns.c: update to latest glib changes.
9032
9033 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
9034
9035         * gtk/testgtk.c: re-enabled event watcher emission hooks.
9036
9037 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
9038
9039         * *.c: added accumulator data argument to g_signal_newc()
9040         functions.
9041
9042         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
9043         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
9044         * gtk/treestoretest.c (make_window):
9045         s/g_signal_connect/g_signal_connectc/.
9046
9047         * gtk/gtktextbuffer.c: completed signal arg fixups,
9048         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
9049
9050 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
9051
9052         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
9053         G_CONST_RETURN.
9054
9055         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
9056         ::hierarchy-changed signal when a widget changes
9057         from anchored to unanchored or vice versa.
9058         (anchored means 
9059          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
9060         Use a private flag to keep track of this efficiently.
9061
9062 2001-03-07  Havoc Pennington  <hp@redhat.com>
9063
9064         * gtk/testgtk.c (create_spins): uglify so that size request gets
9065         tested.
9066
9067         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
9068         request on values for upper/lower, completes #6152
9069
9070 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
9071
9072         * Makefile.am: Remove gtk-config-2.0 again.
9073         (Grrrr, pkg-config. And stops make loops.)
9074
9075 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
9076
9077         * gtk/gtksignal.[hc]: removed old emission hook API.
9078         
9079         * docs/Changes-2.0.txt: fixed sections.
9080         
9081         * gtk/gtktextbuffer.c: signal arg fixups.
9082
9083 2001-03-07  Havoc Pennington  <hp@redhat.com>
9084
9085         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
9086
9087         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
9088         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
9089         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
9090         validation and the redraw which is higher priority than the
9091         validation.
9092
9093 2001-03-07  Havoc Pennington  <hp@redhat.com>
9094
9095         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
9096         (gtk_entry_set_property): remove trailer
9097
9098         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
9099         (gtk_entry_get_width_chars): new functions, to set size request to 
9100         a given number of characters
9101
9102         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
9103
9104         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
9105         (gtk_dialog_get_has_separator): new function
9106         (run_delete_handler): fix to not emit "response" signal
9107         because we already did in the delete event handler installed
9108         at dialog creation time.
9109         
9110         * gtk/gtkdialog.h: add a has_separator property,
9111         add GTK_DIALOG_NO_SEPARATOR flag
9112
9113 2001-03-07  Havoc Pennington  <hp@redhat.com>
9114
9115         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
9116         off decorations for a window.
9117
9118         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
9119         changes
9120
9121         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
9122         to get location of PangoLayout inside the label, closes #51198
9123
9124         * gtk/testgtk.c (create_bbox): fix up button box usage
9125
9126         * gtk/testcalendar.c (create_calendar): fix up button box usage
9127
9128         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
9129
9130         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
9131
9132         * gtk/gtkhbbox.h: deprecations
9133
9134         * gtk/gtkvbbox.h: deprecations
9135
9136         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
9137         emulate deprecated gtk_button_box_get_spacing
9138
9139         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
9140         the "set global default" functions
9141         (struct _GtkButtonBox): remove "spacing" field, use the one from 
9142         GtkBox base class
9143
9144         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
9145
9146         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
9147         render the icon, return the missing image icon.
9148
9149         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
9150         image icon if the load fails.   
9151
9152         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
9153         when no image is found; should be the Netscape "missing image"
9154         icon eventually but for now is a random image
9155
9156         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
9157         role for the session manager
9158
9159         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
9160
9161         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
9162         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
9163
9164         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
9165
9166 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
9167
9168         * gtk/*.c: marshaller fixes.
9169         
9170         * gtk/gtkmarshal.list: extreme cleanup.
9171
9172         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
9173         param spec for now.
9174
9175         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
9176         where appliable.
9177
9178         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
9179         special cased autogenerated boxed types from gtktypebuiltins_ids.c
9180         which are not reference counted:
9181         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
9182         PangoFontDescription, GtkTreeIter and GtkTreePath.
9183
9184 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
9185
9186         * gtk/gtktreeselection.h: 
9187         * gtk/gtktreemodel.c:
9188         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
9189         file should be included directly, and gobject/gmarshal.h
9190         as well as gtk/gtkmarshal.h even can't be included directly.
9191
9192         * Makefile.am: grr, install gtk-config-2.0.
9193
9194         * gtk/testgtk.c:
9195         * gtk/simple.c:
9196         * gtk/gtkmenu.c:
9197         * gtk/gtkitemfactory.c: use g_object_connect() instead of
9198         passing "*signal*::*" args to gtk_widget_set().
9199         
9200         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
9201         
9202         * gtk/*.c: removed trailer arg from property setters and getters.
9203         macro fixups.
9204
9205 2001-03-07  Alexander Larsson  <alexl@redhat.com>
9206
9207         * gtk/gtklabel.c (set_markup): Removed warning
9208
9209 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
9210
9211         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
9212         field to allow you to hide cell renderers.
9213
9214         * gtk/gtkcellrenderer.c: Add support for invisible cells.
9215
9216         * gtk/gtktreeview.c: Add support for invisible cells.
9217
9218 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
9219
9220         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
9221         Add "clicked" signal back to columns.
9222
9223         * ChangeLog: remove conflict markers.
9224
9225 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
9226
9227         * gtk/gtkbutton.c: Add animation of activation by, on 
9228         activate, pressing the button, and adding a timeout that 
9229         releases the button after 250ms or on key release and
9230         emits ::clicked. (#51501)
9231
9232         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
9233         action area, we connect to ::clicked instead of ::activate
9234         so the dialog stays up through the animation.
9235
9236 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
9237
9238         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
9239         check the ignore_enter flag for the menu shell that
9240         the item is actually a child of, not for attached
9241         submenus. (#51536)
9242
9243 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
9244
9245         * gtk/gtkmain.c (gtk_propagate_event): Only do special
9246         special key-press grab handling for widgets within
9247         GtkWindows. Otherwise, fall through to normal case.
9248
9249         This prevents key events being sent twice to GtkInvisible
9250         widgets, which can cause all sorts of mischief.
9251
9252 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
9253
9254         * gtk/gtkmain.c (gtk_propagate_event): When a grab
9255         widget is in effect, give the grab widget a first
9256         crack at KEY_PRESS/RELEASE events. (#424)
9257
9258 2001-03-06  James Henstridge  <james@daa.com.au>
9259
9260         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
9261         offset for the window_state_event to point at window_state_event
9262         rather than no_expose_event.
9263
9264 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
9265
9266         * gtk/gtkimmodule.h: fix busted /* comment */
9267
9268 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
9269
9270         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
9271         object properties.
9272
9273 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
9274
9275         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
9276         add object properties.
9277
9278         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
9279         to add object properties.
9280
9281         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
9282         object properties.
9283
9284         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
9285         add object properties.
9286
9287         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
9288         object properties.
9289
9290 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
9291
9292         * gtk/gtktreemodel.c: renamed "child_toggled" to
9293         "has_child_toggled".
9294
9295         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
9296         handle new signal name.
9297
9298         * gtk/gtktreestore.c: Updated to handle new signal name.
9299         * gtk/gtklisttore.c: Updated to handle new signal name.
9300         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
9301
9302 2001-03-05  Alexander Larsson  <alexl@redhat.com>
9303
9304         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
9305         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
9306
9307 2001-03-05  Michael Natterer  <mitch@gimp.org>
9308
9309         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
9310         pixbuf-engine coincidentially also failed to make one of it's
9311         parent_class pointers static, causing overwriting of GtkLabel's
9312         parent_class pointer in pixbuf_style_class_init().
9313         (Will commit the fix to the pixbuf-engine too).
9314
9315 2001-03-05  Alexander Larsson  <alexl@redhat.com>
9316
9317         * gdk/gdkwindow.h:
9318         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
9319         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
9320         gdk_window_set_icon_list for net wmspec functionality.
9321
9322         * gdk/x11/gdkwindow-x11.c:
9323         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
9324         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
9325         gdk_window_set_icon_list.
9326         Added gdk_wmspec_change_state helper function and used it in the code.
9327         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
9328
9329         * gtk/gtkdialog.c (gtk_dialog_init):
9330         Set GDK_WINDOW_TYPE_HINT_DIALOG.
9331
9332         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
9333         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
9334
9335         * gtk/gtkwindow.c:
9336         new function gtk_window_set_type_hint.
9337         On realize, set type hint and modal hint.
9338
9339         * gtk/gtkwindow.h:
9340         Added type_hint field and gtk_window_set_type_hint.
9341
9342 2001-03-05  Alexander Larsson  <alexl@redhat.com>
9343
9344         * gtk/gtklabel.[ch]:
9345         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
9346         New function gtk_label_get_accel_keyval () to get the underline accelerator
9347         of the label. Setting the label pattern overrides other attributes.
9348
9349 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
9350
9351         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
9352         Added missing initializers to gtk_rc_style_init().
9353
9354 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
9355
9356         * gtk/gtktextview.c: fixed bug #51097 about setting 
9357         gtk_text_view_set_border_window_size() if the widget is 
9358         already realized.
9359
9360 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
9361
9362         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
9363
9364         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
9365         comment. Won't do to have duplicated doc comments between
9366         the platform subdirs.
9367
9368 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
9369
9370         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
9371           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
9372
9373         Detectable auto-repeat - make a repeating key generate
9374         press/press/press/release instead of press/release pairs.
9375
9376         If we have Xkb and XkbSetDectableAutoRepeat supports
9377         that, we do it that way. Otherwise, when we get
9378         a release event, we check ahead with XPending to see
9379         if the next key is a KeyPress with the same keycode
9380         and timestamp. (Not 100% reliable, but pretty close.)
9381           
9382 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
9383         
9384         * gtk/gtkmain.c (gtk_propagate_event): Only do special
9385         special key-press grab handling for widgets within
9386         GtkWindows. Otherwise, fall through to normal case.
9387  
9388         This prevents key events being sent twice to GtkInvisible
9389         widgets, which can cause all sorts of mischief.
9390  
9391 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
9392  
9393         * gtk/gtkmain.c (gtk_propagate_event): When a grab
9394         widget is in effect, give the grab widget a first
9395         crack at KEY_PRESS/RELEASE events. (#424)
9396  
9397 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
9398
9399         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
9400         to extend the selection. (Roughly based on patch
9401         from Jay Cox, #50939)
9402
9403         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
9404         to properly handle previous GDK_BUTTON_PRESS. 
9405         (Patch from Jay Cox, #50938)
9406
9407         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
9408         '\0' back along with the deleted text. (#51148)
9409
9410 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
9411
9412         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
9413         the group when extracting it from the X keyboard event.
9414
9415         * modules/input/Makefile.am modules/input/imipa.c: 
9416         Simple module for entering IPA. (Do we need a 
9417         gtk-stupid-input-tricks CVS module?)
9418
9419 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
9420
9421         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
9422         const.
9423
9424         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
9425
9426         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
9427         is no focus widget for the dialog currently, grab the focus as well
9428         as the default.
9429
9430         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
9431         the action area's children to iterate through, not the
9432         dialog's children.
9433
9434 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
9435
9436         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
9437         Add plug-socket tests. (Won't work worth a darn until I commit
9438         the rest of the plug-socket changes, but no reason these
9439         can't go into CVS now.)
9440
9441 2001-03-02  Havoc Pennington  <hp@redhat.com>
9442
9443         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
9444         _gdk_region_get_xrectangles()
9445
9446         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
9447
9448         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
9449
9450         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
9451         function, contributed by Ron Steinke    
9452
9453         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
9454         gdk_net_wm_supports
9455
9456         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
9457         New function, contributed by Ron Steinke
9458
9459         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
9460         used to line up the text in the entry when using the entry for
9461         editable sheet cell hacks
9462
9463         * gtk/testgtk.c (create_entry): test the activate_default setting
9464         on GtkEntry
9465
9466         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
9467         cause the entry to activate the default button for a dialog when 
9468         activated
9469         (gtk_entry_get_activates_default): new function
9470
9471 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
9472
9473         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
9474         Hwang to move call to sync_selection() up a few lines
9475         to before the row list is modified, to fix crash when
9476         removing rows in the undo_selection list.
9477
9478         (Test case provided by Daniel Elstner:
9479
9480         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
9481
9482 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
9483
9484         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
9485         of tree->root_tree in parent_set rather than _map(), 
9486         fixing #50892 in a bit better manner.
9487
9488 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
9489
9490         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
9491
9492 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
9493
9494         * gtk/gtkstyle.c : Remove duplicate fwd decl for
9495         gtk_default_draw_shadow.
9496
9497 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
9498
9499         * gdk/gdkimage.c (gdk_image_new): Remove excess 
9500         warning, make warnings more verbose, treat a error
9501         in shmat as permanent, and don't try again.
9502         (#51163, Ed Randall.)
9503
9504 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
9505
9506         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
9507         delay for the first click before starting to scroll.
9508         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
9509
9510         * gtk/gtktext.c: GtkText should have I-beam cursor. 
9511         (based on gtk-enf-990513-1.patch, Eric Fisher.)
9512
9513 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
9514
9515         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
9516         cleanup to remove some references to unused
9517         ->xoffset, ->yoffset.
9518
9519 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
9520
9521         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
9522         mask. (#51039, fix from Martin Maierhofer)
9523
9524 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
9525
9526         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
9527         for unshifted + and shifted = for non-us keyboards.
9528         Make <Control>+ and <Control>- work as well as 
9529         <Control>KP_Plus, <Control>KP_Minus for recursive
9530         open/close.  (#2682, René Seindal)
9531
9532 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
9533
9534         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
9535         the active menu item before deactivating the menu,
9536         so gtk_menu_popdown doesn't change the history. (#50964)
9537         
9538 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
9539
9540         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
9541         draw lines with text_gc rather than black_gc.
9542         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
9543
9544 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
9545
9546         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
9547         Move handling of buttons fully in gtktreeviewcolumn.  This code is
9548         less interrelated then it was, but it still requires the
9549         GtkTreeView to map it.
9550
9551         * test/testtreecolumn.c: Now I can add a column to one view,
9552         remove it, add it to the another view, remove it, then re-add it
9553         to the first.  Nifty.
9554
9555 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
9556
9557         * docs/tutorial/gtk-tut.sgml: Minor corrections
9558
9559 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
9560
9561         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
9562         GtkRowReference.
9563
9564 2001-02-28  Havoc Pennington  <hp@redhat.com>
9565
9566         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
9567         draw_default
9568         (gtk_widget_draw_focus): remove this function; we could instead
9569         make it just gtk_widget_draw(), but in most cases I think the
9570         result would be broken user code, so think it's better to have
9571         that code not compile and get fixed
9572         (gtk_widget_draw_default): ditto
9573
9574         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
9575         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
9576         
9577         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
9578         widgets lose/get the default, instead of calling draw_default
9579         
9580         * docs/Changes-2.0.txt: note about all this
9581
9582         Then fixed every widget in GTK, I won't list all the filenames.
9583
9584 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
9585
9586         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
9587         _gtk_tree_row_reference_deleted.
9588         (inserted_callback): Proxy out to
9589         _gtk_tree_row_reference_inserted.
9590         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
9591         get around signal emission ordering problem.
9592
9593         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
9594         fix to work with SINGLE 
9595         (_gtk_tree_selection_internal_select_node): Major sanitization on
9596         selections.  SINGLE now seems to work.
9597
9598         * tests/Makefile.am: add testtreecolumn.c:
9599
9600         * tests/testtreecolumn.c: New test.  Mostly points out selection
9601         bugs currently, but will test columns later.
9602
9603         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
9604         selection bug.  I hate touching this code -- it's scary.
9605
9606 2001-02-26  Havoc Pennington  <hp@redhat.com>
9607
9608         * gtk/testgtk.c: test the window state stuff
9609
9610         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
9611         window come to the user's attention as if it were just created
9612         (gtk_window_iconify): new function
9613         (gtk_window_deiconify): new function
9614         (gtk_window_stick): new function
9615         (gtk_window_unstick): new function
9616         (gtk_window_maximize): new function
9617         (gtk_window_unmaximize): new function
9618
9619         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
9620
9621         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
9622
9623         * gdk/x11/gdkevents-x11.c: create window state events when
9624         appropriate
9625         (gdk_wmspec_supported): new function
9626
9627         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
9628         iconification before showing the window
9629         (gdk_window_deiconify): new function
9630         (gdk_window_stick): new function
9631         (gdk_window_unstick): new function
9632         (gdk_window_maximize): new function
9633         (gdk_window_unmaximize): new function
9634
9635         * gdk/gdkwindow.c: store the window state in the window; 
9636         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
9637         window->mapped.
9638         (gdk_window_get_state): return the current window state
9639
9640         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
9641         (gdk_event_get_state): handle GDK_WINDOW_STATE
9642         (gdk_synthesize_window_state): function to create the window state
9643         events
9644
9645         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
9646         event, for changes to "window state" such as maximized, sticky, 
9647         etc.
9648         
9649         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
9650         focuses a window
9651
9652         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
9653         finds out if we support a given WM spec hint
9654
9655 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
9656
9657         * docs/faq/gtk-faq.sgml: New question re memory leaks.
9658
9659 2001-02-25  Hans Breuer  <hans@breuer.org>
9660
9661         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
9662         cause we want to loose those prototypes only in the latter case
9663
9664         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
9665         GdkPixmapImplWin32 because it itsn't derived from it. Use the
9666         impl member variable instead
9667
9668         * gtk/gtk.def : updated
9669
9670         * gtk/gtklist.c : 
9671         * gtk/gtkmenus.c : include <string.h> for memset ()
9672
9673         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
9674         for everthing built here, but for gtk-x.x.dll only. This solves
9675         problem of indifferent gtk type definitions
9676
9677 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
9678
9679         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
9680
9681 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
9682
9683         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
9684         column that is exposed.
9685
9686         (_gtk_tree_view_update_size): Changed name from set_size, and
9687         changed function to do more work, and not force people calling it
9688         to figure out the size.  Simplifies a lot of code elsewhere.
9689
9690 2001-02-23  Alexander Larsson  <alexl@redhat.com>
9691
9692         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
9693         return solid masks for xpms that have no transparent color.
9694         This makes the ..._create_from_xpm... API backwards
9695         compatible.
9696
9697 2001-02-23  Tor Lillqvist  <tml@iki.fi>
9698
9699         * README.win32: Update. Mention the gtk-1-3-win32-production
9700         branch.
9701
9702         * gdk/win32/bdfcursor.c: New file. A program that generates
9703         xcursors.h. Thanks to Stefan Ondrejicka.
9704
9705         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
9706         compact format.
9707
9708         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
9709
9710         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
9711         function, uses xcursors.h.
9712         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
9713         cursor from inline data instead of using LoadCursor() to generate
9714         it from a resource.
9715
9716         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
9717         event, must check the Windows message for mouse button state, as
9718         the GDK event state might not have been built if it is
9719         undelivered. Remove one goto.
9720
9721         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
9722         SetCursor() if the current cursor as returned by GetCursor() is
9723         the window's previous cursor. The ChildWindowFromPoint() test
9724         apparently didn't work correctly.
9725
9726         * gdk/win32/rc/*.cur: Remove.
9727
9728         * gdk/win32/rc/gdk.rc.in: Remove cursors.
9729
9730         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
9731
9732         * gtk/makefile.{mingw,msc}.in: Updates.
9733
9734 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
9735
9736         * gtk/gtktreemodel.h: add functions for signal emission.
9737
9738         * gtk/gtktreestore.c: move to use above functions instead of
9739         g_signal_emit.
9740
9741         * gtk/gtkliststore.c: ditto
9742
9743 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
9744
9745         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
9746         GObject instead of GtkObject.
9747
9748         * gtk/gtkliststore.c: ditto.
9749
9750         * gtk/gtktreemodelsort.c: ditto.
9751
9752         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
9753         GtkTreeModelIface, instead of in each model.
9754
9755 2001-02-21  Havoc Pennington  <hp@redhat.com>
9756
9757         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
9758         unbreak this function
9759
9760         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
9761         properties
9762
9763         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
9764         properties
9765
9766         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
9767         properties
9768
9769         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
9770         mean unset the max length
9771
9772 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
9773
9774         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
9775         Changed name to be set_cell_data_func to make it clear what
9776         the functino does.  Close bug #51069.
9777
9778 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
9779
9780         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
9781         have memory actually freed.  Keeps box running longer.
9782
9783 2001-02-21  Alexander Larsson  <alexl@redhat.com>
9784         
9785         * gtk/gtkseparatormenuitem.[ch]:
9786         Added new menu separator item. The drawing and size handling
9787         is still done in GtkMenuItem, but the API is a bit more sane.
9788         
9789         * gtk/Makefile.am:
9790         Add gtkseparatormenuitem.[ch].
9791
9792         * gtk/gtk.h:
9793         Add gtkseparatormenuitem.h.
9794         
9795         * gtk/gtkentry.c:
9796         * gtk/gtkmenufactory.c:
9797         * gtk/gtktextview.c:
9798         Use the new API for menu separators.
9799         
9800         * demos/gtk-demo/menus.c (create_menu):
9801         Add some GtkSeparatorMenuItem demo code.
9802
9803 2001-02-20  Havoc Pennington  <hp@redhat.com>
9804
9805         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
9806         Lee Mallabone
9807
9808         * gtk/gtkarrow.c: Convert to new property API, patch from 
9809         Lee Mallabone
9810
9811 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
9812
9813         * tests/testtreeview.c (toggled_callback): fix to reflect change
9814         in GtkTreeModelStore.
9815
9816 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
9817
9818         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
9819         function to create an icon set from a pixbuf.
9820
9821 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9822
9823         * gtk/gtkcellrenderertext.[ch]:
9824         Add a "markup" property.
9825
9826         * gtk/treestoretest.c:
9827         Use the markup property, remove some leftover stuff from
9828         GtkTreeModelMapping.
9829
9830 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9831
9832         * gtk/gtklabel.c (gtk_label_set_selectable):
9833         Queue a redraw if the selectable setting was changed.
9834
9835 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9836
9837         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
9838         Actually copy the whole gc, not just the public parts.
9839         
9840         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
9841         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
9842         labels.
9843
9844 2001-02-19  Havoc Pennington  <hp@pobox.com>
9845
9846         * gdk/gdkwindow.c: docs
9847
9848         * gdk/gdkrgb.c: docs
9849
9850         * gdk/gdkregion-generic.c: docs
9851
9852         * gdk/gdkgc.c (gdk_gc_set_values): docs
9853
9854         * gdk/gdkdraw.c: docs
9855
9856         * gdk/gdkdrawable.h: deprecate drawable get/set data
9857
9858 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
9859
9860         * demos/gtk-demo/dialog.c: Add simple new demo.
9861
9862 2001-02-19  Havoc Pennington  <hp@redhat.com>
9863
9864         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
9865         insert_child_anchor signal, bug #50245
9866
9867         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
9868         from create_child_anchor, so the anchor is passed in
9869
9870         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
9871         (_gtk_widget_segment_new): have the child anchor object passed in, 
9872         instead of creating it.
9873
9874         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
9875         to gtk_text_buffer_get_modified
9876
9877 2001-02-19  Havoc Pennington  <hp@redhat.com>
9878
9879         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
9880         changed GLib without fixing GTK
9881
9882         * gtk/gtkrange.h: Rename all the stupid implementation detail 
9883         functions to have an underscore in front. Most of them should 
9884         probably just go away, but for starters don't export them.
9885         Bug #50482
9886
9887 2001-02-19  Havoc Pennington  <hp@redhat.com>
9888
9889         * gdk/gdkcolor.h: test was backward, so deprecated functions were
9890         excluded by default
9891
9892         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
9893         clean up the old code a bit
9894
9895         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
9896         inconsistent state
9897
9898         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
9899         draw inconsistent state
9900
9901         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
9902         (create_menu): add inconsistent test
9903
9904         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
9905         new function
9906         (gtk_check_menu_item_get_inconsistent): new function
9907         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
9908         state (using etched in for now)
9909
9910         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
9911         draw inconsistent state
9912
9913         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
9914         function, used when the user has selected a range of stuff in
9915         different states
9916         (gtk_toggle_button_get_inconsistent): accessor for that
9917         (gtk_toggle_button_paint): draw inconsistent state (etched in?
9918         don't know what else to do)
9919
9920 2001-02-19  Hans Breuer <hans@breuer.org>
9921
9922         * gtk/gtk.def : updated exported symbols
9923
9924         * gtk/makefile.msc.in : updated
9925
9926         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
9927         a colormap, when invoked from testgtk::entry. I'm not sure where
9928         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
9929         avoids immediate crashing ...
9930
9931         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
9932         any objections ?
9933
9934         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
9935         0 parameter. At least msvc doesn't like macros with var args. 
9936         I simply removed the extra 0, was it a feature or a typo ?
9937
9938         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
9939         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
9940         because the value assignment to the internal struct wasn't working.
9941         I'm not absolutely sure. The problem could have been resolved by
9942         changing the "func" declartion in the struct, but was the pointer
9943         to the function pointer intended ?
9944
9945         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
9946
9947         * gdk/gdk.def : updated exported symbols
9948
9949         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
9950         only use SetDIBitsToDevice if there is a palette at the drawable
9951         and the image is GDK_VISUAL_PSEUDO_COLOR
9952
9953         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
9954
9955         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
9956
9957         * gdk/*/makefile.msc : updated
9958
9959 2001-02-19  Havoc Pennington  <hp@redhat.com>
9960
9961         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
9962         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
9963
9964         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
9965         (gdk_key_repeat_restore): nuke
9966
9967         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
9968         (gdk_init_check): no atexit func
9969
9970         * gdk/gdkrgb.h: mark some stuff deprecated
9971
9972         * gdk/gdkcolor.h: mark some stuff deprecated
9973         
9974         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
9975
9976         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
9977
9978 2001-02-16  Havoc Pennington  <hp@redhat.com>
9979
9980         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
9981         scroll steps.
9982
9983         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
9984         steps, and add Ctrl-arrow shortcuts for paging visually as with
9985         HScale, since Page Up and Page Down move logically.
9986
9987         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
9988         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
9989         
9990         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
9991         steps
9992         (gtk_range_scroll): handle the visual steps
9993
9994         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
9995         scroll steps
9996
9997         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
9998         steps, not the logical ones.
9999
10000         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
10001         (scroll_vertical): handle up/down steps
10002
10003 2001-02-19 Alexander Larsson  <alexl@redhat.com>
10004
10005         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
10006         Copy data and free data with free().
10007
10008         * gdk-pixbuf/gdk-pixbuf.c:
10009         * gdk-pixbuf/io-jpeg.c:
10010         * gdk-pixbuf/io-png.c:
10011         Use g_try_malloc/g_free instead malloc/free.
10012         
10013         * gdk-pixbuf/test-gdk-pixbuf.c:
10014         Must... initialize... gobject...
10015         
10016         * gdk-pixbuf/pixops/timescale.c:
10017         * gtk/gtkcalendar.c:
10018         Use g_malloc instead of malloc.
10019         
10020 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
10021
10022         * gtk/testgtkrc:
10023         Comment out property assignments, these don't work yet.
10024
10025 2001-02-17  Havoc Pennington  <hp@pobox.com>
10026
10027         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
10028         bit.
10029
10030 2001-02-17  Havoc Pennington  <hp@pobox.com>
10031
10032         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
10033         shadowed variables that had broken size request in some cases,
10034         leading to bogus tooltips (#50996)
10035
10036 2001-02-06  Jon K Hellan  <hellan@acm.org>
10037
10038         Implement fast browsing of tooltips, bug #50619
10039         
10040         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
10041         and last_popdown
10042         
10043         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
10044         use_sticky_delay and last_popdown.
10045         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
10046         time of popdown.
10047         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
10048         is NULL.
10049         (gtk_tooltips_recently_shown): New static function.  Return true
10050         if < sticky_delay has elapsed since last popdown.
10051         (gtk_tooltips_event_handler): Display window after sticky_delay
10052         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
10053         since last popdown.
10054         
10055 2001-02-17  Havoc Pennington  <hp@pobox.com>
10056
10057         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
10058         instead of (). #6394
10059
10060         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
10061         G_CONST_RETURN, make it return by reference, #50473
10062         
10063 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
10064
10065         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
10066         generated ENTER_NOTIFY event with 0, otherwise not explicitely
10067         setup fields contain garbage (e.g. subwindow, breaking
10068         gdk_drawable_ref() upon event copy).
10069         (gtk_menu_stop_navigating_submenu_cb): same here.
10070
10071         * gtk/gtklist.c (gtk_list_vertical_timeout): 
10072         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
10073         * gtk/gtkclist.c (vertical_timeout): 
10074         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
10075         default-zero-intialization for unions to memset(,0,), as unions are
10076         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
10077         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
10078
10079         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
10080         g_closure_sink() warning.
10081
10082         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
10083         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
10084         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
10085         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
10086         
10087 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
10088
10089         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
10090         gtk_*_store_get, and moved to GtkTreeModel.
10091
10092         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
10093
10094         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
10095
10096         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
10097
10098         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
10099         set the func.
10100
10101         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
10102         freeze/thaw notify between setting all the properties for a cell.
10103
10104         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
10105
10106 2001-02-15  Havoc Pennington  <hp@redhat.com>
10107
10108         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
10109         the X coordinates so they're with respect to the line, rather than 
10110         with respect to the layout.
10111
10112         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
10113         Mallabone
10114
10115         * gtk/testgtk.c (create_range_controls): add vscale tests, 
10116         and inverted test
10117
10118         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
10119         #50806
10120
10121         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
10122
10123         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
10124         gtk_text_iter_is_end
10125
10126         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
10127         rename gtk_text_buffer_get_end_iter
10128
10129         * gtk/testgtk.c (create_labels): Add test for selectable
10130
10131         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
10132         the selection stuff. This code is kind of broken since it doesn't 
10133         use the theme engine.
10134
10135         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
10136         fix infinite loop and y offset problem
10137         (gdk_draw_layout_line_with_colors): fix foreground color handling
10138
10139         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
10140         that makes the label selectable.
10141         
10142         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
10143         layout when the style is set, since fonts etc. could have changed.      
10144
10145 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
10146
10147         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
10148
10149         * gtk/gtktreemodelsimple.[ch]: removed.
10150
10151 2001-02-16  Alexander Larsson  <alexl@redhat.com>
10152
10153         * gtk/gtktreemodelmapping.[ch]:
10154         New files. Implement GtkTreeModelMapping.
10155         
10156         * gtk/Makefile.am:
10157         Add gtktreemodelmapping.[ch].
10158         
10159         * gtk/gtk.h:
10160         Add gtktreemodelmapping.h
10161
10162         * gtk/treestoretest.c:
10163         Test the GtkTreeModelMapping
10164
10165 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
10166
10167         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
10168         have a demo, we might as well pass in real values.  Thanks to
10169         clahey for pointing this out.
10170
10171 2001-02-14  Havoc Pennington  <hp@pobox.com>
10172
10173         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
10174         "static" to a private function
10175         (gtk_image_menu_item_class_init): remove destroy handler,
10176         add "image" object property
10177
10178 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
10179
10180         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
10181         Add a shortcut if the window and the current clip_region doesn't
10182         overlap. This is needed when there are a lot of windows in a
10183         window. The layout test in testgtk is a good test.
10184
10185         * gdk/linux-fb/gdkwindow-fb.c:
10186         Whitespace fix.
10187
10188 2001-02-13  Sven Neumann  <sven@convergence.de>
10189
10190         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
10191
10192 2001-02-13  Alexander Larsson  <alexl@redhat.com>
10193
10194         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
10195         Don't reference last_cursor if it is null. Fixes crash when rotating
10196         the screen before having moved the mouse.
10197
10198         * gdk/linux-fb/gdkcc-fb.c: Zapp!
10199
10200         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
10201
10202         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
10203         when using 90 or 270 degrees rotation.
10204
10205 2001-02-12  Havoc Pennington  <hp@pobox.com>
10206
10207         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
10208         it always set the foreground, even if we were only using
10209         a stipple.
10210         (gdk_draw_layout_line_with_colors): new function, allow
10211         override colors
10212         (gdk_draw_layout_with_colors): new function, allow override
10213         colors
10214         (gdk_pango_layout_line_get_clip_region): function to get the clip
10215         region for a logical text range
10216         (gdk_pango_layout_get_clip_region): get the clip region for a
10217         logical text range
10218
10219         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
10220         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
10221         the right number of arguments.
10222
10223         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
10224         enhance the function to check that node data corresponds to a 
10225         view still belonging to the tree.
10226
10227         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
10228         GtkTreePath
10229         (gtk_tree_view_inserted): ditto
10230         (gtk_tree_view_child_toggled): ditto
10231
10232         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
10233         simplify this code.
10234
10235         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
10236         a PangoAttrList
10237
10238         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
10239
10240         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
10241
10242         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
10243         size in the size request 
10244         (gtk_menu_bar_size_allocate): consider toggle size here
10245
10246         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
10247         that displays a widget in the toggle slot
10248
10249         * gtk/testgtk.c: test GtkImageMenuItem
10250
10251         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
10252         
10253         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
10254         request and allocation
10255
10256         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
10257
10258         * gtk/gtkcheckmenuitem.c
10259         (gtk_check_menu_item_toggle_size_request): ditto
10260         
10261 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
10262
10263         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
10264         reference.
10265
10266         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
10267         and refuse to initialize GTK+ if they fail.
10268
10269 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
10270
10271         * configure.in: Add check for gtk-doc version.
10272
10273 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
10274
10275         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
10276         where the xpad/ypad was only being used on one side!
10277
10278 2001-02-11  Tor Lillqvist  <tml@iki.fi>
10279
10280         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
10281         function, copied from X11 version.
10282
10283         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
10284         DestroyCursor failures. The reason for the problem (despite the
10285         inconsistent messages from GetLastError()) was that
10286         DestroyCursor() cannot be called while a cursor is set in a
10287         window. Set the new cursor first and then destroy the old one.
10288         Thanks to jpe@archaeopteryx.com.
10289
10290         * gdk/win32/gdkcc-win32.c: Remove.
10291
10292         * gdk/win32/Makefile.am: Remove from here, too.
10293         
10294         * gdk/gdk.def
10295         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
10296
10297         * gtk/gtk.def
10298         * gtk/makefile.mingw.in: Updates.
10299
10300 2001-02-08  Havoc Pennington  <hp@redhat.com>
10301
10302         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
10303         add a widget to a bin that already has a child.
10304
10305         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
10306
10307         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
10308         
10309         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
10310
10311         * gdk/gdk.h: remove gdkcc.h
10312
10313         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
10314
10315         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
10316         GdkPixbuf, since the previous implementation was GdkColorContext
10317         dependent.
10318
10319         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
10320         
10321 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
10322
10323         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
10324         a sane value!
10325
10326 2001-02-08  Havoc Pennington  <hp@redhat.com>
10327
10328         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
10329         lighten them.
10330
10331 2001-02-08  Havoc Pennington  <hp@redhat.com>
10332
10333         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
10334         validation idle
10335
10336         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
10337         cell renderer
10338
10339         * demos/pixbuf-demo.c (timeout): remove deprecated
10340         gtk_widget_draw
10341
10342         * demos/testpixbuf-save.c (main): remove deprecated
10343         gtk_drawing_area_size
10344
10345         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
10346         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
10347         at the start of the allocation.
10348         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
10349         unsetup or NULL model.
10350
10351         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
10352         even/odd/sorted cells in the tree view.
10353
10354         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
10355         bugfixes
10356
10357         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
10358         backgrounds with draw_flat_box using different detail for even/odd
10359         rows.
10360
10361         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
10362         row, so we can draw the alternating colors thing
10363
10364         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
10365         property from a synonym property, notify for the synonym.
10366         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
10367         (gtk_text_tag_get_property): Always return the font, even if
10368         all its fields aren't set
10369
10370         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
10371         store the attr list; it leaves us with no way to change attributes
10372         in _render according to the render flags, and no way to implement
10373         get_property. Instead store all the specific text attributes. 
10374         Separate whether an attribute is enabled from its value. Sync all
10375         properties with GtkTextTag, make them all consistent, etc.
10376
10377         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
10378         renderers can highlight the sort row/column     
10379
10380         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
10381         accessor functions to get values; this has the side effect of
10382         showing up which accessor functions were missing. Added those.
10383
10384         * gtk/gtktreeviewcolumn.h: Replace set_justification with
10385         set_alignment, to be consistent with GtkLabel, GtkMisc
10386
10387         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
10388         arrow.
10389
10390         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
10391
10392         * gtk/gtktreesortable.h: updates in here
10393
10394 2001-02-07  Sven Neumann  <sven@convergence.de>
10395
10396         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
10397         pango dimensions after painting the background. We used to draw
10398         gigantic flat boxes here.
10399
10400 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
10401
10402         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
10403         error introduced with earlier commit) (pointed out by
10404         Ollie Lho)
10405
10406 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
10407
10408         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
10409         which are no longer necessary.
10410
10411 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
10412
10413         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
10414
10415 2001-02-04  Tor Lillqvist  <tml@iki.fi>
10416
10417         * gdk/gdk.def
10418         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
10419         Provide dummy implementations.
10420
10421 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
10422
10423         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
10424
10425         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
10426         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
10427         deprecated this function.
10428
10429         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
10430         argument.
10431
10432 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
10433
10434         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
10435
10436 2001-02-03  Havoc Pennington  <hp@pobox.com>
10437
10438         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
10439         Mikael Hermansson with patch from Mikael (if there was a toggle
10440         start one after the first character in the range, this function
10441         was broken). Bug #50380
10442
10443 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
10444
10445         * configure.in: Remove confusing comment about X11.
10446
10447 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
10448
10449         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
10450         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
10451         
10452 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
10453
10454         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
10455         it breaks things on BSD. If you want to compile GTK+ with
10456         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
10457         when configuring, since GTK+ simply can't be "pure ANSI" 
10458         in the header files it uses. (#8170, Greg Hudson)
10459
10460 2001-02-02  Havoc Pennington  <hp@redhat.com>
10461
10462         * gtk/gtkwindow.c: docs
10463
10464         * gtk/gtkwidget.c: docs
10465         (gtk_widget_set_colormap): add a reference to the colormap
10466         (gtk_widget_get_default_colormap): add a reference to the colormap
10467
10468         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
10469
10470         * gtk/gtktextiter.c: docs
10471
10472         * gtk/gtkmain.c (gtk_propagate_event): docs
10473
10474         * gtk/gtkpaned.c (gtk_paned_get_position): docs
10475         (gtk_paned_set_position): docs
10476
10477         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
10478         sort interface, no implementation yet.
10479
10480         * demos/testpixbuf.c (new_testrgb_window): replace
10481         gtk_drawing_area_size() with gtk_widget_set_usize()
10482
10483         * demos/testpixbuf-drawable.c (main): ditto
10484         
10485         * gtk/testgtk.c: remove use of GtkStatusbarMsg
10486
10487         * gtk/gtktextbuffer.c: docs
10488
10489         * gtk/gtkstock.c: docs
10490
10491         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
10492
10493         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
10494
10495         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
10496         
10497         * gtk/gtkimage.c: add some docs in here
10498         (gtk_image_size_request): change name of
10499         gtk_widget_render_stock_icon
10500         (gtk_image_get_icon_set): don't dup returned string
10501         (gtk_image_get_icon_set): don't dup returned string
10502
10503         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
10504         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
10505         and gtkiconfactory.h functions
10506
10507         * gtk/gtkiconfactory.c: add some docs in here
10508
10509         * gtk/gtkmain.c (gtk_get_default_language): document
10510         (gtk_get_current_event): document
10511         (gtk_get_current_event_state): document
10512         (gtk_get_event_widget): document
10513
10514         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
10515
10516         * gtk/gtkcontainer.c: Add some documentation
10517         (gtk_container_add): give a more explanatory warning on adding an
10518         already-parented widget, this is kind of a FAQ and also a common
10519         typo that's easier to debug with a nice warning 
10520
10521         * gtk/gtkcellrenderertoggle.c
10522         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
10523         adding this, it's useless
10524         (gtk_cell_renderer_toggle_set_active): remove
10525         (gtk_cell_renderer_toggle_get_radio): add
10526
10527         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
10528         the NULL cell renderer, that doesn't make any sense to me. 
10529
10530         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
10531         demo code should never use deprecated features.
10532
10533         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
10534         code should never use deprecated features.
10535
10536         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
10537         gtk_widget_queue_clear_area deprecated
10538
10539         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
10540         deprecated
10541
10542         * gtk/gtklabel.h: mark gtk_label_get() deprecated
10543
10544         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
10545         a GdkImage deprecated, replaced by new consistently-named
10546         functions       
10547
10548         * gtk/gtkmain.h: Mark gtk_exit() deprecated
10549
10550         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
10551
10552         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
10553         deprecated
10554
10555         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
10556         so it won't appear in docs and confuse people.
10557
10558         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
10559
10560         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
10561         macros deprecated. (can't mark the type itself deprecated, since
10562         GtkProgressBar is not deprecated and we need the type decl to use
10563         GtkProgressBar)
10564
10565         * gtk/gtkpixmap.h: Mark deprecated
10566
10567         * gtk/gtkoldeditable.h: Mark deprecated
10568
10569         * gtk/gtklist.h: Mark deprecated
10570
10571         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
10572         for anything anymore.
10573
10574         * gtk/gtkctree.h: Mark deprecated
10575
10576         * gtk/gtkclist.h: Mark deprecated
10577
10578         * gtk/gtkpreview.h: Mark deprecated
10579
10580         * gtk/gtkpacker.h: Mark deprecated
10581
10582         * gtk/gtktipsquery.h: Mark deprecated
10583
10584         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
10585
10586         * gtk/gtkvruler.h: Add comment that it will move out of GTK
10587
10588         * gtk/gtkhruler.h: Add comment that it will move out of GTK
10589
10590         * gtk/gtkruler.h: Add comment that it will move out of GTK
10591
10592         * gtk/gtkgamma.h: Add comment that it will move out of GTK
10593
10594         * gtk/gtkcurve.h: Add comment that it will move out of GTK
10595
10596 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
10597
10598         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
10599         gdk_colormap_sync private since it was never exported
10600         in a header file.
10601
10602         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
10603         colormap->colors[] for StaticGray, StaticColor colormaps.
10604
10605         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
10606         was being used as if it was image->bits_per_pixel.
10607
10608         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
10609         for the image in the GdkImage structure since it isn't
10610         reconstructable, and we need it to handle packed types
10611
10612         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
10613         the assumption that on Win32 image->bits_per_pixel == image->depth,
10614         always.
10615
10616         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
10617
10618         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
10619         warning message if no converter can be found. 
10620
10621 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
10622
10623         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
10624         chars to isupper() / tolower(). (#567)
10625
10626         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
10627         to clear up 64-bit warnings. (#567)
10628
10629 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
10630
10631         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
10632         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
10633
10634         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
10635         since some people set $(libdir) separately. (#1290, David Kaelbling)
10636
10637 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
10638
10639         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
10640         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
10641         MAXPATHLEN, but the code here depends on a fixed value.)
10642         (#4524)
10643
10644 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
10645
10646         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
10647         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
10648
10649 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
10650
10651         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
10652         viewable there is no way that moving the node will cause the 
10653         focus row to become not viewable, so omit check on the visibility
10654         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
10655
10656 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
10657
10658         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
10659         selection before inserting new text.
10660
10661 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
10662
10663         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
10664         Make the sensitivity of the reparented child track that of
10665         the original parent menu item. (#34218, David Hodson)
10666
10667         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
10668         the case where the current item is destroyed properly.
10669
10670         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
10671         some edge cases with child-less menuitems.
10672         
10673 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
10674
10675         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
10676         key pop down window. (#12074, Jon K Hellan)
10677
10678 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
10679
10680         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
10681         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
10682         The solution here isn't perfect - you get an extraneous
10683         emission of "toggle", which could conceivably confuse an app,
10684         but better than the current situation. LXR search seems to
10685         indicate that no apps in GNOME CVS connect to "toggle".
10686
10687 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
10688
10689         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
10690         gtk_public_h_sources to directly here to avoid warning when
10691         building srcdir != builddir. (#9656)
10692
10693 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
10694
10695         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
10696         handlers in gtkrange.c return the proper values (TRUE == handled)
10697         (#10316).
10698
10699         This is just the tip of the iceberg, but gtkrange.c is the
10700         most common place where the propagation is problematical,
10701         and also a place where it is almost certainly safe to change
10702         this in the stable branch.
10703
10704         (You don't want right click popups on a range control or anything...)
10705
10706 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
10707
10708         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
10709         area on focus out, even if a background pixmap isn't set.
10710         (#13941)
10711         
10712 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
10713
10714         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
10715         to deal with setting the shape properly when scrolling arrows are
10716         turned on, but not visible because there is sufficient space.
10717         (#13432)
10718
10719 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
10720
10721         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
10722         items with submenus, destroy the item along with the submenu.
10723         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
10724         properly.
10725
10726         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
10727         later.
10728
10729 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
10730
10731         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
10732         the focus widget sometimes wasn't drawn with the default if there
10733         was no default widget.
10734
10735         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
10736         unreference pixmaps. 
10737
10738         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
10739         for some extra safety.
10740
10741 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
10742
10743         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
10744         the text of a cell to the old pointer value better, by
10745         copying the new text before freeing the old text. Some code
10746         cleanup. (#8079, Karl Nelson)
10747
10748 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
10749
10750         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
10751         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
10752
10753 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
10754
10755         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
10756         item from a menu, check to see if it matches 
10757         menu->old_active_menu_item, and if so, unref and clear
10758         old_active_menu_item (Patch from Pavel Cisler)
10759
10760         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
10761         menu_shell->active_menu_item, if it is the child being
10762         removed. (Patch based on that of Gene Ragan, #50337)
10763
10764 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
10765
10766         * gdk/linux-fb/gdkselection-fb.c: 
10767         * gdk/linux-fb/gdkcolor-fb.c: 
10768         * gdk/linux-fb/gdkdrawable-fb2.c: 
10769         * gdk/linux-fb/gdkfont-fb.c: 
10770         * gdk/linux-fb/gdkim-fb.c: 
10771         * gdk/linux-fb/gdkinput.c: 
10772         * gdk/linux-fb/gdkkeyboard-fb.c: 
10773         * gdk/linux-fb/gdkmain-fb.c: 
10774         * gdk/linux-fb/gdkrender-fb.c: 
10775         A bunch of whitespace cleanup.
10776         
10777 2001-01-30  Havoc Pennington  <hp@pobox.com>
10778
10779         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
10780         #ifdef GTK_ENABLE_BROKEN.
10781
10782         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
10783         GTK_ENABLE_BROKEN just before including the broken headers.
10784         
10785         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
10786         deprecated types registered.
10787
10788         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
10789         we have to test the broken stuff.
10790
10791         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
10792         
10793 2001-01-30  Havoc Pennington  <hp@redhat.com>
10794
10795         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
10796         here where prev pointer was set to the wrong thing
10797
10798         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
10799         (gtk_tree_path_is_descendant): new function
10800
10801         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
10802         cached length
10803         (gtk_list_store_get_iter): don't modify iter if we can't get the
10804         path.
10805
10806         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
10807         
10808         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
10809         GtkTreeDragDest
10810
10811         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
10812         was causing segfault
10813
10814         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
10815         pointer to NULL
10816
10817         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
10818
10819         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
10820         on returning FALSE
10821         (gtk_list_store_iter_children): ditto
10822         (gtk_list_store_iter_nth_child): ditto
10823         (gtk_list_store_iter_nth_child): ditto
10824         (gtk_list_store_iter_parent): ditto
10825
10826         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
10827         on iter->user_data != NULL instead of silently accepting it.
10828         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
10829         we are returning TRUE.
10830         (gtk_tree_store_iter_children): ditto
10831         (gtk_tree_store_iter_nth_child): ditto
10832         (gtk_tree_store_iter_parent): ditto
10833         (gtk_tree_store_insert): remove handling of parent->user_data ==
10834         NULL, replace with parent == NULL       
10835
10836         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
10837         and a comment explaining things
10838
10839         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
10840         interface support to GtkTreeStore.
10841
10842         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
10843         FALSE if no prev, fix
10844
10845         * gtk/gtktreeview.c (set_source_row): use a row reference
10846         (set_dest_row): use a row reference
10847
10848 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
10849
10850         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
10851         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
10852         (gtk_tree_selection_select_iter): The same as above.
10853
10854 2001-01-26  Havoc Pennington  <hp@redhat.com>
10855
10856         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
10857         which holds a handle to a specific row (particular set of values
10858         in the model, i.e. pointer-identity row).
10859
10860         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
10861         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
10862         Still need to use it for the src/dest row saved on the drag context.
10863
10864 2001-01-26  Havoc Pennington  <hp@redhat.com>
10865
10866         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
10867
10868         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
10869         not offset by TREE_VIEW_HEADER_HEIGHT
10870         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
10871         TREE_VIEW_HEADER_HEIGHT
10872
10873         * configure.in (included_loaders): for me, --with-included-loaders
10874         generates the error "the specified loader yes does not exist",
10875         i.e. the arg defaults to "yes", so change test for value ""
10876         to test for value "yes", and include all loaders in that case.
10877
10878         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
10879
10880         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
10881         handle TREE_VIEW_VERTICAL_SEPARATOR
10882         (gtk_tree_view_bin_expose): fix to consider the row offset as
10883         pointing halfway into vertical separator.       
10884         (gtk_tree_view_draw_node_focus_rect): ditto
10885
10886         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
10887         --gtk-debug=updates, which causes gdk_window_set_debug_updates
10888         (TRUE) to be called.
10889
10890         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
10891         debug mode where the invalid region is colored in on invalidate,
10892         so you can see the flicker and know whether your redraw code is 
10893         doing a good job.
10894
10895         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
10896         tree window coordinates (clip rect is in tree window coords)
10897
10898         * gtk/Makefile.am: add gtktreednd.[hc]
10899
10900         * gtk/gtkliststore.c: implement gtktreednd interfaces.
10901
10902         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
10903         drag-and-drop data operations on a model (so we can set up tree
10904         drag-and-drop automatically)
10905
10906         * gtk/testgtk.c: Add a window to change sensitivity in the
10907         GtkLabel test; add a way to change the entry frame in GtkEntry
10908         test
10909
10910         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
10911         (gtk_entry_get_has_frame): new functions to remove the frame
10912         around an entry
10913         (gtk_entry_size_request): shrink requisition if no frame
10914         (gtk_entry_draw_focus): don't draw frame if no frame
10915
10916         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
10917         checks inside a cell renderer
10918         (gtk_default_draw_option): ditto for options
10919
10920         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
10921         children from the alignment, not the button
10922         (gtk_tree_view_column_init): ref/sink the column, to emulate
10923         GObject refcounting.
10924
10925         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
10926         
10927         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
10928         Use theme functions to draw the toggles 
10929
10930         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
10931
10932         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
10933         GdkPangoAttrEmbossed to use in rendering insensitive text
10934
10935         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
10936
10937         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
10938         using new GDK features
10939         
10940 2001-01-24  Alexander Larsson  <alexl@redhat.com>
10941
10942         * gtk/gtkimage.c:
10943         Splitted gtk_image_clear into gtk_image_clear() and
10944         gtk_image_reset(). Call gtk_image_clear() in ::destroy
10945         to avoid leaks.
10946
10947         * gtk/gtklabel.c (set_markup):
10948         Don't leak text.
10949
10950         * gtk/gtktextlayout.c:
10951         Always free display->shaped_objects.
10952
10953         * gtk/testgtk.c (create_clist):
10954         Don't leak custom style.
10955
10956 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10957
10958         * gtk/gtkcolorsel.c (grab_color_at_mouse):
10959         Don't leak image. Simplify using gdk_colormap_query_color().
10960         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
10961
10962         * linux-fb/gdkcolor-fb.c:
10963         Implemented gdk_colormap_query_color.
10964
10965 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10966
10967         * linux-fb/gdkcursor-fb.c:
10968         Don't leak built-in cursors.
10969
10970         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
10971         Don't leak tmp_points.
10972
10973         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
10974         Don't modify desc. Don't leak font if the PangoFont
10975         isn't found.
10976         
10977         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
10978         Free dash_list.
10979
10980         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
10981         Don't leak string.
10982         
10983 2001-01-20  Havoc Pennington  <hp@pobox.com>
10984
10985         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
10986         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
10987         me, matches Pango
10988
10989 2001-01-22  Havoc Pennington  <hp@redhat.com>
10990
10991         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
10992
10993         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
10994
10995         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
10996         Remove, move back to gdk-pixbuf
10997
10998         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
10999         to all the word functions
11000
11001         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
11002         before doing anything on NULL layout or if we don't have the focus
11003
11004         * gtk/testtext.c (fill_example_buffer): "justification"
11005
11006         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
11007         to be called "justification" not "justify"
11008
11009         * demos/gtk-demo/textview.c (create_tags): "justification"
11010         
11011         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
11012
11013 2001-01-22  Alexander Larsson  <alexl@redhat.com>
11014
11015         * gdk/gdkwindow.c (gdk_window_invalidate_region):
11016         Don't leak visible_region. Use visible_region instead of region.
11017         
11018         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
11019         Don't do extra gdk_drawable_ref(). This is not X.
11020         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
11021         gdk_fb_focused_window is ref:ed.
11022         (gdk_fb_window_send_crossing_events): Watch out for destroyed
11023         windows.
11024
11025 2001-01-22  Alexander Larsson  <alexl@redhat.com>
11026
11027         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
11028         Don't leak the PangoFontDescriptor.
11029
11030 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
11031
11032         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
11033         when not realized.
11034         (gtk_tree_view_scroll_to_cell): Make work when not realized.
11035         (gtk_tree_view_realize): add scroll_to support
11036         (gtk_tree_view_finalize): add a finalize method.  Populate.
11037         (gtk_tree_view_insert_column): ref and sink the column.
11038         (gtk_tree_view_append_column): ref and sink the column.
11039         (gtk_tree_view_queue_draw_node): New function to handle redrawing
11040         individual nodes.  Should make the code much more efficient, if
11041         actually used.
11042
11043 2001-01-19  Havoc Pennington  <hp@redhat.com>
11044
11045         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11046         byte_offset variable was being used to mean both "offset into
11047         layout" and "offset into buffer line" which was no longer true
11048         with addition of preedit string; fix
11049
11050 2001-01-19  Havoc Pennington  <hp@redhat.com>
11051
11052         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
11053
11054         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
11055         function
11056
11057         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
11058         implement
11059
11060         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
11061         scroll_to_cell, matches TextView scroll functions better
11062         (gtk_tree_view_tree_to_widget_coords): new function
11063         (gtk_tree_view_widget_to_tree_coords): new function
11064         (gtk_tree_view_get_visible_rect): new function
11065         (gtk_tree_view_get_path_at_pos): accept negative coordinates
11066         (gtk_tree_view_draw_node_focus_rect): new function moved from
11067         draw_focus, also, use width of bin_window as width of the focus
11068         rect
11069         (gtk_tree_view_expand_row): fix bug where it didn't recognize
11070         already-expanded rows
11071         (gtk_tree_view_get_cell_rect): new function
11072         (gtk_tree_view_get_path_at_pos): return the click position
11073         relative to the passed-in cell
11074         (gtk_tree_view_set_expander_column): new function
11075
11076         * configure.in: remove gtk-config-2.0 chmod
11077
11078         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
11079         and properly handle drags with targets we don't understand
11080         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
11081         scrolling anyway
11082         (gtk_text_view_drag_drop): stop scrolling here though, and set the
11083         mark invisible
11084
11085         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
11086         function
11087         (gtk_drag_dest_get_target_list): new function
11088         (gtk_drag_dest_set_target_list): new function
11089         
11090         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
11091
11092         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
11093         related to drag-and-drop
11094
11095 2001-01-19  Alexander Larsson  <alexl@redhat.com>
11096
11097         * gdk/linux-fb/gdkprivate-fb.h:
11098         Define EMULATE_GDKFONT.
11099         Add extra pango_font stuff to GfkFontPrivate.
11100         
11101         * gdk/linux-fb/gdkdrawable-fb2.c:
11102         * gdk/linux-fb/gdkfont-fb.c:
11103         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
11104         emulation using PangoFont.
11105
11106 2001-01-17  Havoc Pennington  <hp@pobox.com>
11107
11108         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
11109         all the non-deprecated set_foo functions. Added missing object
11110         properties, and added g_object_notify() to setters. 
11111         Wrote docs.
11112         
11113 2001-01-18  Tor Lillqvist  <tml@iki.fi>
11114
11115         * gtk/gtkmain.c
11116         * gtk/gtkrc.c: (Win32) Use the new
11117         g_win32_get_package_installation_(sub)directory() functions.
11118
11119         * config.h.win32.in: New file.
11120         
11121         * config.h.win32: Removed.
11122
11123         * configure.in: Output config.h.win32.
11124
11125         * Makefile.am: Add it to EXTRA_DIST.
11126
11127         * gtk/gtk.def: Update.
11128
11129 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
11130
11131         * gtk/gtklabel.c (gtk_label_size_request): Set the
11132         attributes onto the PangoLayout even if they are newly
11133         created from label->pattern.
11134
11135 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
11136
11137         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
11138
11139         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
11140         structures in functions. Fixes bug where gtk_dataset_*
11141         was accidentally still being used in one place, causing
11142         every dest side event to be treated independently.
11143
11144         * gtk/gtkdnd.c: Remove last vestages of handling
11145         ::draw (fixes warning)
11146         
11147         * gtk/gtkentry.[ch]: Add drag and drop support.
11148
11149         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
11150         new function gtk_check_drag_threshhold() for checking
11151         to check if (dx,dy) has exceeded the threshhold for starting
11152         a drag and use it everywhere.
11153
11154 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
11155
11156         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
11157         add -I{includedir}/gtk-2.0.
11158
11159         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
11160         gdk/gdk-pixbuf.h: Doc fixups.
11161         
11162         * gtk/gtkobject.h: Remove trailing , from enum
11163
11164 2001-01-17 Alexander Larsson <alexl@redhat.com> 
11165
11166         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
11167         Doh! Mixed up x and y.
11168
11169         * gdk/linux-fb/gdkglobals-fb.c:
11170         Removed gdk_fb_pointer_grab_window_events,
11171         added _gdk_fb_pointer_grab_owner_events and
11172         _gdk_fb_keyboard_grab_owner_events.
11173
11174         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
11175         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
11176         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
11177         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
11178         Send crossing events after ungrab finished.
11179         (gdk_keyboard_grab): Set ..._owner_events
11180         (type_masks): Move out of function.
11181         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
11182         gdk_fb_keyboard_event_window): New functions, return the
11183         window an event should be targeted at. Handles grabs and
11184         event propagation. Can return NULL.
11185         (gdk_event_make): Remove event_mask checking. Now always
11186         returns an event.
11187                 
11188         * gdk/linux-fb/gdkkeyboard-fb.c:
11189         * gdk/linux-fb/gdkproperty-fb.c:
11190         * gdk/linux-fb/gdkselection-fb.c:
11191         Use new event_window/gdk_event_make() behaviour.
11192         
11193         * gdk/linux-fb/gdkmouse-fb.c:
11194         Use new event_window/gdk_event_make() behaviour.
11195         Only send motion events if in the same window.
11196         If grabbed, use cursor from window if sibling of grabbed
11197         window, and cursor from grabbed window otherwise.
11198
11199         * gdk/linux-fb/gdkprivate-fb.h:
11200         Update gdk_fb_window_send_crossing_events, gdk_event_make
11201         and grab varaible declarations. Add gdk_fb_*_event_window().
11202
11203         * gdk/linux-fb/gdkwindow-fb.c:
11204         Use new event_window/gdk_event_make() behaviour.
11205         Keep correct track of focus window.
11206         (gdk_window_set_events): Set all specific button motion masks
11207         if GDK_BUTTON_MOTION_MASK set.
11208
11209         * gtk/gtkdnd.c (gtk_drag_update):
11210         Free info->last_event if gdk_drag_motion returned FALSE.
11211
11212 2001-01-16  Tor Lillqvist  <tml@iki.fi>
11213
11214         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
11215         Eliminate redraws when input-only windows are shown or
11216         hidden. Thanks to jpe@archaeopteryx.com.
11217
11218 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
11219
11220         * docs/faq/gtk-faq.sgml: FAQ update:
11221           - Update to bugzilla
11222           - Add GTK+ and security/SUID/SGID
11223           - Add DnD question
11224
11225 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
11226
11227         * gdk/linux-fb/gdkdnd-fb.c:
11228         Some cleanups.
11229         
11230 2001-01-15  Havoc Pennington  <hp@pobox.com>
11231
11232         * tests/testtreeview.c: add test stuff for CellRendererToggle
11233
11234         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
11235         accessor
11236
11237         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
11238         only toggle on button press (would do release like GtkButton, but
11239         we'd need implicit grab code for treeview cells)
11240
11241 2001-01-16  Tor Lillqvist  <tml@iki.fi>
11242
11243         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
11244
11245         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
11246         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
11247
11248         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
11249         to g_{locale,filename}_{to,from}_utf8 to match current API.
11250
11251         * gtk/makefile.msc.in (gtk_OBJECTS)
11252         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
11253
11254         * gtk/gtk.def: Update.
11255
11256 2001-01-15  Tor Lillqvist  <tml@iki.fi>
11257
11258         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
11259         implementaion that more closely mimics the events that an X server
11260         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
11261         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
11262         with nested preview widgets, for instance, more responsive when
11263         you move the mouse quickly into them.
11264         (find_window_for_pointer_event): Make it actually compile.
11265         (gdk_event_translate): Set send_event to the value of
11266         InSendMessage (). This doesn't really mean the same as X11's
11267         send_event flag, but is close enough, says jpe@archaeopteryx.com
11268
11269 2001-01-15  Alexander Larsson  <alexl@redhat.com>
11270
11271         * gdk/linux-fb/gdkdnd-fb.c:
11272         Implemented drag and drop.
11273         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
11274         when it tries to free and then copy the same event (info->last_event).
11275         I am not sure about why this happens, but will continue looking.
11276
11277 2001-01-15  Alexander Larsson  <alexl@redhat.com>
11278
11279         * gdk/linux-fb/gdkwindow-fb.c:
11280         Use gdk_window_invalidate_rect instead of
11281         gdk_window_invalidate_rect_clear to minimise flashing.
11282         When hiding windows you need to clear the root window though.
11283
11284 2001-01-15  Alexander Larsson  <alexl@redhat.com>
11285
11286         * gdk/linux-fb/gdkdrawable-fb2.c:
11287         For optization, add an full_shapes argument to gdk_fb_clip_region.
11288         If this is false, only the cliprects of the shapes are used.
11289
11290         * gdk/linux-fb/gdkprivate-fb.h:
11291         Export gdk_fb_window_peek_shape.
11292         Add full_shapes to gdk_fb_clip_region.
11293
11294         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
11295         When moving a window, don't clear everything under the it, just the
11296         root window. Makes stuff faster and flash less.
11297         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
11298         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
11299         offset of the shape.
11300         
11301
11302 2001-01-12  Havoc Pennington  <hp@redhat.com>
11303
11304         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
11305         current invalid region, fixes redraw bug while scrolling the 
11306         text widget
11307
11308         * gtk/gtktextview.c, gtk/gtktextview.h:
11309         Rearrange the scrolling/validation/etc. code in a major way, 
11310         so it seems to make sense to me. Probably isn't genuinely that
11311         much better, but...
11312
11313         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
11314         notifies
11315
11316         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
11317
11318 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
11319
11320         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
11321         Hide mouse pointer while rotation. Show it afterwards.
11322
11323 2001-01-12  Alexander Larsson  <alexl@redhat.com>
11324
11325         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
11326         windows in consideration when generating clip region.
11327
11328         * gdk/linux-fb/gdkfb.h:
11329         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
11330
11331         * gdk/linux-fb/gdkprivate-fb.h:
11332         Add shape to GdkWindowFBDatat.
11333         exported gdk_fb_window_get_abs_shape().
11334         removed gdk_fb_draw_lines declaration.
11335
11336         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
11337         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
11338         send focus changes when there is a grabbed window.
11339         (gdk_window_get_pointer): Handle shaped windows.
11340         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
11341         (gdk_fb_window_peek_shape): Returns the shape for a window,
11342         handles GDK_FB_USE_CHILD_SHAPE.
11343         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
11344         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
11345         (gdk_window_shape_combine_mask): Implement.
11346
11347         * gtk/gtkwindow-decorate.c:
11348         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
11349         setting the shape of a window makes the window transparent.
11350
11351 2001-01-11  Havoc Pennington  <hp@redhat.com>
11352
11353         * gtk/gtktreemodelsimple.h: Oops, broke some macros
11354
11355 2001-01-10  Havoc Pennington  <hp@redhat.com>
11356
11357         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
11358         add this function, bug 40251
11359
11360         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
11361         of type macro   
11362
11363 2001-01-11  Alexander Larsson  <alexl@redhat.com>
11364
11365         * acconfig.h:
11366         Added ENABLE_SHADOW_FB
11367
11368         * configure.in:
11369         Added --disable-shadowfb
11370
11371         * gdk/linux-fb/gdkcursor-fb.c:
11372         Update shadowfb when updating cursor
11373
11374         * gdk/linux-fb/gdkdrawable-fb2.c:
11375         Added wrappers for shadowfb that calls  the normal drawable
11376         methods, but calls gdk_shadow_fb_update(bounding box) when
11377         GdkWindows are drawed to.
11378         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
11379         which also returns the bounding box.
11380
11381         * gdk/linux-fb/gdkfb.h:
11382         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
11383
11384         * gdk/linux-fb/gdkgeometry-fb.c:
11385         Update shadowfb when scrolling window.
11386
11387         * gdk/linux-fb/gdkglobals-fb.c:
11388         Add _gdk_fb_screen_angle.
11389         
11390         * gdk/linux-fb/gdkkeyboard-fb.c:
11391         Test code for screen rotation. Shift-F2 in the xlate driver
11392         rotates the screen.
11393
11394         * gdk/linux-fb/gdkmain-fb.c:
11395         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
11396
11397         * gdk/linux-fb/gdkmouse-fb.c:
11398         Use fb_width/height instead of modeinfo.xres/yres.
11399
11400         * gdk/linux-fb/gdkprivate-fb.h:
11401         Added fb_men, fb_width, fb_height & fb_stride. When using
11402         shadow fb these can differ from the framebuffer stuff.
11403         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
11404         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
11405         _gdk_fb_screen_angle. Removed CM, RP.
11406
11407         * gdk/linux-fb/gdkrender-fb.c:
11408         Added code for shadowfb handling and screen rotation using
11409         shadowfb.
11410
11411         * gdk/linux-fb/gdkwindow-fb.c:
11412         Use fb_mem, fb_stride, fb_width, fb_height.
11413         Added recompute_rowstride to reset the rowstride of all windows.
11414         Added gdk_fb_recompute_all() which recomputes rootwindow size,
11415         window abs positions and window rowstrides. Usefull when the
11416         rotation has changed.
11417
11418 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
11419
11420         * docs/faq/gtk-faq.sgml: update to make web site updating easier
11421
11422 2001-01-10  Havoc Pennington  <hp@redhat.com>
11423
11424         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
11425         where sibling == iter
11426         (gtk_tree_store_insert_after): handle sibling == iter
11427         (gtk_tree_store_prepend): remove stamp checks
11428         (gtk_tree_store_insert_before): ditto
11429         (gtk_tree_store_append): ditto
11430         (gtk_tree_store_get_path): ditto
11431         (gtk_tree_store_get_value): ditto
11432         (gtk_tree_store_iter_has_child): ditto
11433         (gtk_tree_store_iter_n_children): ditto
11434         (gtk_tree_store_iter_nth_child): ditto
11435         (gtk_tree_store_insert_after): ditto
11436         (gtk_tree_store_is_ancestor): ditto
11437         (gtk_tree_store_iter_depth): ditto
11438         (gtk_tree_store_insert_before): assert that sibling's parent is
11439         the same as the passed-in parent
11440         (gtk_tree_store_insert_after): assert that sibling's parent is
11441         the same as the passed-in parent
11442
11443         
11444         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
11445         function to get the first iterator in a model
11446         
11447         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
11448         conventionally the "root" in this sense is just NULL afaict.
11449
11450         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
11451         where sibling == iter
11452         (gtk_list_store_insert_after): handle case where sibling == iter
11453
11454         * tests/testtreeview.c (run_automated_tests): fairly lame basic
11455         automated tests for ListStore, TreeStore
11456
11457         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
11458         (gtk_list_store_insert): update tail pointer, and fix it to work
11459         (gtk_list_store_insert_before): update tail pointer, and fix it to work
11460         (gtk_list_store_append): use tail to be faster
11461         (gtk_list_store_prepend): fix it, update tail pointer
11462         (gtk_list_store_insert_after): fix it, update tail pointer
11463
11464         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
11465         the list
11466
11467 2001-01-09  Havoc Pennington  <hp@redhat.com>
11468
11469         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
11470         is NULL due to a pending resize
11471
11472         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
11473         column width to values less than 1
11474
11475         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
11476         width to be between min/max width, and still set the width 
11477         even if autosize is turned on, so the tree view can use this 
11478         function in order to autosize.
11479         (gtk_tree_view_column_init): set initial width to 1 not 0
11480
11481         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
11482         setter function to modify column width, so we get notification
11483         (gtk_tree_view_insert_iter_height): ditto
11484         (gtk_tree_view_calc_size): ditto
11485         (gtk_tree_view_check_dirty): ditto
11486
11487         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
11488         properties to change all the interesting attributes of the tree
11489         view column.
11490         (gtk_tree_view_column_set_header_clickable): rename set_clickable
11491         (gtk_tree_view_column_get_clickable): add
11492         (gtk_tree_view_column_set_cell_renderer): don't unset the current
11493         attributes; assume a cell renderer with equivalent object
11494         properties has been swapped in. Do g_object_notify().
11495         (gtk_tree_view_column_set_visible): g_object_notify
11496         (gtk_tree_view_column_get_sizing): rename from get_col_type
11497         (gtk_tree_view_column_set_sizing): g_object_notify
11498         (gtk_tree_view_column_set_width): add g_object_notify
11499         (gtk_tree_view_column_set_min_width): ditto
11500         (gtk_tree_view_column_set_max_width): ditto
11501         (gtk_tree_view_column_set_title): ditto
11502         (gtk_tree_view_column_set_clickable): ditto
11503         (gtk_tree_view_column_set_widget): ditto
11504         (gtk_tree_view_column_set_justification): ditto
11505
11506 2001-01-09  Havoc Pennington  <hp@redhat.com>
11507
11508         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
11509         there are no rows in the model
11510
11511         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
11512         NULL, then return the start of the list
11513
11514         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
11515         if we can't get any rows from an empty model 
11516
11517         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
11518         extraneous * after function pointer typedef usage
11519
11520         * Makefile.am: don't specify full path to cp and rm
11521
11522         * gtk/gtkcellrenderertextpixbuf.c
11523         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
11524         NULL before dereferencing, fixes a segfault that happened from
11525         time to time
11526
11527         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
11528         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
11529         and reindent the function
11530         (gtk_cell_renderer_pixbuf_get_size): indentation
11531
11532         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
11533         we quit it
11534         (gtk_dialog_add_buttons_valist): add g_return_if_fail
11535         (gtk_dialog_set_default_response): New function, to set default
11536         button
11537         (gtk_dialog_set_response_sensitive): New function, to set 
11538         sensitivity of buttons
11539
11540         * gtk/gtkcellrendererpixbuf.c
11541         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
11542         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
11543
11544         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
11545         handle any G_TYPE_OBJECT subclass, not just the base class, and 
11546         also boxed types.
11547         (_gtk_tree_data_list_value_to_node): ditto
11548
11549         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
11550         --gtk-debug=tree
11551
11552         * gtk/gtkmain.c: add GTK_DEBUG_TREE
11553
11554         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
11555
11556 2001-01-09  Tor Lillqvist  <tml@iki.fi>
11557
11558         * gdk/win32/gdkevents-win32.c: Implement better mouse
11559         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
11560         (find_window_for_pointer_event): New function.
11561         (gdk_event_translate): Use it when handling mouse events.
11562
11563 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
11564
11565         * configure.in:
11566         Added --with-included-loaders option
11567
11568         * gdk-pixbuf/Makefile.am:
11569         * gdk-pixbuf/gdk-pixbuf-io.c:
11570         Add support for including selected gdk-pixbuf loaders only.
11571
11572         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
11573         gtk_window_set_has_frame):
11574         Added inline documentation.
11575
11576         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
11577         * docs/reference/gdk/tmpl/windows.sgml:
11578         Added inline documentation.
11579
11580 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
11581
11582         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
11583         realizing buttons that have already been realized.
11584
11585 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
11586
11587         * tests/testtreeview.c (main): Show menu items before adding to
11588         option menu.
11589
11590         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
11591         around if we kill them.
11592
11593         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
11594         Return if we pass in a NULL model.
11595
11596 2001-01-08  Havoc Pennington  <hp@redhat.com>
11597
11598         * tests/testtreeview.c: hack on this some
11599
11600         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
11601         gtk_tree_store_set_valist, v is for arrays, valist for varargs
11602         list
11603         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
11604
11605         * gtk/gtkliststore.h: Add varargs set() and get() convenience
11606         functions
11607
11608 2001-01-08  Alexander Larsson  <alexl@redhat.com>
11609
11610         * gtk/gtkwindow-decorate.[hc]:
11611         * gtk/Makefile.am:
11612         New files. Contains an implementation of a minimal WM for
11613         linux-fb.
11614
11615         * gtk/gtkwindow.h:
11616         Add the possibility for GtkWindows to specify a frame. This
11617         is used for the window decoration code, but could concievably
11618         be used for X programs too (xmms style windows).
11619         GtkWindow->frame is the toplevel window if the window is framed.
11620         The signal frame_event gets all events that are targeted to
11621         GtkWindow->frame.
11622         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
11623         
11624         * gtk/gtkwindow.c:
11625         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
11626         Call out to gtkwindow-decorate.c for WM support in linx-fb.
11627
11628 2001-01-08  Alexander Larsson  <alexl@redhat.com>
11629
11630         * docs/README.linux-fb:
11631         Correct filename ~/.pangoft2_aliases
11632
11633         * gdk/gdkwindow.h:
11634         Added new function gdk_window_get_decorations.
11635
11636         * gdk/linux-fb/gdkfb.h:
11637         Removed _gdk_window_get_decorations declaration.
11638         Renamed _gdk_window_set_child_handler to
11639         gdk_fb_window_set_child_handler.
11640
11641         * gdk/linux-fb/gdkwindow-fb.c:
11642         Renamed _gdk_window_set_child_handler to
11643         gdk_fb_window_set_child_handler.
11644
11645         * gdk/x11/gdkwindow-x11.c:
11646         New function gdk_window_get_mwm_hints().
11647         Implemented gdk_window_get_decorations.
11648
11649         * docs/reference/gdk/tmpl/windows.sgml:
11650         * docs/reference/gdk/gdk-sections.txt:
11651         Added gdk_window_get_decorations docs.
11652         
11653 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
11654
11655         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
11656         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
11657         gdk_fb_window_send_crossing_events):
11658         Possibly send focus events when the mouse moves from one
11659         window to another.
11660
11661 2001-01-07  Tor Lillqvist  <tml@iki.fi>
11662
11663         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
11664         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
11665         to match current API.
11666
11667         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
11668         environment variable is set, don't call g_error when on a
11669         palettized (PseudoColor) display. Some people want to use GTK+ 
11670         in 256-colour mode even though works only partially.
11671
11672         * gdk/gdk.def
11673         * gtk/gtk.def
11674         * gtk/makefile.mingw.in: Update.
11675
11676 2001-01-05  Havoc Pennington  <hp@redhat.com>
11677
11678         * tests/testtreeview.c: hack on this a bit
11679
11680         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
11681         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
11682
11683         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
11684         was spelled incorrectly
11685         (GTK_IS_TREE_MODEL_SIMPLE): ditto
11686
11687         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
11688         from gtk_tree_view_set_headers_active   
11689
11690         * gtk/gtktexttag.c:
11691         (gtk_text_tag_get_property): handle PROP_DIRECTION
11692         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
11693         properties, bug 40235
11694
11695         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
11696         forward_to_line_end
11697
11698 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
11699
11700         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
11701         modules/input/gtkimcontextxim.c: Adapt to new prototypes
11702         for unicode,locale,filename conversion functions.
11703
11704 2001-01-05  Havoc Pennington  <hp@redhat.com>
11705
11706         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
11707         broken if called on the first position in the buffer.
11708
11709         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
11710         forward_to_delimiters to be called only if we aren't already at
11711         the delimiters.
11712
11713 2001-01-05  Havoc Pennington  <hp@redhat.com>
11714
11715         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
11716
11717 2001-01-05  Alexander Larsson  <alexl@redhat.com>
11718
11719         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
11720         colormap in here. Sync from X port.
11721         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
11722         Sync from X port.
11723         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
11724         This happens now and then, and i don't think it is a bug.
11725         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
11726         != endpoint.
11727         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
11728         GDK_LINE_SOLID.
11729
11730         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
11731         some of the fields filled in at least.
11732
11733         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
11734         miLineArcD is no more, remove it from the function definition.
11735
11736 2001-01-04  Havoc Pennington  <hp@redhat.com>
11737
11738         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
11739         this
11740
11741         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
11742         user_data instead of tree_node
11743
11744         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
11745         TREE_VIEW_COLUMN_SIZE
11746
11747         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
11748         "size" field to "width" finishes bug 40061
11749
11750         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
11751         for bitfields, bug 40268
11752
11753 2001-01-04  Havoc Pennington  <hp@redhat.com>
11754
11755         Rename some stuff:
11756         
11757         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
11758
11759         s/GtkModelSimple/GtkTreeModelSimple/g;
11760         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
11761         s/gtk_model_simple/gtk_tree_model_simple/g;
11762         s/gtkmodelsimple/gtktreemodelsimple/g;
11763
11764         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
11765
11766         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
11767         s/column_set_col_type/column_set_sizing/g;
11768
11769         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
11770         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
11771
11772         s/GtkCellRendererType/GtkCellRendererState/g;
11773         
11774         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
11775         (gtk_cell_renderer_toggle_class_init): change "state" property to
11776         "active", to match GtkToggleButton
11777         (gtk_cell_renderer_toggle_get_active): new function, bug
11778         40269
11779         (gtk_cell_renderer_toggle_set_active): new function
11780         (gtk_cell_renderer_toggle_set_property): route changes to toggle
11781         state through gtk_cell_renderer_set_active
11782
11783 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
11784
11785         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
11786         temporarily until they work again.  Brought up to date with
11787         changes in the model.
11788         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
11789         model.
11790
11791 2001-01-04  Havoc Pennington  <hp@redhat.com>
11792
11793         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
11794         equal to the line length, then position iterator before paragraph 
11795         separators. Fixes crash reported by Mikael Hermansson when
11796         pressing left arrow from the start of a line.   
11797
11798         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
11799         about byte indexes off the end
11800         (iter_set_from_char_offset): add g_error about char offsets
11801         off the end
11802
11803 2001-01-03  Havoc Pennington  <hp@redhat.com>
11804
11805         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
11806
11807         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
11808         of private functions; remove inclusion of private headers.
11809
11810         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
11811         function, so we don't need private functions in gtktextdisplay.c
11812
11813         * gtk/gtktextiterprivate.h: underscore-ification
11814
11815         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
11816         to instead say "only useful to implement widgets"
11817
11818         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
11819         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
11820         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
11821
11822         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
11823         This function was completely broken
11824
11825         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
11826
11827         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
11828
11829         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
11830
11831         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
11832
11833         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
11834
11835         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
11836
11837         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
11838         gtk_paint_layout
11839
11840         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
11841         gtk_paint_layout
11842
11843         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
11844         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
11845         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
11846         which were not implemented.     
11847
11848         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
11849         insert_pixbuf signal. Rename delete_text to delete_range since it
11850         also deletes pixbufs and child anchors. This almost closes bug
11851         40245 (still need to deal with child anchors)
11852
11853         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
11854         insert_pixbuf, change signal names as appropriate, change types of
11855         signals taking marks/tags to have the specific type, not just
11856         G_TYPE_OBJECT
11857         
11858         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
11859         closes bug 40051
11860
11861         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
11862         unnecessary remove_contents() call
11863         (gtk_option_menu_class_init): add a "changed" signal, closes
11864         bug 40039
11865         (gtk_option_menu_update_contents): emit "changed" if the 
11866         active menu item changes
11867
11868         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
11869         cast to GtkObject, reported by Jonas Borgstrom
11870         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
11871         we can't do stuff with side effects in finalize. Instead, spew a
11872         warning if the loader isn't closed.
11873
11874         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
11875         colormap in here, non-X ports probably need to sync to this change
11876
11877         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
11878         assertion that colormap != NULL, you can set the colormap to NULL
11879         if you like.
11880         
11881         * Makefile.am: remove gtk-config-2.0
11882
11883         * configure.in: Use pkg-config to locate GLib. Remove
11884         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
11885         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
11886         Use pkg-config to locate Pango. Output correct Pango libs to
11887         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
11888
11889         * Makefile.am (pkgconfig_DATA): install only target-specific pc
11890         files
11891         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
11892         X11 pc files
11893
11894         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
11895         unref from here
11896
11897 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
11898
11899         * configure.in:
11900         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
11901
11902 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
11903
11904         * gtk/gtktextlayout.c
11905         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
11906         variable when moving back onto a single line.
11907
11908 2001-01-01  Havoc Pennington  <hp@redhat.com>
11909
11910         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11911
11912         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11913
11914         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
11915         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
11916
11917 2001-01-01  Havoc Pennington  <hp@redhat.com>
11918
11919         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
11920
11921         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
11922         GtkTextAttributes
11923
11924         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
11925         #40246
11926         (gtk_text_attributes_copy_values): rename from 
11927         gtk_text_attributes_copy
11928         (gtk_text_attributes_copy): a more standard GTK copy function, 
11929         which returns a new object
11930
11931 2001-01-01  Havoc Pennington  <hp@redhat.com>
11932
11933         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
11934         
11935         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
11936         don't fill in tree_view->priv->selection, kind of an unexpected
11937         side effect
11938
11939         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
11940         gtkintl.h
11941         
11942         * gtk/gtkcellrenderer.c: Remove definition of _ and include
11943         gtkintl.h
11944         (gtk_cell_renderer_get_property): remove calls to g_value_init
11945
11946         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
11947         gtkintl.h
11948
11949         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
11950         and include gtkintl.h
11951         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
11952         property names
11953
11954         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
11955         GtkTreeSelection
11956         (_gtk_tree_selection_new_from_with_view): rename, return
11957         GtkTreeSelection
11958         (_gtk_tree_selection_set_tree_view): rename with uscore
11959         (gtk_tree_selection_get_selected): fill in the "model" out param
11960         first, so it gets filled in even if we return at the top of the 
11961         function
11962         (gtk_tree_selection_real_select_all): add a comment and an else{}
11963         to clarify this a bit
11964         (gtk_tree_selection_real_unselect_all): add the same else{}
11965
11966         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
11967         set_tree_view to have underscore prefixes, move them to the
11968         private header, fix return type of new_with_tree_view
11969         (struct _GtkTreeSelection): mark struct
11970         fields private  
11971
11972         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
11973         GtkTreeModelFlags, not a guint
11974         (gtk_tree_path_prev): return gboolean not gint
11975         (gtk_tree_path_up): return gboolean not gint
11976
11977         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
11978         return GtkTreeModelFlags, not a guint
11979
11980         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
11981         that child model is non-null before unrefing it
11982         (g_value_int_compare_func): make this a qsort compare func, not 
11983         a boolean predicate
11984
11985         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
11986         (add -umn to the end), and mark it unimplemented
11987         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
11988         I don't see what it's for - doesn't the model always sort itself?
11989         (gtk_tree_model_sort_set_compare): this had the wrong signature
11990
11991         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
11992         Fix the docs to say that it destructively replaces existing
11993         attributes (previously said that it added attributes).
11994         (gtk_tree_view_column_set_visible): canonicalize bool before
11995         equality testing. Also, check for realization before
11996         hiding/showing the tree_column->window; if this window could exist
11997         before realization, then it's busted and needs fixing, we can't 
11998         create GDK resources pre-realization. Also, remove
11999         superfluous queue_resize(), since set_size() does that for us.
12000         (gtk_tree_view_column_set_col_type): check realization before 
12001         using tree_column->window
12002
12003         * gtk/gtktreedatalist.c: fix filename in copyright notice
12004
12005 2000-12-31  Havoc Pennington  <hp@pobox.com>
12006
12007         * gtk/gtktextview.c: Rearrange all the
12008         scroll-while-dragging-or-selecting code to be different, not
12009         necessarily better. ;-)
12010         (gtk_text_view_scroll_to_mark): Change this
12011         function to take within_margin as a fraction instead of a pixel
12012         value, and to take alignment arguments (indicating where to align 
12013         the mark inside the visible area)
12014         
12015         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
12016         to GtkObject
12017
12018         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
12019         behavior so that offsets past the end of the line are not 
12020         allowed, and an offset equal to the line length moves the iterator
12021         to the next line
12022         (gtk_text_iter_set_line_index): make parallel change
12023         (gtk_text_iter_get_bytes_in_line): add this function
12024         
12025         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
12026         of byte indexes off the end of the line; byte index at the end of
12027         the line now returns FALSE and doesn't fill in the requested
12028         values, byte index past the end of the line is an error.  Also,
12029         don't allow -1 offset anymore, since its meaning is unclear.
12030
12031         This change exposes some bug in visual cursor motion, where we
12032         end up with a huge invalid byte index; needs fixing. Symptom of 
12033         bug is a crash when you hit up arrow.
12034         
12035         (_gtk_text_line_char_locate): match the change to byte_locate
12036
12037         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
12038         from start of line properly. fixes bug reported by Mikael
12039         Hermansson where backspace would delete all text before the
12040         cursor.
12041
12042 2000-12-30  Tor Lillqvist  <tml@iki.fi>
12043
12044         * gdk/win32/gdkwindow-win32.c
12045         (gdk_window_impl_win32_get_visible_region): New function, as in
12046         the X11 backend.
12047         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
12048         instead of duplicating the same code here.
12049
12050         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
12051         GDK_COLORMAP macro.
12052
12053         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
12054         destroy function.
12055         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
12056         access that.
12057
12058         * gtk/gtk.def: Update.
12059
12060         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
12061
12062 2000-12-30  Havoc Pennington  <hp@pobox.com>
12063
12064         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
12065         colormap on input only windows, to avoid special cases all over
12066         the code for these windows.
12067
12068 2000-12-26  Tor Lillqvist  <tml@iki.fi>
12069
12070         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
12071         we are on a palettized display ("PseudoColor" in X11), as the code
12072         for that doesn't work anyway, and never has.
12073
12074 2000-12-22  Alexander Larsson  <alexl@redhat.com>
12075
12076         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
12077         Don't use isprint() for chars > 255.
12078
12079 2000-12-21  Havoc Pennington  <hp@redhat.com>
12080
12081         * tests/testtreeview.c: more work
12082
12083 2000-12-21  Alexander Larsson  <alexl@redhat.com>
12084
12085         * docs/README.linux-fb:
12086         Update the docs to the new pangoft2 way.
12087
12088 2000-12-21  Alexander Larsson  <alexl@redhat.com>
12089
12090         * configure.in:
12091         For linux-fb get the pangoft2 cflags and libs. This needs a recent
12092         pango version.
12093         Remove modules/linux-fb/Makefile.
12094
12095         * gdk/linux-fb/gdkdrawable-fb2.c:
12096         Render glyphs using freetype.
12097
12098         * gdk/linux-fb/gdkfb.h:
12099         Add new fb-specific functions needed for managing windows.
12100
12101         * gdk/linux-fb/gdkmain-fb.c:
12102         Remove gdk_font_init/fini() calls.
12103
12104         * gdk/linux-fb/gdkpango-fb.c:
12105         Remove old implementation. Use pangoft2 instead.
12106
12107         * gdk/linux-fb/gdkprivate-fb.h:
12108         Remove PangoFBFont and related stuff.
12109
12110         * gdk/linux-fb/gdkwindow-fb.c:
12111         Implement drawable->get_visible_region.
12112         Implement support for _gdk_window_set_child_handler () and
12113         _gdk_window_get_decorations().
12114
12115         * modules/Makefile.am:
12116         Remove linux-fb subdir.
12117
12118         * modules/linux-fb/*:
12119         Removed all.
12120         
12121 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
12122
12123         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
12124         calls, as they are no longer needed.
12125
12126         * gtk/gtktreemodelsort.c: Fix up the comparison code.
12127         
12128         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
12129         figure out how to emit a signal on an interface.
12130
12131 2000-12-20  Havoc Pennington  <hp@redhat.com>
12132
12133         * tests: new directory to contain tests, gtk/test* should move
12134         here sometime (with appropriate on-cvs-server hackery)
12135
12136         * tests/testtreeview.c, tests/Makefile.am: a test
12137         
12138         * configure.in (AC_OUTPUT): add tests/Makefile
12139
12140         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
12141         and "invisible_set" which were missing
12142
12143         * gtk/gtkrbtree.h: some cheesy indentation fix
12144         
12145 2000-12-20  Alexander Larsson  <alexl@redhat.com>
12146
12147         * gtk/gtkinvisible.c (gtk_invisible_realize):
12148         Attach the style to the window so that the style it is not
12149         leaked when unrealizing the window.
12150
12151 2000-12-18  Havoc Pennington  <hp@redhat.com>
12152
12153         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
12154         begin/end user action where appropriate
12155         (gtk_text_view_commit_handler): add begin/end user action
12156
12157         * gtk/gtktextbuffer.c: add begin/end user action signals, and
12158         bracket interactive operations with begin/end user action pair.
12159         
12160         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
12161         "interactive" arg from insert_text and delete_text signals.
12162         Add begin_user_action, end_user_action signals
12163         (gtk_text_buffer_begin_user_action): 
12164         (gtk_text_buffer_end_user_action): New functions to delimit 
12165         a user-visible action
12166
12167         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
12168         signals.
12169         
12170 2000-12-18  Havoc Pennington  <hp@redhat.com>
12171
12172         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
12173         was pretty non-working.
12174
12175         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
12176         by passing the length to g_utf8_validate().
12177
12178 2000-12-16  Havoc Pennington  <hp@pobox.com>
12179
12180         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
12181         Port to GObject, can go back in gdk-pixbuf after setting up 
12182         a gdk-pixbuf-marshal.h header over there.
12183
12184         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
12185         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
12186         args
12187         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
12188         set
12189         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
12190         here, do it when we create the buttons later
12191         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
12192         (gtk_tree_view_map): paranoia checks that column->button is shown 
12193         and unmapped
12194         (gtk_tree_view_size_request): only request visible children.
12195         Move header size calculation in here, for cleanliness, and 
12196         to maintain invariants for child widgets if we eventually 
12197         let users set different children inside the buttons
12198         (gtk_tree_view_map_buttons): factor out code to map buttons,
12199         since it was being called several times
12200         (gtk_tree_view_size_allocate_buttons): move_resize the drag
12201         windows instead of just moving them; their height may change 
12202         if we allow random widgets in there, or the theme changes.
12203         (gtk_tree_view_size_allocate): move button size allocation 
12204         above emitting the scroll signals, to ensure a sane state when we
12205         hit user code
12206         (gtk_tree_view_button_release): remove queue_resize after
12207         tree_view_set_size(), set_size() will handle any resize queuing
12208         that's needed
12209         (gtk_tree_view_focus_in): just queue a draw, don't fool with
12210         draw_focus goo
12211         (gtk_tree_view_focus): use gtk_get_current_event() and
12212         gdk_event_get_state()
12213         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
12214         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
12215         semicolon
12216         (gtk_tree_view_create_button): show the button here
12217         (gtk_tree_view_button_clicked): actually emit the clicked signal
12218         on the column
12219         (_gtk_tree_view_set_size): return right away if the size is
12220         unchanged, as a cheesy optimization
12221         (gtk_tree_view_setup_model): rename set_model_realized to 
12222         setup_model to match the flag that indicates whether we've 
12223         called it
12224         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
12225         exist, because set_scroll_adjustment does that and it shouldn't
12226         matter what order you call these in
12227         (gtk_tree_view_get_vadjustment): ditto
12228         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
12229         for paranoia
12230         (gtk_tree_view_set_headers_visible): call
12231         gtk_tree_view_map_buttons() instead of using cut-and-paste code
12232         (gtk_tree_view_append_column): clarify whether the return value
12233         is the count of columns before or after, and do the increment 
12234         separately from the return statement so you can tell from the code.
12235         (gtk_tree_view_remove_column): ditto
12236         (gtk_tree_view_insert_column): ditto
12237         (gtk_tree_view_get_column): remove g_return_if_fail for columns
12238         outside the existing range, the docs say that outside-range
12239         columns are allowed, so we handle them as documented. (Presumably
12240         this allows a nice loop with column != NULL as test.)
12241         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
12242         mean (left/right/center etc.).
12243         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
12244         (gtk_tree_view_expand_row): add docs
12245         (gtk_tree_view_collapse_row): add docs
12246
12247         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
12248         function to emit the clicked signal on a column
12249         
12250         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
12251         state of an event
12252         (gdk_event_get_time): don't treat GDK_SCROLL 
12253         as a button event, remove default case from switch so gcc 
12254         will whine if we don't explicitly handle all event types
12255
12256         * gtk/gtktreeselection.h: added some FIXME 
12257         
12258         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
12259         "columns" to "n_columns" and "column" to "columns" for clarity
12260
12261 2000-12-16  Havoc Pennington  <hp@pobox.com>
12262         
12263         * gtk/gtktextiter.c: General cleanup of the log attr iteration
12264         stuff. This should make e.g. the delete key work again in the
12265         text widget...
12266         (gtk_text_iter_forward_cursor_positions): handle negative count
12267         (gtk_text_iter_backward_cursor_positions): handle negative count
12268         (gtk_text_iter_forward_word_ends): handle negative count
12269         (gtk_text_iter_backward_word_starts): handle negative count
12270
12271         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
12272         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
12273         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
12274         GObject. No doubt will cause breakage.
12275
12276         * demos/gtk-demo/textview.c: remove hacks around
12277         non-GObject-ification of the text objects
12278
12279         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
12280         the text tag
12281         
12282 2000-12-14  Havoc Pennington  <hp@pobox.com>
12283
12284         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
12285         that we have Xrender
12286
12287 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
12288
12289         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
12290         Add two virtualized functions gdk_drawable_get_clip_region - to
12291         get the clip region when drawing.
12292         
12293         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
12294         use invalidate_region.
12295
12296         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
12297         region.
12298
12299         * acconfig.h configure.in: Check for Xft. For now, assume
12300         that if Xft is found, Pango was compiled with Xft support
12301         as well.
12302
12303         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
12304         gdk_colormap_query_color().
12305         
12306         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
12307         with Xft if appropriate.
12308
12309         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
12310         a pangoxft context if we have XFT and the environment
12311         variable GD_USE_XFT is set.
12312         
12313         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
12314         and also possibly an XftDraw structure.
12315
12316         * gtk/gtkfontsel.c: Handle the case where the font from the
12317         style doesn't match any of the fonts a bit better.
12318         
12319         * gtk/testgtk.c: Add tabs between directional segments for
12320         hebrew/arabic test. (Not really necessary, just a little
12321         prettier.)
12322
12323 2000-12-14  Havoc Pennington  <hp@redhat.com>
12324
12325         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
12326         reading a file
12327
12328 2000-12-14  Havoc Pennington  <hp@redhat.com>
12329
12330         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
12331         unused call to get_last_line()
12332
12333         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
12334         here until boxed is working (and maybe after that - we should
12335         really not gratuitously break old code)
12336
12337         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
12338         specific types for font_desc and tabs args, move them to
12339         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
12340         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
12341
12342         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
12343         use GTK_TYPE_POINTER for signal signatures as a hack-around
12344
12345         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
12346         PangoTabArray
12347
12348         * gtk/gtktextlayout.c (line_display_iter_to_index): 
12349         make static
12350         (line_display_index_to_iter): make static
12351
12352         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
12353         to marshal a string not a boxed
12354
12355         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
12356
12357         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
12358         since the UTF-8 isn't validated yet
12359
12360         * gtk/gtktextsegment.c (char_segment_check_func): don't require
12361         lines to end in '\n'
12362         
12363         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
12364         forward_to_delimiters, and grapheme boundaries
12365         (gtk_text_view_delete_from_cursor): properly handle non-newline
12366         delimiters, and grapheme boundaries
12367
12368         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
12369         to gtk_text_iter_forward_to_delimiters, and make it work properly
12370         if empty lines end with a character other than '\n'
12371
12372         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
12373         position
12374
12375 2000-12-15  Tor Lillqvist  <tml@iki.fi>
12376
12377         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
12378
12379         * gtk/gtk.def
12380         * gdk/gdk.def: Update.
12381
12382         * gdk/win32/gdkmain-win32.c
12383         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
12384         gdkmain-win32.c here.
12385
12386         * gdk/win32/makefile.mingw.in (all): No need to make
12387         gdk-win32res.o here, the makefile one step up will call us to make
12388         it.
12389
12390         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
12391         gdkkeys-win32.
12392
12393         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
12394
12395         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
12396         call to g_source_add().
12397
12398         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
12399         leak. Thanks to Andreas Kemnade.
12400
12401 2000-12-13  Havoc Pennington  <hp@pobox.com>
12402
12403         * gtk/gtktextbtree.h: Remove double _ in front of some functions
12404
12405         * gtk/gtktext*.[hc]: update accordingly
12406         
12407 2000-12-13  Havoc Pennington  <hp@pobox.com>
12408
12409         * gtk/gtktextbtree.h: Put _ in front of every function in this 
12410         header file
12411
12412         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
12413
12414 2000-12-13  Alex Larsson  <alexl@redhat.com>
12415
12416         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
12417         Add support for ps2 intellimouse.
12418
12419         * gdkkeyboard-fb.c:
12420         Move shift-F1 repaint handling to xlate handler only.
12421         
12422         * docs/README.linux-fb:
12423         Add imps2 to docs.
12424         Document the new refresh keys.
12425         
12426 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
12427
12428         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
12429
12430         * gtk/gtkbox.c: change property types from (u)long to (u)int for
12431         ::position and ::padding.
12432
12433         * gtk/gtkcontainer.c: make ::border_width an INT property.
12434
12435         * gtk/gtkpacker.c: make ::position an INT property.
12436
12437         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
12438         guard against NULL h/v scrollbars, since this is used at construction
12439         time.
12440
12441         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
12442         internal gtk_clist_constructor().
12443
12444         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
12445         gtk_ctree_constructor().
12446
12447         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
12448         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
12449
12450         * docs/reference/Makefile.am: fun stuff, disabled docs generation
12451         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
12452
12453         * gtk/gtkwidget.[hc]:
12454         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
12455         and gtk_widget_get().
12456         (gtk_widget_new): use g_object_new_valist().
12457         (gtk_widget_set): use g_object_set_valist().
12458
12459         * gtk/gtkobject.[hc]:
12460         removed gtk_object_arg_get_info(), gtk_object_getv(),
12461         gtk_object_query_args(), gtk_object_newv(),
12462         gtk_object_class_add_signals(),
12463         gtk_object_class_user_signal_new(),
12464         gtk_object_class_user_signal_newv(),
12465         gtk_object_arg_set(), gtk_object_arg_get(),
12466         gtk_object_args_collect(),
12467         gtk_object_default_construct(),
12468         gtk_object_constructed(),
12469         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
12470         removed nsignals, signals and n_args members from GtkObjectClass.
12471         (gtk_object_new): use g_object_new_valist().
12472         (gtk_object_set): use g_object_set_valist().
12473         (gtk_object_get): use g_object_get_valist().
12474         
12475         * gtk/gtkcompat.h: define gtk_object_default_construct().
12476         
12477         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
12478         g_object_new().
12479
12480         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
12481         fucntions, cleaned up method assignments (make sure your structures
12482         are setup properly before calling out). removed all GTK_CONSTRUCTED
12483         hacks ;)
12484
12485 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
12488         off-by-one error in checks. (Dave Lambert)
12489
12490 2000-12-12  Alexander Larsson  <alexl@redhat.com>
12491
12492         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
12493         Don't free gdk_fb_keyboard twice.
12494
12495 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
12496
12497         * gtk/testgtk.c:
12498         (create_tooltips): 
12499         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
12500         use GObject swapped_signal:: properties instead.
12501
12502         * gtk/gtkcellrenderertoggle.c: 
12503         * gtk/gtkcellrenderertextpixbuf.c: 
12504         * gtk/gtkcellrenderertext.c: 
12505         * gtk/gtkcellrendererpixbuf.c: 
12506         * gtk/gtkcellrenderer.c:
12507         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
12508         missing warnings for invalid property ids, install properties
12509         with g_object_class_install_property() now.
12510         
12511         * gtk/gtksignal.c:
12512         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
12513         
12514 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
12515         
12516         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
12517         to determine if a window is the focus widget within
12518         its toplevel.
12519
12520         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
12521         to be boolean.
12522
12523         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
12524         of the case where the container CAN_FOCUS to here instead
12525         of having it in each individual move-the-focus place.
12526
12527         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
12528         focusing to be geometric in a much more obvious sense. Arrowing
12529         around is still non-intuitive because it isn't perfect and
12530         because entries, etc, grab the arrow keys, but it at least
12531         usually will do what you expect now.
12532         
12533         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
12534         file.
12535
12536         * gtk/gtknotebook.c: Change tabs to be a single item in
12537         the focus chain. Make movement of focus on tabs with arrow
12538         keys wrap around.
12539         
12540         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
12541         CHECK_FIND_CHILD macro to give informative error messages
12542         instead of silent returns.
12543
12544         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
12545         flag since we handle GdkReturn on the tabs.
12546
12547         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
12548         windows rather than sending expose events directly.
12549
12550         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
12551         definition for GtkNotebookPage into .c file, since it is private.
12552
12553         * gtk/testgtk.c (create_notebook): Add option for 
12554         testing borderless notebook.
12555
12556         * gtk/testgtk.c (page_switch): Removed egregious poking
12557         around in GTK+ internals.
12558
12559         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
12560
12561         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
12562         properly through gtk_clist_focus. Make the title headers a
12563         single item in the tab-focus chain, and make left-right wrap
12564         around.
12565
12566         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
12567         focus method so that wrapping around works properly.
12568
12569         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
12570         that is handled for the widget now. 
12571
12572 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
12573
12574         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
12575         widgets as TOPLEVEL.
12576
12577         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
12578         TOPLEVEL widgets are containers.
12579
12580         * gtk/gtkinvisible.h: Remove useless include.
12581
12582 2000-12-11  Havoc Pennington  <hp@redhat.com>
12583
12584         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
12585         Handle chopping off \r\n and 0x2029 in addition to \n before
12586         passing to PangoLayout
12587
12588         * gtk/gtkimcontextsimple.c
12589         (gtk_im_context_simple_get_preedit_string): 
12590         return an empty string if no match is pending
12591
12592         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
12593         assertion that the returned preedit string was sane
12594
12595         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
12596         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
12597         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
12598
12599 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
12600
12601         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
12602         Fix up finalizer to chain to its parent.
12603
12604 2000-12-11  Alexander Larsson  <alexl@redhat.com>
12605
12606         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
12607         Clearified the difference between the keyboard types. Wrote a note
12608         about the magic sysrq key to get out of raw mode.
12609
12610 2000-12-09  James Henstridge  <james@daa.com.au>
12611
12612         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
12613         member to hold masks for detecting the start of a protocol packet.
12614         (mouse_devs): add packet start masks for ps2 and ms device types.
12615         Left the mask for fidmour blank, as I have no idea what it should
12616         be.
12617         (handle_mouse_io): skip bytes until we get to the start of a
12618         packet.  My Logitech mouse seems to be passing an extra NULL pad
12619         byte, and GPM does a similar thing here.
12620         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
12621         this is the ms mouse driver.
12622         (gdk_fb_mouse_ms_packet): fix up button handling, which was
12623         completely broken except for button1.  It was checking the wrong
12624         bit in the packet for the status of the right mouse button, and
12625         wrongly assuming right == button2 rather than 3.  I fixed that and
12626         also added support for middle button (button2).
12627
12628 2000-12-08  Havoc Pennington  <hp@redhat.com>
12629
12630         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
12631         that cause a segfault on text insertion
12632
12633         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
12634         warning
12635
12636         * gtk/gtktextiter.c (test_log_attrs): use
12637         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
12638
12639         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
12640         Get log attrs for a line, using a cache stored on the buffer
12641         
12642         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
12643         reported by Jeff Franks
12644
12645 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
12646
12647         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
12648         /dev/ttyS0 -> /dev/mouse
12649
12650 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
12651
12652         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
12653         Added dummy gdk_fontset_load.
12654
12655 2000-12-08  Alexander Larsson  <alexl@redhat.com>
12656
12657         * docs/README.linux-fb:
12658         * docs/Makefile.am:
12659         Initial GtkFB docs.
12660         
12661         * gdk/linux-fb/Makefile.am:
12662         Define GDK_DATA_PREFIX.
12663
12664         * gdk/linux-fb/gdkmain-fb.c:
12665         Fix typo.
12666         Change default display to /dev/fb0.
12667
12668         * gdk/linux-fb/gdkpango-fb.c:
12669         Add $(prefix)/share/fonts/ to font path.
12670         
12671 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
12672
12673         * gdk/linux-fb/gdkkeyboard-fb.c:
12674         New file containing the abstracted keyboard driver. Most code
12675         taken from gdkinput-ps2.c
12676
12677         * gdk/linux-fb/gdkinput-ps2.c:
12678         Removed file.
12679         
12680         * gdk/linux-fb/Makefile.am:
12681         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
12682
12683         * gdk/linux-fb/gdkcolor-fb.c:
12684         display->fb was renamed to display->fb_fd.
12685
12686         * gdk/linux-fb/gdkcursor-fb.c:
12687         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12688
12689         * gdk/linux-fb/gdkinput.c:
12690         Moved gdk_input_init here from gdkinput-ps2.c
12691
12692         * gdk/linux-fb/gdkmain-fb.c:
12693         display->fb was renamed to display->fb_fd.
12694         Now the tty and the console is opened here instead
12695         of in the keyboard driver. Also check GDK_VT to see what
12696         tty to open.
12697         Move gdk_beep () here from gdkinput-ps2.c
12698         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12699
12700         * gdk/linux-fb/gdkmouse-fb.c:
12701         Add header.
12702         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12703         Return correct keyboard modifiers.
12704         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
12705
12706         * gdk/linux-fb/gdkprivate-fb.h:
12707         Add tty and vt info to display.
12708         Add orignal modeinfo storage to display
12709         Update global functions
12710
12711         * gdk/linux-fb/gdkwindow-fb.c:
12712         Added gdk_fb_window_find_focus().
12713         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12714
12715 2000-12-07  Havoc Pennington  <hp@pobox.com>
12716
12717         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
12718         function, noticed by Alex
12719
12720 2000-12-06  Elliot Lee  <sopwith@redhat.com>
12721
12722         * configure.in: Detect freetype properly
12723
12724         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
12725         above.
12726
12727 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12728
12729         * gdk/linux-fb/Makefile.am:
12730         Add gdkmouse-fb.c
12731         
12732         * gdk/linux-fb/gdkmouse-fb.c:
12733         New file. Abstracted the mouse drivers a bit.
12734
12735         * gdk/linux-fb/gdkcursor-fb.c:
12736         The cursor hide/show functions was moved here from gdkinput-ps2.c.
12737
12738         * gdk/linux-fb/gdkinput-ps2.c:
12739         Removed old mouse handling code. Moved cursor handling code
12740         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
12741         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
12742         gdk_mouse_get_info.
12743
12744         * gdk/linux-fb/gdkmain-fb.c:
12745         Pass NULL pointers for x,y in gdk_mouse_get_info call.
12746
12747         * gdk/linux-fb/gdkprivate-fb.h:
12748         Removed public gdk_fb_find_common_ancestor, added and renamed
12749         functions for the new mouse handling code.
12750
12751         * gdk/linux-fb/gdkwindow-fb.c:
12752         Moved gdk_fb_window_send_crossing_events here. added global
12753         variable gdk_fb_window_containing_pointer. made
12754         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
12755         renamed to gdk_mouse_get_info.
12756
12757 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12758
12759         * gdk/linux-fb/gdkevents-fb.c:
12760         Update to match latest gmain/gsource changes.
12761
12762         * gdk/linux-fb/gdkinput-ps2.c:
12763         Bogus gdk_keymap_get_entries_for_keycode implementation so that
12764         it links. Will be implemented later.
12765
12766 2000-12-03  Havoc Pennington  <hp@pobox.com>
12767
12768         * gdk/Makefile.am: add gdkkeys.[hc]
12769
12770         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
12771         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
12772
12773         * acconfig.h, configure.in: add checks and command line options
12774         for XKB
12775
12776         * gdk/x11/gdkkeys-x11.c: Implement the above functions
12777         
12778         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
12779         and group in the key event
12780
12781         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
12782         field with the low-level hardware key code, and a group
12783         field with the keyboard group
12784
12785         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
12786         and declare a couple globals used for keymap handling
12787         
12788         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
12789         hold down Shift-Control and type a hex number to get a Unicode 
12790         character corresponding to the hex number
12791         (gtk_im_context_simple_get_preedit_string): Fix cursor position
12792         (return bytes not chars)
12793
12794 2000-12-05  Elliot Lee  <sopwith@redhat.com>
12795
12796         * gdk/gdkcolor.h: Make GdkColor specify element sizes
12797         to avoid waste on 64-bit platforms.
12798
12799 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
12800
12801         * INSTALL: Fix link to PNG home, remove reference
12802         to fribidi.
12803
12804         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
12805         
12806         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
12807         tested.)
12808
12809         * gtk/gtkcheckmenuitem.c: Permanently turn on
12810         always_show_toggle.
12811
12812         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
12813         be NULL. (Vladimir Klebanov, #26545)
12814
12815         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
12816         some signed/unsigned comparison problems. (#6510,
12817         David Kaelbling)
12818
12819         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
12820         return type to boolean (Oskar Liljeblad, #18648)
12821
12822 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12823
12824         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
12825         Remove bogus colormap setting.
12826
12827 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12828
12829         * gdk/linux-fb/gdkcolor-fb.c:
12830         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
12831
12832         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
12833         Must set colormap.
12834         
12835 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
12836
12837         * docs/tutorial/gtk-tut.sgml: DND updates
12838
12839 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
12840
12841         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12842         Remove old debug g_warning().
12843         (gdk_fb_draw_drawable): The src argument can be either a wrapper
12844         or an implementation, just pass the implementation to draw_drawable_2.
12845         
12846         * gdk/linux-fb/gdkprivate-fb.h:
12847         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
12848
12849         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12850         clear and invalidate area when window is destroyed.
12851         (send_map_events): Remove old commented out code.
12852
12853 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12854
12855         * gdk/linux-fb/gdkpango-fb.c:
12856         Use italic instead of oblique in font aliases.
12857         
12858         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
12859         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
12860         other unsupported functions.
12861
12862 2000-12-04  Havoc Pennington  <hp@redhat.com>
12863
12864         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
12865
12866         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
12867
12868         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
12869
12870         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
12871         hack to avoid infinite loops (synthetic expose event) - 
12872         Owen has more appropriate fixes in a branch he'll check in later.
12873
12874         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
12875         separator, CR, and CRLF as line ends
12876
12877         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
12878         into lines using pango_find_paragraph_boundary(); other bits of
12879         the widget are still going to be broken if the boundary isn't '\n'
12880         though
12881
12882 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12883
12884         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
12885         multiply.
12886
12887         * gdk/linux-fb/gdkpango-fb.c:
12888         Copied some 26.6 scaling macros from pango to clean up the rounding.
12889         (pango_fb_font_get_glyph_info): Correct sign on x value.
12890
12891         * gdk/linux-fb/gdkprivate-fb.h:
12892         Removed unreferenced external functions.
12893
12894         * modules/linux-fb/Makefile.am: Use ` instead of '.
12895
12896         * modules/linux-fb/basic.c:
12897         Remove dead code. In particular the dummy lang engine which broke all
12898         pango layouts in GtkFB. Don't include tables-big.i anymore.
12899
12900         * modules/linux-fb/tables-big.i:
12901         Upgrade to latest version from pango. Left for reference, basic_ranges
12902         moved to basic.c.
12903         
12904 2000-12-04  Havoc Pennington  <hp@redhat.com>
12905
12906         Fix bugs Alex found:
12907         
12908         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
12909         to "draw"
12910
12911         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
12912
12913         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
12914
12915         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
12916         implementation in here, apparently the expose() implementation was
12917         dead code.
12918
12919 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12920
12921         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12922         Return positive descent.
12923
12924 2000-12-02  Havoc Pennington  <hp@pobox.com>
12925
12926         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
12927         method and signal
12928         
12929         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
12930         calls gdk_window_process_updates() to push the exposes through
12931         (gtk_widget_class_init): No more draw signal, no
12932         gtk_widget_real_draw()  
12933         
12934         * gtk/gtkbin.c (gtk_bin_draw): remove
12935
12936         * gtk/gtkbox.c (gtk_box_draw): remove
12937
12938         * gtk/gtkbutton.c (gtk_button_draw): remove
12939
12940         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
12941
12942         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
12943
12944         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
12945
12946         * gtk/gtkclist.c (gtk_clist_draw): remove
12947
12948         * gtk/gtkentry.c (gtk_entry_draw): remove
12949
12950         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
12951
12952         * gtk/gtkfixed.c (gtk_fixed_draw): remove
12953
12954         * gtk/gtkframe.c (gtk_frame_draw): remove
12955
12956         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
12957
12958         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
12959
12960         * gtk/gtklayout.c (gtk_layout_draw): remove
12961
12962         * gtk/gtklist.c (gtk_list_draw): remove
12963
12964         * gtk/gtklistitem.c (gtk_list_item_draw): remove
12965
12966         * gtk/gtkmenu.c (gtk_menu_draw): remove
12967
12968         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
12969
12970         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
12971
12972         * gtk/gtknotebook.c (gtk_notebook_draw): remove
12973
12974         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
12975
12976         * gtk/gtkpacker.c (gtk_packer_draw): remove
12977
12978         * gtk/gtkrange.c (gtk_range_draw): remove
12979
12980         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
12981
12982         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
12983
12984         * gtk/gtktable.c (gtk_table_draw): remove
12985
12986         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
12987
12988         * gtk/gtktext.c (gtk_text_draw): remove
12989
12990         * gtk/gtktextview.c (gtk_text_view_draw): remove
12991
12992         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
12993
12994         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
12995
12996         * gtk/gtktree.c (gtk_tree_draw): remove
12997
12998         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
12999
13000         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
13001
13002         * gtk/gtkviewport.c (gtk_viewport_draw): remove
13003
13004         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
13005
13006         * gtk/gtkvscale.c (gtk_vscale_draw): remove
13007
13008         * gtk/gtkwindow.c (gtk_window_draw): remove
13009
13010 2000-20-01  Anders Carlsson  <andersca@gnu.org>
13011
13012         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
13013         a GtkToggleButton is both insensitive and active, it was being
13014         drawn by the GtkButton draw handler which doesn't check the
13015         state. Now it's calling gtk_toggle_button_paint instead.
13016         
13017 2000-12-01  Havoc Pennington  <hp@redhat.com>
13018
13019         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
13020         dangling pointers to the appearance attributes from the 
13021         line display
13022
13023         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
13024         width/height to mean "full width/height of drawable"
13025
13026         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
13027         click to select word/line
13028         
13029         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
13030         when getting log attrs. Get a slice, so that pixmaps and stuff
13031         are properly handled.
13032
13033         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
13034         paste into the selection (replaces selection now, previously
13035         crashed or added to selection). Reveals longstanding btree bug -
13036         select multiple lines, middle-click on the selection, boom. This
13037         isn't related to my changes though.
13038
13039         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
13040         PangoLogAttrs changes
13041         (gtk_entry_move_backward_word): ditto
13042
13043         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
13044         functions return bool whether the iter moved onto a
13045         dereferenceable position.
13046  
13047         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
13048         functions for motion in terms of display lines.
13049
13050         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
13051         get the buffer a mark is inside
13052         
13053 2000-12-01  Alexander Larsson  <alexl@redhat.com>
13054
13055         * gdk/linux-fb/Makefile.am:
13056         * modules/linux-fb/Makefile.am:
13057         Freetype 2 final uses freetype-config
13058
13059         * gdk/linux-fb/gdkpango-fb.c:
13060         Upgrade to use Freetype 2 final.
13061         More flexible support for font aliases, this also fixes a bug with
13062         GtkFontSelector, as the aliases must be visible in the font/family list,
13063         or GtkFontSelector reads uninitialized memory.
13064
13065 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
13066
13067         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
13068         XGetIMValues to properly terminate variable argument list, and do
13069         NULL return check for ic_values and xim_styles.
13070
13071         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
13072         Restore preedit state after XmbResetIC().
13073         
13074         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
13075         XvaCreateNestedList() should take XvaNestedList, but not
13076         XvaNestedList*.
13077
13078         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
13079         preedit_draw_callback, preedit_caret_callback): Match
13080         "preedit-changed" signal name to "preedit_changed" to be
13081         consistent to the spec.
13082
13083         * gtk/gtkimcontextsimple.c (check_table):
13084         Match "preedit-changed" to "preedit_changed" to be consistent
13085         to the spec.
13086
13087 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
13088
13089         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
13090         gc->clip_region == NULL>
13091
13092 2000-11-30  Tor Lillqvist  <tml@iki.fi>
13093
13094         Changes by Hans Breuer:
13095         
13096         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
13097         Dont't use negative width and height as max_hints. This fixes
13098         Owen's recent testgtk changes for win32.
13099
13100         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
13101         gdk_win32_hdc_release): These are exported and may be called with
13102         other drawable types than our GdkDrawableImplWin32 (?).
13103
13104         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
13105         so always #define USE_BACKING_STORE.
13106
13107         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
13108         of printf for debugging output.
13109
13110         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
13111         
13112         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
13113
13114         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
13115         declaration.
13116
13117         * gtk/gtktexttypes.h: Ditto.
13118
13119         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
13120         (GDK_VoidSymbol) also if in case of arg check failure.
13121
13122         * gtk/gtkimcontextsimple.c
13123         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
13124         position to the pointer, but to the variable it points to.
13125
13126         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
13127
13128         * gtk/gtk.def: Updates.
13129
13130 2000-11-29  Elliot Lee  <sopwith@redhat.com>
13131
13132         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
13133         GTK_TYPE_TREE_MODEL.
13134
13135 2000-11-29  Alexander Larsson  <alexl@redhat.com>
13136
13137         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
13138         Set the size of the font from the description.
13139         (gdk_text_width): Gross hack that calculates the width
13140         of text by text_length * size/2. This is necessary because
13141         GtkLabel does some ugly gtk_string_width call to calculate
13142         an good size.
13143         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
13144
13145 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
13146
13147         * docs/tutorial/gtk-tut.sgml: DND updates
13148
13149 2000-11-29  Alexander Larsson  <alexl@redhat.com>
13150
13151         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
13152         If you pass width or height == 0 to gdk_window_clear_area they
13153         should be calculated from the window size.
13154
13155 2000-11-29  Alexander Larsson  <alexl@redhat.com>
13156
13157         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
13158         a grab, but no grab-cursor, use the cursor from the grabbed
13159         window. (gdk_fb_window_send_crossing_events): Send normal
13160         enter/leave notifications if grab and owner_events == TRUE.
13161
13162 2000-11-29  Alexander Larsson  <alexl@redhat.com>
13163
13164         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
13165         Do implicit button grabs, even if the window doesn't
13166         want the event.
13167         (gdk_fb_window_send_crossing_events): If there is a
13168         grab, only the grabbed window gets normal enter/leave
13169         notifications. On ungrab go from grabbed window to current.
13170         Don't send any notification to b when propagating from c -> b.
13171         If setting a grab on window, don't set prev_window.
13172         (handle_mouse_input): Send enter/leave events to the window the
13173         mouse is over, not the grabbed one.
13174         
13175 2000-11-28  Elliot Lee  <sopwith@redhat.com>
13176
13177         * gdk/gdkregion-generic.c: Zap warning.
13178         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
13179         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
13180
13181 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
13182
13183         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
13184         The cursor should be hidden if it is part of either the
13185         source or destination region. Not only if it is in both.
13186         (gdk_window_set_transient_for): Silence warnings.
13187
13188 2000-11-28  Alexander Larsson  <alexl@redhat.com>
13189
13190         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
13191         The default mode in X is Pie Arcs, therefore that is
13192         what Gtk+ uses.
13193
13194 2000-11-28  Alexander Larsson  <alexl@redhat.com>
13195
13196         * gdk/linux-fb/gdkinput-ps2.c:
13197         Implement correct EnterNotify/LeaveNotify:
13198         (gdk_fb_window_send_crossing_events): New function that sends
13199         all GdkCrossingEvents from the last mouse-window to the specified
13200         destination.
13201         (gdk_fb_window_visibility_crossing): Removed function.
13202         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
13203         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
13204         instead of gdk_window_get_pointer() for better readability.
13205
13206         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
13207         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
13208
13209         * gdk/linux-fb/gdkprivate-fb.h:
13210         removed gdk_fb_window_visibility_crossing, added
13211         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
13212
13213         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
13214         New function that finds the least common ancestor of two windows.
13215         (gdk_window_show, gdk_window_hide):
13216         Use gdk_fb_window_send_crossing_events.
13217         (gdk_fb_window_move_resize): Send configure events to toplevel
13218         windows. Use gdk_fb_window_send_crossing_events.
13219
13220 2000-11-27  Havoc Pennington  <hp@redhat.com>
13221
13222         * gtk/gtkprivate.h (enum): Remove a trailing comma
13223
13224 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
13225
13226         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
13227         the "changed" callback of the adjustment.  We need to redraw the
13228         spin button's arrows when the adjustment's range changes.
13229         (adjustment_changed_cb): Draw the arrows.
13230         (gtk_spin_button_value_changed): Draw the arrows.
13231
13232 2000-11-23  Alexander Larsson  <alexl@redhat.com>
13233
13234         * gdk/linux-fb/gdkselection-fb.c:
13235         Initial selection implementation.
13236
13237         * gtk/gtkselection.c:
13238         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
13239         requestor in gtk_selection_request.
13240         
13241         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
13242         Added gdk_selection_property atom.
13243
13244         * gdk/linux-fb/gdkprivate-fb.h:
13245         Export _gdk_selection_window_destroyed.
13246         Removed mask_off_x/y from GdkCursorPrivateFB.
13247         Removed hbearing, added top, left to PangoFBGlyphInfo.
13248
13249         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
13250         Call _gdk_selection_window_destroyed
13251         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
13252         the root window has been created.
13253         (static_dx_hack, static_dy_hack, compare_draw_rects,
13254         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
13255         in region. They are already sorted. Instead just traverse them in
13256         reverse if draw_direction < 0.
13257         
13258         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
13259         Double-clicks must be sent after the normal button_press.
13260         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
13261         
13262         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
13263         Pass _gdk_fb_screen_gc instead of NULL.
13264
13265         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
13266         Initialize gdk_selection_property.
13267         (gdk_event_make): Remove unused code.
13268
13269         * gdk/linux-fb/gdkcursor-fb.c:
13270         Make the pixmap for the cursor the same size as the mask. Also remove
13271         the mask_off_x/y fields in GdkCursorPrivateFB and combine
13272         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
13273         Now the whole cursor is visible.
13274
13275         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
13276         Fix bug where xdest+height instead of ydest+height was used
13277         to calculate if the source and dest overlapped. This fixes the
13278         redraw bug when the main window in testgtk was scrolled when
13279         partially covered by a tall window.
13280         Copy rectangles in region in order depending on draw_direction.
13281         Also moved the draw_direction flipping of start_y and end_y into
13282         the gc functions, as this might not be what all of them want.
13283         (gdk_fb_draw_lines): Support dashed lines.
13284         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
13285         so that the text is positioned correctly (was 1 pixel high).
13286
13287         gdk/linux-fb/gdkgc-fb.c:
13288         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
13289         all lines were drawn a pixel to short. Also checked the default of
13290         the rest of the values, and they're the same as X now.
13291
13292         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
13293         Clean up pixel positioning of the glyphs. Just use bgy->top and
13294         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
13295         to all divisions to get correct rounding behaviour.
13296
13297         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
13298         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
13299         Moved start_y/end_y flip into draw_drawable implementations.
13300         Flip also x rendering when draw_direction < 0.
13301         Remove unneccesary multiply with draw_direction.
13302
13303 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
13304
13305         * docs/tutorial/gtk-tut.sgml:
13306           - get rid of gtk_toggle_button_toggled FUD
13307           - start DND section - needs work - based on:
13308                 http://wolfpack.twu.net/docs/gtkdnd/
13309
13310 2000-11-22  Alexander Larsson  <alexl@redhat.com>
13311
13312         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
13313         Correct calculation of font metrics. Now GtkEntrys have sane
13314         size.
13315
13316 2000-11-22  Alexander Larsson  <alexl@redhat.com>
13317
13318         * gdk/gdktypes.h:
13319         Add new type GdkSpan
13320         
13321         * docs/reference/gdk/gdk-sections.txt,
13322         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
13323         gdk/gdkregion.h:
13324         Implement and document gdk_region_spans_intersect_foreach.
13325
13326         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
13327         Add new file gdkrender-fb.c which contains all core
13328         rendering code.
13329         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
13330         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
13331         (optimized rectangle fillers).
13332
13333         * gdk/linux-fb/gdkdrawable-fb2.c:
13334         Move all rendering code to gdkrender-fb.c.
13335         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
13336         Use the new span intersection functions in gdk_fb_fill_spans.
13337         gdk_fb_draw_rectangle() clips filled rectangles and calls
13338         gc->fill_rectangle with the result.
13339         gdk_fb_fill_spans() gets extra argument "sorted".
13340
13341         * gdk/linux-fb/gdkevents-fb.c:
13342         Remove unused includes and defines.
13343         New function gdk_fb_get_time() to get correct time for events.
13344
13345         * gdk/linux-fb/gdkinput-ps2.c:
13346         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
13347         Make sure to set the time of all events.
13348
13349         * gdk/linux-fb/gdkmain-fb.c:
13350         Use gdk_fb_get_time ().
13351
13352         * gdk/linux-fb/gdkprivate-fb.h:
13353         New virtual GC calls: fill_span & fill_rectangle.
13354         Export gdk_fb_get_time().
13355         gdk_fb_fill_spans() gets extra argument "sorted".
13356
13357         * gdk/linux-fb/mi*.c:
13358         Use GdkSpan instead of GdkRectangle.
13359         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
13360         from XFree 4 source)
13361         
13362 2000-11-22    <jrb@redhat.com>
13363
13364         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
13365         reversing the order in an if statement will do.  Doing so managed
13366         to make the treemodelsort half work.  Other half will follow after
13367         I get the insert function fully fixed.
13368
13369 2000-11-21  Elliot Lee  <sopwith@redhat.com>
13370         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
13371         more than 2 bits. Besides, I need to implement an evil hack. :)
13372
13373 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
13374
13375         * docs/tutorial/gtk-tut.sgml: minor corrections
13376
13377 2000-11-20  Jonathan Blandford <jrb@redhat.com>
13378         * gtk/gtktreemodelsort.h: Add convertion functions to let you
13379           convert to and from relative path's and iters.
13380
13381         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
13382           testing sorting functions a bit better.  Currently broken -- will
13383           fix in morning.
13384
13385 2000-11-20  Havoc Pennington  <hp@redhat.com>
13386
13387         * gtk/gtkwidget.c: Documented a bunch of functions in here
13388         (gtk_widget_realize): Warn if you try to realize
13389         a widget with no parent that isn't a toplevel
13390         (gtk_widget_intersect): return a gboolean
13391
13392 2000-11-20  Havoc Pennington  <hp@redhat.com>
13393
13394         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
13395         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
13396         scrolling to be implemented in GDK to finish. Also, right now
13397         we just size_allocate all children on every layout change,
13398         which is pretty lame. Test commented out of testtext.c, 
13399         until it works better.
13400
13401 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
13402
13403         * gdk/linux-fb/gdkdrawable-fb2.c:
13404         Removed unused arguments from gdk_fb_drawable_get_pixel().
13405
13406         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
13407         Renamed fidur specific mouse packet data in MouseDevice to
13408         generic. Used it in ps2 mouse handling code to avoid blocking
13409         reads.
13410
13411 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
13412
13413         * demos/gtk-demo/main.c: Changed to have the list become
13414         non-italic when the demo window is destroyed through an external
13415         event (like a close button).  Doing so found three bugs in the
13416         widget.
13417
13418         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
13419
13420         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
13421         we actually set the cell.
13422
13423         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
13424
13425         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
13426         free a leaked path.  Thanks memprof.
13427
13428 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
13429
13430         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
13431         off-by-one error when destroying allocated segments
13432         on failure. (Elliot)
13433
13434 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
13435
13436         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
13437         memleaks found by Evan Martin.
13438
13439 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
13440
13441         * Released 1.3.2
13442         
13443         * NEWS: Updates for 1.3.2
13444
13445 2000-11-17  Tor Lillqvist  <tml@iki.fi>
13446
13447         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
13448         but in general for window system specific events.
13449
13450         * gtk/gtk.def
13451         * gtk/makefile.mingw.in
13452         * gtk/makefile.msc.in: Update.
13453         
13454         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
13455
13456 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
13457
13458         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
13459         distribute gtk.immodules.
13460
13461         * gtk/Makefile.am (install-data-local): Don't install the
13462         gtk.immodules file created for the uninstalled modules;
13463         instead run gtk-query-immodules after install
13464
13465 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13466
13467         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
13468         -rpath to the right install location.
13469
13470         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
13471         -export-dynamic.
13472
13473         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
13474         properly.
13475
13476 2000-11-15  Havoc Pennington  <hp@pobox.com>
13477
13478         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
13479         patch from Mikael Hermansson to temporarily stop blinking while
13480         the user is using the keyboard to type or navigate. 
13481
13482         Also, when blinking, stay on for longer than we stay off. Also,
13483         return from start_cursor_blink if !cursor_visible, to save
13484         checking that flag all over the place before we call
13485         start_cursor_blink.
13486
13487 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
13488
13489         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
13490         only contain a "fontset" line, which is now ignored.
13491
13492         * gtk/gtkentry.c (gtk_entry_button_release): Make 
13493         double-click-to-select-word work.
13494         
13495 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
13496
13497         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
13498         Don't move back one char when we are actually at the end of the 
13499         paragraph.
13500
13501 2000-11-15  Robert Brady  <robert@suse.co.uk>
13502
13503         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
13504         'o' < 'p'.
13505         
13506         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
13507         bind_textdomain_codeset.
13508
13509         (gtk_init_check): Make the warning about translating default:LTR
13510         sterner.
13511         
13512 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
13513
13514         * **/Makefile.am : remove unecessary rules for win32-specific
13515         config-substituted targets. If you want these rules, use
13516         --enable-maintainer-mode (called automatically by autogen.sh).
13517         Stops a lot of unneccessary make-time warnings.
13518
13519         * gtk/gtktext{layout,display}.c: Factor in total width as
13520         well as screen when figuring alignment for word-wrap as well as
13521         no wrap; this is necessary to handle lines that cannot be wrapped
13522         at all.
13523
13524 2000-11-15  Havoc Pennington  <hp@redhat.com>
13525
13526         * gtk/testtext.c: Implement essential color cycling feature
13527
13528 2000-11-15  Havoc Pennington  <hp@redhat.com>
13529
13530         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
13531         when we invalidate the main window.
13532
13533         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
13534         GtkTextView will now invalidate the side windows for us when text
13535         changes.
13536
13537 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
13538
13539         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
13540         unconditionally, since we may need to update the horizontal
13541         scrollbars even if the height didn't change.
13542
13543         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
13544         the extra attrs, since some of them affect size.
13545
13546         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
13547         x_offset correctly.
13548
13549 2000-11-15  Havoc Pennington  <hp@redhat.com>
13550
13551         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
13552         don't move the first line out into the margin, instead move the
13553         whole paragraph in order to make space for the first line within 
13554         the margin
13555
13556 2000-11-15  Havoc Pennington  <hp@redhat.com>
13557
13558         * gtk/gtktextview.c (changed_handler): offset redraw rect by
13559         xoffset in addition to yoffset, so horizontal scrolling doesn't
13560         break redraws
13561
13562 2000-11-15  Havoc Pennington  <hp@redhat.com>
13563
13564         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
13565         from the cursor
13566         (render_layout_line): fix reversed test that caused weird
13567         underlines to get drawn
13568
13569 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
13570
13571         * gdk/linux-fb/gdkprivate-fb.h:
13572         Fix debug macros.
13573         
13574 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
13575
13576         * gdk/linux-fb/gdkprivate-fb.h:
13577         Added virtual functions set_pixel, get_color,
13578         fill_span and draw_drawable to the GC.
13579         Added global _gdk_fb_screen_gc to use instead of
13580         NULL when drawing to the screen.
13581         Added _gdk_fb_gc_calc_state() prototype.
13582
13583         * gdk/linux-fb/gdkgc-fb.c:
13584         Call _gdk_fb_gc_calc_state() on any gc state change.
13585
13586         * gdk/linux-fb/gdkglobals-fb.c:
13587         Add _gdk_fb_screen_gc
13588                 
13589         * gdk/linux-fb/gdkdrawable-fb2.c:
13590         _gdk_fb_gc_calc_state() calculates best functions
13591         for the GC state and depth.
13592         Moved bpp specialized code to separate functions.
13593         Added optimized 24 bpp AA draw_drawable.
13594
13595         * gdk/linux-fb/gdkevents-fb.c:
13596         Silence gcc warning.
13597
13598         * gdk/linux-fb/gdkimage-fb.c:
13599         Use _gdk_fb_screen_gc
13600
13601         * gdk/linux-fb/gdkwindow-fb.c:
13602         Init and use _gdk_fb_screen_gc
13603
13604         * gdk/linux-fb/mitypes.h:
13605         Remove unused types.
13606
13607 2000-11-14  Havoc Pennington  <hp@pobox.com>
13608
13609         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
13610         to pixels
13611
13612 2000-11-14  Havoc Pennington  <hp@pobox.com>
13613
13614         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
13615
13616         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
13617         unknown char, no real reason we were using a variable. 
13618         Remove gtk_text_unknown_char variable. Fix all the text widget
13619         files accordingly.
13620
13621         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
13622         since the Unicode spec seems to prefer that character for our
13623         purposes.
13624
13625 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
13626
13627         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
13628         value of g_getenv() isn't freeable, so g_strdup it.
13629
13630         * modules/input/inuktitut.c: Inuktitut input method.
13631
13632         * modules/input/Makefile.am: Build this.
13633         
13634 2000-11-14  Elliot Lee  <sopwith@redhat.com>
13635
13636         * gtk/Makefile.am: Install gtk.immodules, needed for operation
13637         of gtk programs.
13638
13639 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
13640
13641         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
13642         reversed > that was causing Home to go to end of previous line.
13643
13644         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
13645         modified-keypresses (leave for bindings.)
13646
13647         * modules/input/Makefile.am: Remove useless -export-dynamic
13648         from module LDFLAGS.
13649
13650 2000-11-14  Havoc Pennington  <hp@redhat.com>
13651
13652         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
13653         higher.
13654
13655         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
13656         account. Also, render rise, underline, background, etc. for
13657         pixbufs as well as text. Also, draw underlines one pixel higher.
13658
13659         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
13660         PangoAttribute for the rise, so it gets drawn properly. Also,
13661         add the GtkTextAppearance attribute for pixbuf/widget segments
13662         as well; we should go ahead and have rise, underline, background,
13663         stipple work for those
13664
13665         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
13666         Pango
13667
13668 2000-11-15  Tor Lillqvist  <tml@iki.fi>
13669
13670         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
13671
13672         * gtk/gtk.def: Update.
13673
13674         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
13675         included.
13676         (gtk_rc_get_im_module_file): Use run-time installation directory
13677         on Win32.
13678
13679         * gdk/win32/rc/gdk.rc: Remove.
13680         * gdk/win32/rc/gdk.rc.in: New file.
13681         * gdk/win32/rc/Makefile.am: New file
13682         * gdk/win32/Makefile.am: Corresponding changes.
13683
13684         * gtk/gtk.rc: Remove.
13685         * gtk/gtk-win32.rc.in: New file.
13686         * gtk/Makefile.am: Corresponding changes.
13687
13688         * configure.in: Corresponding changes.
13689
13690         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
13691         has a built gtkcompat.h. Developers using CVS code on Win32 can
13692         hand-edit it from gtkcompat.h.in.
13693
13694         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
13695         gtkcompat.h from gtkcompat.h.win32.
13696
13697 2000-11-14  Havoc Pennington  <hp@redhat.com>
13698
13699         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
13700         to default to GDK_ACTION_MOVE if the drag is within a single
13701         widget. Defaults to GDK_ACTION_COPY between widgets.
13702
13703 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
13704
13705         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
13706
13707         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
13708
13709         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
13710         srcdir != builddir
13711
13712         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
13713
13714         * configure.in (GTK_VERSION): Up to 1.3.2
13715
13716         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
13717         gtkimcontextxim.h
13718
13719         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
13720         missing doc comment.
13721
13722 2000-11-14  Alexander Larsson  <alexl@redhat.com>
13723
13724         * modules/linux-fb/basic.c:
13725         Use the glib iconv wrappers.
13726
13727 2000-11-13  Havoc Pennington  <hp@pobox.com>
13728
13729         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
13730         still more bugs.
13731
13732         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
13733         scroll the GdkWindows before realization.
13734
13735 2000-11-13  Havoc Pennington  <hp@redhat.com>
13736
13737         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
13738         where GC didn't always get updated properly
13739
13740         * demos/gtk-demo/textview.c (create_tags): Use subattributes
13741         of fonts instead of setting the entire font
13742
13743         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
13744         setting entire font
13745
13746         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
13747
13748         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
13749         a bunch of individually-settable font attributes. You can still 
13750         use the "font" and "font_desc" args, they just set all the font
13751         attributes at once.
13752
13753 2000-11-13 Elliot Lee <sopwith@redhat.com>
13754
13755         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
13756
13757 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
13758
13759         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
13760         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
13761
13762         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
13763         work better.
13764
13765 2000-11-13  Havoc Pennington  <hp@redhat.com>
13766
13767         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
13768         the module file.
13769
13770         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
13771         dest->language
13772
13773         * gtk/testtext.c: Test pixels above/below/inside paragraphs
13774         settings
13775
13776         * gtk/gtktextview.c: Implement object args and setters/getters for
13777         all the aspects of the GtkTextAttributes that are not set from
13778         GtkWidget attributes. This is spacing, justification, margins,
13779         etc.
13780
13781         (gtk_text_view_set_arg)
13782         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
13783         args
13784         (gtk_text_view_class_init): Add args for justify, left_margin,
13785         right_margin, indent, and tabs
13786         
13787
13788         * gtk/gtktextlayout.c (set_para_values): fix to display indent
13789         attribute properly
13790
13791         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
13792         replace with indent attribute
13793
13794         * gtk/gtktextlayout.c (set_para_values): multiply indent by
13795         PANGO_SCALE
13796
13797         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
13798         rearranging code to do that
13799         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
13800         i.e. don't subtract the top_margin first, just to keep
13801         all margin-futzing in one place.
13802
13803         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
13804
13805         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
13806         special case of last line, Pango now handles this itself.
13807         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
13808         Y coordinate
13809         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
13810         (find_display_line_above): wasn't moving the byte index as it
13811         iterated over lines, so always returned byte 0. Also, port to use
13812         PangoLayoutIter.
13813         (find_display_line_below): same problem as
13814         find_display_line_above. Also, port to use PangoLayoutIter.
13815
13816 2000-11-13  Alexander Larsson  <alexl@redhat.com>
13817
13818         * gdk/linux-fb/*.[ch]:
13819         Massive reindent to gtk+ standard. My hands hurt.
13820
13821         * gdk/linux-fb/gdkcolor-fb.c:
13822         Move GdkColorPrivateFB from inherited to windowing_data
13823
13824         * gdk/linux-fb/gdkcursor-fb.c:
13825         _gdk_cursor_new_from_pixmap made static
13826
13827         * gdk/linux-fb/gdkdnd-fb.c:
13828         GdkDragContextPrivate moved to windowing_data
13829
13830         * gdk/linux-fb/gdkdrawable-fb2.c:
13831         Removed endian.h, use glib endianness macros instead
13832         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
13833         and GDK_DRAWABLE_IMPL_FBDATA
13834
13835         * gdk/linux-fb/gdkfont-fb.c:
13836         Add empty gdk_font_load(). Needed for linking of Gtk+.
13837
13838         * gdk/linux-fb/gdkimage-fb.c:
13839         Removed endian.h, use glib endianness macros instead
13840         Moved GdkImagePrivateFB to windowing_data
13841         gdk_image_new_bitmap didn't always allocate enough
13842         memory.
13843
13844         * gdk/linux-fb/gdkinput-ps2.c:
13845         Added semi-working support for MS serial mice.
13846
13847         * gdk/linux-fb/gdkprivate-fb.h:
13848         s/GdkWindowPrivate/GdkWindowObject/
13849         Removed GdkWindowPrivate typedef
13850         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
13851         Removed GDK_DRAWABLE_P
13852         Move GdkColorPrivateFB from inherited to windowing_data
13853         Moved GdkImagePrivateFB to windowing_data
13854
13855         * gdk/linux-fb/gdkvisual-fb.c:
13856         Removed some unused debug code.
13857
13858         * gdk/linux-fb/gdkwindow-fb.c:
13859         Use stock cursors instead of including X headers.
13860         s/GdkWindowPrivate/GdkWindowObject/
13861
13862         * gdk/linux-fb/mitypes.h:
13863         Removed unused types.
13864
13865         * modules/linux-fb/basic.c:
13866         Use the pango fribidi wrappers.
13867
13868 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13869
13870         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
13871         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
13872         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
13873         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
13874         GEqualFunc where applicable.
13875         
13876         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
13877         pango_font_description_equal as changed in pango.
13878         
13879         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
13880
13881         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
13882
13883         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
13884
13885         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
13886
13887         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
13888
13889         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
13890
13891         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
13892         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
13893
13894         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
13895         gtk_rc_styles_compare -> gtk_rc_styles_equal.
13896
13897 2000-11-12  Havoc Pennington  <hp@pobox.com>
13898
13899         * demos/gtk-demo/Makefile.am (democodedir): change demo install
13900         dir to datadir/gtk+-2.0/demo
13901
13902         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
13903         sorts of text widget and Pango font bugs. Urgh.
13904
13905         * demos/gtk-demo/Makefile.am (demos): Add textview.c
13906
13907         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
13908         tree that you should double click to see the demo. Fix 
13909         types of variables to reflect changed return values from 
13910         GtkTreeStore and GtkTreeViewColumn constructors.
13911
13912         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
13913         newly-created buffer to prepare for GObject semantics
13914
13915         * gtk/testtext.c: don't leak the buffer with GObject semantics
13916
13917         * gtk/testtextbuffer.c: ditto
13918         
13919 2000-11-12  Havoc Pennington  <hp@pobox.com>
13920
13921         Rename this testgtk to gtk-demo to avoid confusion, and 
13922         install it so people can use it as a supplement to 
13923         the documentation.
13924         
13925         * demos/gtk-demo: Moved from demos/testgtk
13926
13927         * demos/testgtk: Removed
13928
13929         * configure.in: make Makefile in gtk-demo
13930         
13931         * demos/gtk-demo/Makefile.am: Install sample source to 
13932         datadir/gtk-demo (maybe there's a better place?), and 
13933         rename the binary to gtk-demo
13934         
13935         * demos/gtk-demo/main.c (load_file): Load installed sample
13936         source if source isn't found in pwd.
13937
13938 2000-11-09  Havoc Pennington  <hp@pobox.com>
13939
13940         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
13941         argument to set the char displayed when visibility == FALSE
13942         (gtk_entry_create_layout): If !entry->visible, replace 
13943         all chars with the "invisible char"
13944
13945         * gtk/testgtk.c: Test the invisible_char deal
13946         
13947 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
13948
13949         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
13950         can't get a native font in the right encoding.
13951
13952 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
13953
13954         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
13955         respectively.
13956
13957 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
13958
13959         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
13960         Fix warning when moving between paragraphs.
13961
13962         * gtk/gtkentry.[ch]: Change move => move_cursor, 
13963         delete => delete_from_cursor, insert => insert_at_cursor
13964
13965 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
13966
13967         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
13968
13969         * modules/input/imthai-broken.c: A Thai input method for use if
13970         Thai keys are really generating Latin1 keysyms.
13971
13972         * modules/input/Makefile.am: Build these.
13973
13974 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
13975
13976         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
13977         g_filename_{to,from}_utf8 now takes an extra parameter.
13978
13979         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
13980         strftime into UTF-8.
13981
13982         (column_from_x, gtk_calendar_paint_day_names): Support RTL
13983         calendars.
13984
13985         (gtk_calendar_paint_day_names): Draw day names in the right 
13986         place.
13987         
13988 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
13989
13990         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
13991         problem with using result of g_get_charset() backwards -
13992         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
13993
13994         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
13995         negative min_width/height and max_width/height to
13996         mean "requisition"; this allows setting a window
13997         to be user-resizable in only one direction easily.
13998
13999         * gtk/testgtk.c (create_main_window): Remove hard-coded
14000         usize - set a default size in the vertical direction.
14001
14002 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
14003
14004         * gtk/gtkrange.c: Add some missing casts. Support 
14005         2 and 3 button clicks on the arrows to mean 
14006         "move by pages" and "jump to end". (Like gtkspinbutton)
14007
14008 2000-11-12 Hans Breuer <Hans@Breuer.Org>
14009
14010         * gdk/win32/makefile.msc : reflect build module changes
14011
14012         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
14013         from GdkPixmap*, cast implementation member instead.
14014
14015         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
14016         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
14017         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
14018         more Gdi functions return value checking. 
14019         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
14020         GdkImagePrivateWin32 *.
14021
14022         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
14023         menus useable again. Add #pragma message to keep reminded on this issue.
14024         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
14025         windows. This allows to enable backing store on Win32!
14026
14027         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
14028         in drawable is of impl type. Correct specific type checks appropriate.
14029  
14030         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
14031         GDK_WINDOW_DESTROYED before allocating new resources.
14032
14033         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
14034
14035         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
14036         (gdk_window_foreign_new) initialize parent handle.
14037         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
14038
14039         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
14040         Let the GDI invalidate the window on MoveWindow call to fix scrolling
14041         problems (e.g. main buttons in testgtk). 
14042
14043 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
14044
14045         * gtk/gtkentry.c (gtk_entry_key_press): Call 
14046         gtk_widget_activate for GDK_Return.
14047
14048         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
14049         of preedit cursor position.
14050
14051 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
14052
14053         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
14054         static.
14055
14056 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
14057
14058         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
14059         out support for multiple locales; that simple doesn't
14060         work reliably with current Xlib
14061
14062         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
14063         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
14064         Add support for positioning the cursor within the preedit string.
14065
14066 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
14067
14068         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
14069         at XIM input method module.
14070
14071         * gtk/gtktextview.c: Check for bindings after passing
14072         events to im context filter.
14073
14074 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
14075
14076         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
14077         empty attribute lists properly.
14078
14079 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
14080
14081         * gtk/queryimmodules.c (main): Return non-zero exit
14082         status if errors were encountered querying any
14083         modules.
14084
14085         * modules/input/Makefile.am (moduledir): remove
14086         leftover bin program target.
14087
14088         * docs/make-todo: Fix typo in error message.
14089
14090 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
14091
14092         * configure.in: Add modules/input/Makefile
14093
14094 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
14095
14096         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
14097         don't include gtkthemes.h.
14098
14099         * gtk/testgtk.c gtk/testtext.c: Set environment variables
14100         to point
14101
14102         * gtk/Makefile.am: Add new .c and .h files, build 
14103         gtk-query-immodules and use it to create a gtk.immodules
14104         file for use of test programs.
14105
14106         * gtk/gtkpreview.c: remove extra blank line.
14107
14108 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
14109
14110         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
14111         Add the ability to add extra tables beyond the default
14112         one, and also the ability to have compose sequences 
14113         that are prefixes of other compose sequences. 
14114
14115         * gtk/gtkimcontextsimple.c: Export a preedit string which
14116         consists of possible candidates for keystrokes that have
14117         been entered but not yet committed.
14118
14119         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
14120         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
14121
14122         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
14123         Add a function to add input-method switching menu items
14124         to a menu.
14125
14126         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
14127         when switching input methods.
14128
14129         * gtk/gtkimcontextsimple.[ch]: Change the format of
14130         the compose table to allow compose tables of different
14131         lengths / sequence.
14132
14133 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
14134
14135         * gtk/gtkimmodule.[ch]: Support routines for loading
14136         GtkIMContext implementations dynamically at runtime.
14137
14138         * modules/input/imcyrillic-translit.c: A sample input
14139         method (based on GtkIMContextSimple with an extra table),
14140         which demonstrates preedit strings and the module
14141         system for input modules
14142
14143         * gtk/queryimmodules.c: Program to query the available
14144         input modules and write the results into a file.
14145          
14146         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
14147         extra config options "im_module_file" (cache file for
14148         input method modules), and "im_module_path" - path
14149         to look for modules when generating cache file.
14150
14151         This doesn't scale.
14152
14153 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
14154
14155         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
14156         generic code from gtkthemes into a new abstraction
14157         GtkModule which has the logic for implementing
14158         a loadable module which implements a number of 
14159         GObject types.
14160
14161 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
14162
14163         * gtk/gtkeditable.[ch]: Convert GtkEditable from
14164         a class into an interface  
14165         
14166         * gtk/gtkoldeditable.[ch]: Move the old editable
14167         implementation into here, so legacy widgets can
14168         still rely on the implemenation. GtkOldEditable
14169         exports GtkEditable. Make selection handling
14170         code use new text conversion functions (and
14171         handle UTF-8 as a side-effect). Use GtkClipboard
14172         for CLIPBOARD.
14173
14174         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
14175         Adopt to match above changes.
14176
14177         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
14178         avoid GtkOldEditable implementation. Restructure
14179         to reduce number of places that modify state directly.
14180         Move to GtkBindingSet. Display the preedit string.
14181         Queue recomputation of PangoLayout and scroll position
14182         to improve effiency of doing complex changes naively.
14183         Add a menu with cut/copy/paste and input method selection.
14184
14185 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
14186
14187         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
14188         to set preedit string and attributes; display preedit string by
14189         inserting string and attributes at cursor when creating the
14190         GtkTextLineDisplay.
14191
14192         * gtk/gtktextlayout.c: Move all conversions between byte
14193         positions in PangoLayout and GtkTextIter into new functions
14194         line_display_iter_to_index/index_to_iter that properly
14195         handle the preedit string.
14196
14197         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
14198         it to return const char * (eventually will end up
14199         as GCONST char *, most likely.)
14200
14201         * gtk/gtktextview.[ch]: Handle the preedit string, call
14202         gtk_im_context_reset() as necessary, add a menu to switch
14203         input methods.
14204         
14205         * gtk/gtktextlayout.[ch]: Remove useless
14206         gtk_text_layout_get_log_attrs() function.
14207
14208 2000-11-11  Tor Lillqvist  <tml@iki.fi>
14209
14210         * gdk/gdk.def
14211         * gtk/gtk.def: Update.
14212
14213         * gdk/win32/*.c: Add last argument to g_type_register_static()
14214         calls.
14215
14216         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
14217
14218         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
14219         generated by older wheel mouse drivers. Get the correct y
14220         coordinate from WM_MOUSEWHEEL messages.
14221
14222         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
14223         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
14224         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
14225         Debugging functions.
14226
14227         * gdk/win32/gdkprivate-win32.h: Declare them.
14228
14229         * gdk/win32/gdkinput-win32.h: Add declaration for
14230         gdk_input_window_destroy().
14231
14232         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
14233
14234 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
14235
14236         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
14237         function to help handle keeping things in sync.
14238
14239 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
14240
14241         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
14242         BOXED marshallers.
14243
14244         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
14245         (gtk_list_store_class_init): use the new BOXED marshallers.
14246
14247         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
14248         new_with_values to new_with_types.
14249         (gtk_tree_store_get_column_type): add this.
14250         (gtk_tree_store_class_init): use the new BOXED marshallers.
14251
14252         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
14253         mirror some POINTER marshallers.
14254
14255 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
14256
14257         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
14258         allow more interesting iterators.  Also, made the lifecycle of
14259         iterators more explicit.
14260
14261         * gtk/gtktreemodelsort.[ch]: New model for sorting.
14262
14263         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
14264         types.
14265
14266 2000-11-09  Alexander Larsson  <alexl@redhat.com>
14267
14268         * demos/testgtk/menus.c:
14269         Changes to make the new testgtk compile after
14270         gtk_menu_append was removed.
14271
14272         * gdk/linux-fb/gdkdrawable-fb2.c
14273         (gdk_fb_get_depth, gdk_fb_get_visual,
14274         gdk_drawable_impl_fb_class_init): Implement
14275         these drawable functions. Now GtkImages work again.
14276
14277         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
14278
14279         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
14280         
14281         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
14282         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
14283         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
14284         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
14285
14286 2000-11-08  Havoc Pennington  <hp@pobox.com>
14287
14288         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
14289         visible_set args, don't know where these had gone, I thought they
14290         used to be there
14291
14292         * gtk/testtext.c: Add a menu item to apply invisibility tag;
14293         now we can test the feature and see that it's totally broken.
14294
14295 2000-11-08  Havoc Pennington  <hp@pobox.com>
14296
14297         Make DND copy pixbufs and tags when source and target share a 
14298         tag table.
14299         
14300         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
14301         in-process GTK_TEXT_BUFFER_CONTENTS target
14302         (gtk_text_view_drag_data_received): Paste from
14303         GTK_TEXT_BUFFER_CONTENTS if we receive it.
14304
14305 2000-11-08  Alexander Larsson  <alexl@redhat.com>
14306
14307         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
14308         API changes.
14309
14310         * gtk/gtkmenu.c: Add support for scrolling menus.
14311         Remove gtk_menu_append/prepend/insert, these have been moved to
14312         gtkcompat.h as #defines.
14313
14314         * gtk/gtkcompat.h.in:
14315         Add compatibility #defines for gtk_menu_append/prepend/insert
14316
14317         * gtk/gtkmenu.h: Add data needed for scrolling menus.
14318         GtkMenuPositionFunc gets an extra argument push_in.
14319         gtk_menu_append/prepend/insert removed.
14320         
14321         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
14322         positioning behaviour to fit to scrolling menus.
14323
14324         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
14325         into menuitem->submeny. That is wrong, and broke torn
14326         off submenus of torn off menus, since they were unrealized
14327         when the first menu was unrealized.
14328
14329         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
14330         gtk_menu_shell_select_item() since these need to be overridden in
14331         GtkMenu.
14332
14333         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
14334         positioning behaviour to fit to scrolling menus.
14335         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
14336         the current item so that it is prelighted when the menu pops up.
14337         This is a workaround to the fact that the menu doesn't get the
14338         initial enter event (due to grabs).
14339
14340         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
14341         s/gtk_menu_append/gtk_menu_shell_append/
14342
14343         * gtk/gtknotebook.c:
14344         s/gtk_menu_insert/gtk_menu_shell_insert/
14345
14346         * gtk/testgtk.c (create_menu, create_menus):
14347         Create the first menu with 50 items so that menu scrolling
14348         can be tested.
14349         
14350         
14351         Patch from Jonathan Blandford  <jrb@redhat.com>
14352
14353         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
14354         system to handle size requests.  First, we ask what the size of
14355         the toggle is.  Then, when allocating the size, we allocate the
14356         toggle_size first.  This way we can have multiple menu-item
14357         classes w/o needing a seperate class for each.
14358
14359         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
14360         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
14361
14362         * gtk/gtkcheckmenuitem.c
14363         (gtk_check_menu_item_toggle_size_request): New function to handle
14364         the toggle size-request.
14365
14366 2000-11-07  Havoc Pennington  <hp@redhat.com>
14367
14368         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
14369         Half-ass somewhat fix this function, so that scrolling to the
14370         insertion point works. Pango hacking is in the future to really
14371         fix it.
14372
14373         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
14374         length of data, no longer used.
14375
14376         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
14377         method contents in here, get rid of destroy method
14378         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
14379         that were backward. Remove debug spew.
14380         (cut_or_copy): Make the clipboard work with insert_range to
14381         preserve tags and pixbufs, not just the primary selection.
14382
14383 2000-11-07  Havoc Pennington  <hp@redhat.com>
14384
14385         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
14386         to gtk_text_mark_get_visible
14387
14388         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
14389         bug that was generating an invalid iterator
14390
14391         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
14392         ensure_char_offsets() in front of code placing the iter in an
14393         invalid state.
14394
14395         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
14396         make override_location arg const
14397         (paste): Replace the selection if we paste into the 
14398         current selection
14399
14400         * gtk/gtkselection.h: Remove "GtkSelectioData"
14401         (struct _GtkSelectionData): move the definition here.
14402
14403         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
14404         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
14405
14406         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
14407
14408         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
14409         (gtk_text_buffer_insert_range_interactive): implement
14410         (gtk_text_buffer_get_tags): Remove, replaced by
14411         gtk_text_iter_get_tags()
14412
14413         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
14414         limit parameter, to avoid infinite linear scan.
14415         (gtk_text_iter_backward_search): Add search limit
14416         (gtk_text_iter_forward_find_char): Add search limit
14417         (gtk_text_iter_backward_find_char): Add search limit
14418
14419 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
14420
14421         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
14422         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
14423         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
14424         gdk/linux-fb/gdkwindow-fb.c:
14425         use g_object_new() instead of g_type_create_instance() which
14426         is a private function for fundamental type implementations.
14427
14428         * gdk/linux-fb/gdkinput-ps2.c:
14429         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
14430         instead just store the current modifier state. Add a (somewhat broken)
14431         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
14432         Rename exported function gdk_input_ps2_get_mouseinfo to
14433         gdk_input_get_mouseinfo.
14434
14435         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
14436         gdk/linux-fb/gdkwindow-fb.c:
14437         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
14438         
14439
14440 2000-11-02  Havoc Pennington  <hp@redhat.com>
14441
14442         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
14443         use stock buttons. Should be 100% source compatible, appropriate
14444         filesel fields now point to dialog->vbox and dialog->action_area.
14445         On the bizarre side, dialog->action_area and filesel->action_area
14446         are not the same widget.
14447         (gtk_file_selection_init): Put some padding around the selection
14448         entry, so it isn't touching the GtkDialog separator.    
14449
14450         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
14451         use stock buttons, etc. Should also be source compatible.
14452         Set the dialog default title in _init not _new().
14453         
14454         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
14455         Use stock buttons; don't put a button box inside the existing
14456         dialog button box. Don't bother with push/pop colormap anymore.
14457
14458         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
14459         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
14460         for message dialog, and necessary for the font selection and color
14461         selection with help and apply buttons.
14462         
14463         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
14464         to the created button widget. Set GTK_CAN_DEFAULT on the button.
14465         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
14466         between buttons, put less padding around the action area.
14467         (gtk_dialog_run): Exit on unmap rather than on destroy. 
14468         This will also exit the loop if the widget is hidden.
14469         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
14470         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
14471         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
14472         special-case delete event.
14473
14474         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
14475         formatting
14476         
14477 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
14478
14479         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
14480         button to temporarily disable position recording in the
14481         "saved position" test.
14482
14483 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
14484
14485         * gtk/gtkthemes.c: added compat code that temporarily implements
14486         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
14487         going to be revamped by owen's upcoming GtkModule patches, but
14488         untill then people want gtk to build, right? ;)
14489
14490 2000-11-04  Havoc Pennington  <hp@pobox.com>
14491
14492         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
14493         list
14494
14495         * docs/Changes-2.0.txt: Add note about
14496         gtk_container_get_toplevels()
14497
14498         * gtk/gtktextview.h: formatting
14499         
14500         * gtk/gtktextview.c: don't start descriptions with "Returns",
14501         confuses gtk-doc
14502
14503 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
14504
14505         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
14506         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
14507
14508 2000-11-03  Havoc Pennington  <hp@redhat.com>
14509
14510         * gtk/gtktexttagtable.c: Docs
14511         (gtk_text_tag_table_size): return a signed int
14512
14513         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
14514         (gtk_text_tag_event): make the event_object a GObject
14515
14516         * gtk/gtktextview.c: Write API docs for all functions.
14517
14518         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
14519         for gtk_text_view_get_window_type() called on one of the private
14520         windows.
14521
14522         * gtk/gtktextview.c: Instead of accessing text_view->buffer
14523         directly, call get_buffer() which demand-creates a default
14524         buffer. So gtk_text_view_new() can be used to create a view with a
14525         default buffer in it, if you just want an empty text box users can
14526         put data in. Useful for GUI builders also.
14527
14528 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
14529
14530         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
14531         the charset encodign portion MUST be in lowercase.
14532         * gtk/gtkrc.az: added file for Azeri language
14533
14534 2000-11-03  Havoc Pennington  <hp@redhat.com>
14535
14536         Get widgets working on the btree/buffer side. Display of them 
14537         still doesn't work.
14538         
14539         * gtk/gtktextview.c: start implementing child widget stuff
14540
14541         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
14542
14543         * gtk/gtktextlayout.c: handle embedded widgets
14544
14545         * gtk/gtktextdisplay.c: handle embedded widgets
14546
14547         * gtk/gtktextchild.c: Implement all the child anchor goo
14548
14549         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
14550         function
14551
14552         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
14553         (insert_pixbuf_or_widget_segment): abstract out common portions of 
14554         creating a child anchor or a pixbuf segment.
14555         (gtk_text_btree_create_child_anchor): new function
14556         (gtk_text_btree_unregister_child_anchor): new function
14557
14558         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
14559         allocate_child signal on GtkTextLayout
14560
14561         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
14562         values
14563         (gtk_text_iter_get_child_anchor): new function
14564
14565         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
14566         default handler for the changed signal, which calls
14567         gtk_text_buffer_set_modified(), instead of just always emitting
14568         changed then calling set_modified() manually. I guess this is
14569         maybe more flexible. It seems logical.
14570
14571 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
14572
14573         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
14574         now.
14575
14576         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
14577
14578 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
14579
14580         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
14581         been marked static.
14582
14583 2000-11-02  Havoc Pennington  <hp@redhat.com>
14584
14585         * gtk/testgtk.c (create_labels): had a test backward
14586
14587         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
14588         fields, so the dest GC ends up with the correct clip origin, 
14589         etc. Fixes a bug where colored labels didn't redraw 
14590         properly.
14591
14592 2000-11-02  Alexander Larsson  <alexl@redhat.com>
14593
14594         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
14595         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
14596         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
14597         Add last argument to t_type_register_static call.
14598         
14599         * gdk/linux-fb/gdkdrawable-fb2.c:
14600         Add last argument to t_type_register_static call.
14601         export the get_image drawable virtual function.
14602
14603         * gdk/linux-fb/gdkimage-fb.c:
14604         Add last argument to t_type_register_static call.
14605         rename gtk_image_get to _gdk_fb_get_image and
14606         export it for use by gdkdrawable-fb2.
14607
14608         * gdk/linux-fb/gdkprivate-fb.h:
14609         export _gdk_fb_get_image.
14610
14611         * gdk/linux-fb/gdkselection-fb.c:
14612         Add new api call stubs.
14613
14614         * gtk/Makefile.am:
14615         Missing ( in linux-fb part.
14616
14617         * modules/linux-fb/Makefile.am:
14618         Must link with gdk_pixbuf or get unresolved symbol.
14619
14620 2000-11-01  Havoc Pennington  <hp@pobox.com>
14621
14622         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
14623         GTK_TYPE_TEXT_ITER and BOXED marshallers
14624
14625         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
14626
14627         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
14628         
14629         * gtk/gtk-boxed.defs: add GtkTextIter
14630
14631         * gtk/gtkmarshal.list: Add marshallers for text widget that 
14632         properly use OBJECT and BOXED
14633
14634 2000-11-01  Havoc Pennington  <hp@redhat.com>
14635
14636         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
14637
14638         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
14639         before returning it. 
14640         
14641 2000-11-01  Havoc Pennington  <hp@redhat.com>
14642
14643         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
14644         Clip the rectangle to be rendered to the drawable, since
14645         get_from_drawable() requires a region within the drawable
14646
14647 2000-11-01  Havoc Pennington  <hp@redhat.com>
14648
14649         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
14650         from coordinates.
14651
14652 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
14653
14654         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
14655         it isn't NULL.
14656
14657 2000-11-01  Havoc Pennington  <hp@pobox.com>
14658
14659         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
14660         on a label
14661         (gtk_label_finalize): unref the attr list if any.
14662
14663         * gtk/testgtk.c (create_get_image): close test on second click
14664         (make_message_dialog): close dialog if it exists
14665
14666         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
14667
14668         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
14669         gdk-pixbuf
14670
14671         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
14672         from Pango markup format
14673         (gtk_label_set_markup_with_accel): ditto but with accelerator
14674         parsing
14675
14676         * gtk/gtkimage.c (gtk_image_expose): reformatting.
14677
14678         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
14679         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
14680         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
14681         call gdk_window_get_origin().
14682
14683         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
14684         implement GDK_PIXBUF_ALPHA_FULL
14685         
14686 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
14687
14688         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
14689         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
14690         g_signal_handlers_disconnect_matched to block/unblock and disconnect
14691         multiple handlers respectively, instead of only treating the
14692         first handler found (bug reported by owen).
14693
14694 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
14695
14696         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
14697
14698         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
14699
14700         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
14701         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
14702         gtk/gtktreeviewcolumn.h: Fixed inline docs.
14703
14704         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
14705         widget.  Needs writing someday.
14706
14707         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
14708         the docs.
14709
14710 2000-10-30  Havoc Pennington  <hp@redhat.com>
14711
14712         * gtk/gtktextview.h, gtk/gtktextview.c:
14713         Rename delete_at_cursor delete_from_cursor, and 
14714         move to move_cursor.
14715
14716 2000-10-30  Havoc Pennington  <hp@redhat.com>
14717
14718         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
14719         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
14720         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
14721         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
14722         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
14723         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
14724         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
14725         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
14726         gtktexttypes.h, gtktextview.c, gtktextview.h:
14727
14728         Massive reindentation and reformatting. Arg alignment and comments
14729         still need fixing in various places.
14730
14731 2000-10-30  Havoc Pennington  <hp@redhat.com>
14732
14733         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
14734         to be named insert_at_cursor and delete_at_cursor so C++ can
14735         handle them.
14736
14737 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14738
14739         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
14740         to get a double directory separator in case the home directory
14741         ends with one. This would cause trouble especially on Windows,
14742         where the path will be confused with the syntax for an an UNC
14743         (network share) path \\server\share\path.
14744         (gtk_rc_add_initial_default_files): Ditto.
14745
14746 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
14747
14748         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
14749
14750         * gtk/gtktextview.c: Use correct marshallers.
14751
14752 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
14753
14754         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
14755         use new iter stuff, and added all the appropriate signals et al.
14756
14757         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
14758         code is internal to gtk only.
14759
14760 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14761
14762         * gtk/gtk.def
14763         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
14764         glib-genmarshal etc.
14765
14766 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
14767
14768         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
14769         parallel builds.
14770
14771 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
14772
14773         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
14774
14775 2000-10-27  Robert Brady  <robert@suse.co.uk>
14776
14777         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
14778         en_GB (British), ia (Interlingua).
14779
14780 2000-10-26  Havoc Pennington  <hp@redhat.com>
14781
14782         * gtk/gtktextiter.c (my_strrstr): fix constness warning
14783
14784         Fixed output of:
14785         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
14786         
14787         * gtk/gtktextsegment.c (char_segment_new): rename
14788         (_char_segment_new_from_two_strings): rename
14789         (_toggle_segment_new): rename
14790         
14791         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
14792         (make_clipboard_widget): make it static
14793         (text_get_func): static
14794         (text_clear_func): static
14795
14796         * gtk/gtkcolorsel.c (adjustment_changed): make this function
14797         static
14798         (hex_changed): make it static
14799         (hsv_changed): make it static
14800         (opacity_entry_changed): make it static
14801
14802         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
14803         (toggle_segment_check_func): rename with _gtk
14804
14805         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
14806         (_widget_segment_new): rename
14807         (_widget_segment_add): rename
14808         (_widget_segment_remove): rename
14809         (_widget_segment_ref): rename
14810         (_widget_segment_unref): rename
14811
14812         * gtk/gtktextmark.c (_mark_segment_new): Rename
14813         _gtk_mark_segment_new   
14814
14815 2000-10-26  Havoc Pennington  <hp@redhat.com>
14816
14817         * gtk/gtkmarshal.list: add new marshallers used by the text widget
14818         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
14819         types
14820
14821         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
14822         marshaller types
14823
14824         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
14825         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
14826         license on these files.
14827
14828         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
14829         work.
14830
14831         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
14832         runtime random number different for each tree, instead of 
14833         a constant I made up.
14834
14835 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
14836
14837         * gtk/Makefile.am: buncha cleanups, kludged build sources
14838         dependencies with a Makefile: oldest-source-stamp dependancy
14839         for the moment. automake is really fighting us here, with
14840         intentionally not allowing user-defined rules or dependancies
14841         prior to it's -include $(DEP_FILES) statement. sucks rocks!
14842
14843         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
14844         to public headers. tehy have a comment stating that they are
14845         "semi-public" aren't included by gtk.h and if enums popup there,
14846         they can be /*< skip >*/-ed.
14847
14848         * gtk/gtktextlayout.h: 
14849         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
14850         added LGPL... <SIGH>
14851
14852 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
14853
14854         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
14855         GtkTreeIter.  Added iterators everywhere.
14856
14857         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
14858
14859         * gtk/gtktreeviewselection.c: Changed to use the iterators.
14860
14861         * gtk/gtktreestore.c: Changed to use the iterators.
14862
14863         * gtk/gtkliststore.c: Commented out the code.  Will convert to
14864         iterators tomorrow.
14865
14866         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
14867         iterators tomorrow.
14868
14869         * gtk/treestoretest.c: Changed to use iterators.
14870
14871         * demos/testgtk/main.c: Moved to use the new iterator system.
14872
14873 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
14874
14875         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
14876         localization misbehaviour.
14877
14878         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
14879         a useless type without copy/free.
14880
14881         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
14882         of GTK_TYPE_CTREE_NODE.
14883
14884 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
14885
14886         * gtk/gtksignal.c:
14887         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
14888         applicable.
14889
14890         * gtk/gtk-boxed.defs (GtkSelectionData): specify
14891         gtk_selection_data_copy and gtk_selection_data_free
14892         do GtkSelectionData work as params in signals.
14893
14894 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
14895
14896         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
14897         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
14898         couldn't they at least give it a non-standard name?
14899         
14900         * gtk/gtktextlayout.c: arg! yet another implementation of
14901         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
14902
14903         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
14904         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
14905         home. now i know this _is_ a conspiracy.
14906
14907         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
14908         ::state-changed.
14909
14910         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
14911         (gtk_accel_group_create_add): marshaller signature fixups.
14912
14913         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
14914         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
14915
14916         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
14917         anymore.
14918
14919 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
14920
14921         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
14922         due to the signal system changes, it wouldn't build currently. to
14923         be fixed soon.
14924
14925         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
14926
14927         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
14928         so it needs gtk_marshal_VOID__ENUM() instead of
14929         gtk_marshal_NONE__UINT().
14930
14931         * gdk/gdk*.c: adapted type registration functions.
14932
14933         * gtk/gtkbindings.c:
14934         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
14935         gone.
14936
14937         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
14938
14939         * gtk/gtkobject.c:
14940         (gtk_object_destroy):
14941         (gtk_object_shutdown): fixed recursion guards. basically we have to
14942         catch the case where any of GObject.shutdown() or gtk_object_destroy()
14943         is called during ::destroy, and avoid recursion there.
14944
14945         * gtk/gtktypeutils.c:
14946         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
14947         boxed_copy/boxed_free. this needs a more general solution based on a
14948         publically installed code-generator utility.
14949
14950         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
14951         glib's gobject has support for that now.
14952         define GtkSignalMarshaller in terms of GSignalCMarshaller.
14953
14954 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
14955
14956         * gtk/gtksignal.[hc]:
14957         * gtk/gtkmarshal.[hc]:
14958         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
14959         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
14960         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
14961         care of that.
14962
14963         * *.c: marshaller name fixups.
14964
14965         * gtk/gtkmarshal.list: added a comment briefing the format.
14966
14967 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
14968
14969         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
14970         compatibility macros here now. more specifically, most of
14971         the API is preserved (yes, _most_, nonwithstanding the
14972         following exceptions listed, the API is stil lHUGE ;)
14973         things that got removed completely:
14974         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
14975         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
14976         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
14977         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
14978         gtk_signal_remove_emission_hook().
14979         non-functional functions variants:
14980         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
14981         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
14982         not supported anymore.
14983         (gtk_signal_compat_matched): new internal function to aid
14984         implementation of the compatibility macros, it  provides
14985         functionality to block/unblock/disconnect handlers based
14986         on func/data.
14987
14988         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
14989
14990         * *.c: adaptions to new type registration API signatures.
14991
14992 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
14993
14994         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
14995
14996 2000-10-25  Robert Brady  <robert@suse.co.uk>
14997
14998         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
14999         gdk_property_delete): If window == NULL, assume the root window.
15000         (restoring the behaviour that was in 1.2).
15001         
15002         * gtk/testtext.c (save_buffer): Allow creation of new files when
15003         saving.
15004
15005         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
15006         calls to read().
15007
15008 2000-10-25  Tor Lillqvist  <tml@iki.fi>
15009
15010         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
15011
15012         * gdk/win32/gdkdrawable-win32.c
15013         * gdk/win32/gdkimage-win32.c
15014         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
15015         X11 backend.
15016
15017         * gdk/win32/gdkcc-win32.c
15018         * gdk/win32/gdkcolor-win32.c
15019         * gdk/win32/gdkfont-win32.c
15020         * gdk/win32/gdkinput-win32.c
15021         * gdk/win32/gdkmain-win32.c
15022         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
15023
15024 2000-10-24  Havoc Pennington  <hp@redhat.com>
15025
15026         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
15027         it a static function
15028
15029         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
15030         redraw text when a tag is applied to it.
15031
15032         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
15033         (gtk_text_tag_affects_nonsize_appearance): private functions to
15034         see if a tag requires various kinds of redraw/layout to be queued
15035         up.
15036
15037         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
15038
15039         * gtk/testtext.c (fill_example_buffer): Put the cursor 
15040         at the start of the buffer, so search works by default
15041
15042         * gtk/gtktextiter.c (lines_match): init match_start always
15043
15044         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
15045         function, get iter at a line + a byte index
15046
15047         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
15048         to set byte position within a line
15049         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
15050
15051 2000-10-23  Havoc Pennington  <hp@redhat.com>
15052
15053         * gtk/testtext.c: Re-enable the "find" dialog
15054
15055         * gtk/testgtk.c: Add test for gdk_drawable_get_image
15056         
15057         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
15058         the arguments to gdk_draw_drawable were in the wrong order
15059         (gdk_window_paint_init_bg): This function was ignoring the
15060         init_region, instead of clipping to it, so the entire backing
15061         pixmap was cleared on every begin_paint()
15062         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
15063         was in here again, the loop kept using the same GtkWindowPaint
15064         over and over.
15065         (gdk_window_begin_paint_region): Fix a bug where we had two
15066         x_offset instead of x_offset and y_offset
15067
15068         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
15069         before we get the image.
15070         (gdk_draw_drawable): get the composite before we draw the drawable.
15071         (gdk_drawable_real_get_composite_drawable): default
15072         get_composite_drawable implementation that returns the drawable 
15073         itself
15074
15075         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
15076         get_composite_drawable virtual function
15077
15078         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
15079         list-walking bug
15080
15081         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
15082         make this work if the source drawable is a GdkDrawableImplX11
15083         instead of a public drawable type. This is really broken; the
15084         problem is that GdkDrawable needs a virtual method get_xid(), but
15085         of course that doesn't work in practice. Enter RTTI.
15086
15087         Also, improve mismatched depth message.
15088
15089         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
15090         GdkPixmap
15091
15092         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
15093         install _gdk_x11_get_image as our implementation of get_image
15094         
15095         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
15096         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
15097
15098         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
15099         gdk_drawable_get_image
15100
15101         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
15102
15103         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
15104         get_image
15105
15106         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
15107         trailing semicolon after for loop
15108
15109 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
15110
15111         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
15112         where font_desc for widget's context lagged widget's font_desc by
15113         one step.
15114
15115 2000-10-22  Tor Lillqvist  <tml@iki.fi>
15116
15117         * gdk/win32/gdkgc-win32.c
15118         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
15119
15120         * gtk/makefile.mingw.in
15121         * gtk/gtk.def: Updates.
15122
15123         * gtk/testgtk.c: sleep() is called _sleep in MS's C
15124         library.
15125
15126         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
15127
15128         * gtk/makefile.msc: Remove
15129
15130         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
15131
15132         * gtk/Makefile.am: Add it.
15133
15134         * configure.in: Generate it.
15135
15136         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
15137         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
15138         something even if not implemented, to satisfy picky MSVC.
15139
15140         Patches by Hans Breuer:
15141         
15142         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
15143         SetBkMode() and SetTextAlign() before calling
15144         pango_win32_render().
15145
15146         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
15147         Set hcliprgn to NULL after destroying it.
15148         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
15149
15150         * gdk/win32/gdkgeometry-win32.c
15151         (_gdk_windowing_window_queue_antiexpose): More effective
15152         implementation.
15153
15154         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
15155         depth as default, not the visual's.
15156
15157         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
15158         against empty title.
15159
15160         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
15161         IMAGE_PRIVATE_DATA.
15162
15163         * gdk/win32/gdkimage-win32.c: Use it.
15164
15165 2000-10-22  Robert Brady  <robert@suse.co.uk>
15166
15167         * configure.in: Check for bind_textdomain_codeset
15168
15169         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
15170         present, make use of it.
15171
15172         Add a translatable string "default:LTR" which, if translated
15173         to "default:RTL", will cause the default direction to be
15174         Right-to-Left.
15175
15176         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
15177         direction if marked as flippable.
15178
15179         * gtk/gtkhscale.c: Mark widget as flippable.
15180         
15181 2000-10-04  Havoc Pennington  <hp@redhat.com>
15182
15183         * gtk/testgtk.c (create_buttons): create some stock buttons
15184         with the default accel group
15185         (create_image): test some new GtkImage features
15186         (make_message_dialog): test GtkMessageDialog
15187         (create_modal_window): fix someone's bizzarro indentation
15188
15189         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
15190         GTK_WIN_POS_CENTER_ON_PARENT. 
15191         Add "destroy with parent" setting, which means the window goes
15192         away with its transient parent.
15193         (gtk_window_get_default_accel_group): get the default accel group
15194         for the window.
15195         (gtk_window_set_destroy_with_parent): set/unset destroy with
15196         parent flag
15197         (gtk_window_read_rcfiles): invalidate icon set caches
15198         after reloading rcfiles 
15199
15200         * gtk/gtkenums.h (GtkWindowPosition): add
15201         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
15202         on its parent window when the dialog is mapped for the first time.
15203
15204         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
15205         a simple message dialog class
15206         
15207         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
15208         handler to emit response signal, and maybe later it would
15209         honor a hide_on_delete flag - though that isn't there yet.
15210         Set border width on the vbox to 2, so we get some padding.      
15211         Use a button box for the action area.
15212         (gtk_dialog_key_press): synthesize a delete event if Esc
15213         is pressed and the GtkWidget key press handler didn't 
15214         handle the escape key.
15215         (gtk_dialog_new_with_buttons): new function creates a dialog
15216         with some default buttons in it.
15217         (gtk_dialog_add_action_widget): add an activatable widget
15218         as a button in the dialog - you can also add a non-activatable
15219         widget by accessing the action area directly.
15220         (gtk_dialog_add_button): add a simple button - stock ID or 
15221         label - to the action area
15222         (gtk_dialog_response): emit response signal
15223         (gtk_dialog_run): block waiting for the dialog, return 
15224         the response. Override normal delete_event behavior, so that 
15225         delete_event does nothing inside gtk_dialog_run().
15226
15227         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
15228         emitted when an action widget is clicked or the dialog gets
15229         delete_event
15230
15231         * gtk/gtk.h: add gtkmessagedialog.h
15232
15233         * gtk/Makefile.am: add gtkmessagedialog.[hc]
15234
15235 2000-10-18  Havoc Pennington  <hp@redhat.com>
15236
15237         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
15238         where any number of empty lines would get skipped
15239
15240         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
15241         edge.
15242
15243         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
15244         warning about invalid iterators (explain more thoroughly)
15245         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
15246
15247         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
15248         big
15249
15250         * demos/*.c: Add error handling
15251
15252         * gtk/gtktextbuffer.c: don't modify const iterators
15253
15254         * gtk/gdk-pixbuf-loader.c: Add full error handling here
15255
15256         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
15257         on file load
15258
15259         * gtk/gtkiconfactory.c: Update to reflect addition of error
15260         handling to gdk-pixbuf loaders
15261
15262 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
15263
15264         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
15265         move to new modularized testgtk.
15266
15267 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
15268
15269         * gtk/gtktreeview.c: Draw the arrows correctly.
15270
15271         * gtk/gtktreemodel.c: Added user docs.
15272
15273         * gtk/gtk.h: remove gtktreedatalist.h.
15274
15275         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
15276         parent when generating my type.
15277
15278         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
15279         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
15280
15281 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
15282
15283         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
15284         GtkTreeModel from object to interface.
15285
15286 2000-10-16  Havoc Pennington  <hp@redhat.com>
15287
15288         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
15289         compilation
15290
15291 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
15292
15293         * gtk/gtktreeselection.c: Add API documentation to all public
15294         functions.
15295
15296         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
15297         functions.
15298
15299 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
15300
15301         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
15302         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
15303         docs to all public functions.
15304
15305         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
15306         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
15307         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
15308         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
15309         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
15310         issue.
15311
15312 2000-10-14  Robert Brady  <robert@suse.co.uk>
15313
15314         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
15315
15316 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
15317
15318         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
15319         values other then G_TYPE_STRING.
15320         * gtk/gtktreeselection.c: Minor commenting updates.
15321         * gtk/gtktreeview.c: Format updates.
15322
15323 2000-10-09  Tor Lillqvist  <tml@iki.fi>
15324
15325         * README.win32: Update.
15326
15327         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
15328         lines that had been deleted by mistake (?).
15329
15330         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
15331         also the case fg==white and bg==black (but still not randomly
15332         coloured cursors). Thanks to Wolfgang Sourdeau.
15333
15334         * gdk/win32/*.c: Silence gcc -Wall.
15335
15336         * gtk/gtk.def: Add missing entry points.
15337
15338         Fixes by Hans Breuer:
15339
15340         * gdk/makefile.msc
15341         * gdk/win32/makefile.msc: Update.
15342
15343         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
15344         some MSVC thing, presumably), cause breakpoint on failures. Add
15345         GDK_NOR case. Call g_log_set_always_fatal.
15346
15347         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
15348         should be pased by reference.
15349         
15350         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
15351         
15352         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
15353
15354         * gdk/win32/gdkevents-win32.c
15355         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
15356
15357         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
15358         implementation object.
15359
15360         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
15361         not just windows.
15362         
15363         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
15364         Use the wrapper object.
15365         
15366 2000-10-06  Havoc Pennington  <hp@redhat.com>
15367
15368         * Makefile.am (SRC_SUBDIRS): contrib subdir
15369
15370         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
15371         so it can be used in Xlib version
15372
15373         * demos/testpixbuf.c (update_timeout): error checking from 1.0
15374         tree
15375
15376         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
15377         change from 1.0 tree that returns first frame of animation
15378         if the loaded file is an animation.
15379
15380         * contrib: add new directory to hold stuff that comes with GTK+
15381         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
15382         
15383         * configure.in: add contrib/*
15384
15385 2000-10-05  Havoc Pennington  <hp@redhat.com>
15386
15387         * demos/testpixbuf-save.c: add pixbuf save test
15388
15389         * demos/Makefile.am: add testpixbuf-save.c
15390
15391 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
15392
15393         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
15394         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
15395         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
15396         * gtk/gtktreeselection.[ch]: Replaced
15397         "node_selected"/"node_unselected" signal with "selection_changed"
15398         signal.
15399
15400 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
15401
15402         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
15403         tree widget.
15404
15405 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
15406
15407         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
15408         drawing.
15409
15410 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
15411
15412         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
15413         Move list pointer forwards before removing item from
15414         list. (Crash reported by Salmaso Raffaele)
15415
15416         * gdk/gdkwindow.h: Remove spurious trailing ,
15417
15418         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
15419         dependencies on uninstalled libraries, sorry folks.
15420
15421 2000-10-04  Havoc Pennington  <hp@redhat.com>
15422
15423         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
15424         gtk/gtkiconfactory.c: Fix copyrights    
15425
15426         * demos/testpixbuf.c: add inline pixbuf test
15427         
15428 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
15429
15430         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
15431         Add gdk_window_iconify.
15432
15433         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
15434         (gdk_window_set_geometry_hints): Add win_gravity
15435         to geometry structure.
15436
15437         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
15438         Implement _NET_WM_PING.
15439
15440         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
15441         Set _NET_WM_PID on the client leader.
15442
15443         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
15444         Handle UTF-8 better.
15445
15446         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
15447         UTF-8 better, set _NET_WM_NAME as well. Only set
15448         icon name if it hasn't previously been explicitely 
15449         set.
15450
15451 2000-10-03  Havoc Pennington  <hp@redhat.com>
15452
15453         * gtk/testtextbuffer.c: clean up trailing whitespace,
15454         add extensive tests for tag toggle iteration.
15455         
15456         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
15457         distance
15458
15459         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
15460         optimize case where the tag root is on level 1
15461         (gtk_text_line_previous_could_contain_tag): attempt to implement
15462         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
15463         functionality
15464
15465         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
15466         Implement this, though not very efficiently.
15467
15468         * gtk/gtktextiterprivate.h: reformat
15469
15470         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
15471         iterator
15472
15473         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
15474         this to properly revalidate the iterators.
15475
15476         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
15477         properly at the end of the line (and therefore on empty lines)
15478
15479         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
15480         maybe we should return a value...
15481
15482 2000-10-03  Tor Lillqvist  <tml@iki.fi>
15483
15484         * config.h.win32: Guard definition of alloca(). glib.h now handles
15485         that.
15486
15487         * gdk/gdk.def
15488         * gtk/gtk.def: Add new entry points.
15489
15490         Changes just to make GTK+ build without errors on Win32. No hope
15491         of it working in its current state, though...:
15492         
15493         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
15494         some functions from the X11 backend, just to make GTK+ build.
15495
15496         * gdk/makefile.mingw.in
15497         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
15498         number. Add new object files.
15499
15500         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
15501         GetMessageTime to get timestamp (where on X11 uses
15502         gdk_x11_get_server_time()).
15503
15504 2000-10-02  Havoc Pennington  <hp@pobox.com>
15505
15506         * gtk/gtktextview.c: text_window_* weren't static and should have
15507         been.
15508         Start work on child widgets; not yet complete, syncing to 
15509         office computer.
15510
15511         * gtk/gtktextchild.h: change this to contain a public interface,
15512         starting work on child interfaces.
15513         * gtk/gtktextchildprivate.h: move private interfaces here
15514
15515         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
15516
15517         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
15518         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
15519         gtk/gtktextmark.c: copyright notices
15520
15521         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
15522         internal functions      
15523
15524         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
15525         internal function
15526
15527         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
15528         Reformatting    
15529
15530 2000-09-30  Havoc Pennington  <hp@pobox.com>
15531
15532         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
15533         NULL start/end pointers
15534
15535         * gtk/gtktextbuffer.c: Write some docs
15536         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
15537         NULL, so you can just check whether there's a selection.        
15538
15539         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
15540         cleanup_line or segments_changed ourselves, it gets done 
15541         in unlink_segment
15542
15543         * gtk/gtktextmark.h:
15544         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
15545         
15546         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
15547
15548         * gtk/gtktextmark.c: delete some more old Tk cruft
15549
15550         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
15551         mark before removing it, so we can emit MARK_DELETED with a valid
15552         pointer.
15553         (gtk_text_buffer_mark_set): hold ref across signal emission
15554
15555         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
15556         whining about attempts to delete special marks
15557
15558         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
15559         underscore, since it's internal.
15560
15561         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
15562         now implemented in terms of iterators in gtktextiter.h
15563
15564         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
15565         New function, destructively sets contents of buffer. Also 
15566         a convenient way to clear the buffer by setting text to ""
15567
15568         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
15569         multiline string literal
15570
15571         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
15572         text changes.
15573
15574         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
15575         is not dereferenceable
15576         (gtk_text_iter_forward_lines): fix return value
15577
15578 2000-09-29  Havoc Pennington  <hp@redhat.com>
15579
15580         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
15581
15582         * gtk/gtktextview.c: Implement drag thresholding; change functions 
15583         that set border window size to have nicer name
15584         (gtk_text_view_mark_set_handler):  Fix this to have the 
15585         right signature.
15586
15587         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
15588
15589         * gtk/testtext.c: Update with API changes, put line numbers on 
15590         both sides.
15591         
15592         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
15593         with this
15594
15595         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
15596         pixbuf; delete a big block of #if 0 Tk code
15597
15598         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
15599         insert_pixmap with insert_pixbuf
15600
15601 2000-09-29  Martin Baulig  <baulig@suse.de>
15602
15603         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
15604         confusion with the GdkPixbuf of the GNOME 1.x platform.
15605
15606 2000-09-29  Havoc Pennington  <hp@pobox.com>
15607
15608         * gtk/gtktextview.c: Implement the side windows.
15609
15610         * gtk/testtext.c: Implement simple line numbering in the 
15611         left side window; seems to make scrolling sloooow. Oops.
15612         Also, cursor blink is for some reason causing redraws
15613         of the line numbers. Should investigate...
15614
15615 2000-09-28  Havoc Pennington  <hp@redhat.com>
15616
15617         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
15618         scrolling child windows, and draw focus rectangle properly.
15619         
15620         (gtk_text_view_buffer_to_window_coords):
15621         Coordinate transformation to deal with all these freaking windows
15622         and offsets
15623         (gtk_text_view_window_to_buffer_coords): transform the other way
15624
15625         * gtk/testtext.c (create_buffer): Update to match Pango API change
15626
15627         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
15628         anonymous tags
15629         (foreach_unref): don't emit remove signal from finalize, just
15630         set tag's parent to NULL
15631
15632 2000-09-26  Havoc Pennington  <hp@redhat.com>
15633
15634         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
15635         Fix some warnings       
15636
15637 2000-09-26  Havoc Pennington  <hp@redhat.com>
15638
15639         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
15640         headers into the private header list
15641
15642         * Makefile.am (pkgconfig_DATA): install pkg-config files
15643
15644         * configure.in: add pkg-config files
15645
15646         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
15647
15648         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
15649         outstanding icon caches on theme change.
15650
15651         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
15652         important types:
15653
15654         (GtkIconSource): Specification for creating a pixbuf 
15655         appropriate for a direction/state/size triplet from 
15656         a source pixbuf or filename
15657
15658         (GtkIconSet): List of GtkIconSource objects that are used to
15659         create the "same" icon (e.g. an OK button icon), and cache for
15660         rendered icons
15661
15662         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
15663         up the icon set for a given stock ID.  GTK maintains a stack of
15664         GtkIconFactory to search, and applications or libraries can add
15665         additional icon factories on top of the stack
15666         
15667         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
15668         the set of GtkIconSource specified for a given stock ID into 
15669         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
15670         RcStyle, under the specified stock ID.
15671
15672         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
15673         render_icon used to derive a GdkPixbuf from a GtkIconSource.
15674         This allows people to theme how prelight, insensitive, etc. are
15675         done.
15676
15677         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
15678         icon factories for a style, and return the resulting 
15679         icon set if any.
15680
15681         (gtk_style_render_icon): Render an icon using the render_icon 
15682         method in the GtkStyleClass.
15683
15684         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
15685         Use the style for a given widget to look up a stock ID, get the
15686         icon set, and render an icon using the render_icon method 
15687         of the style
15688
15689         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
15690         (contains information about a stock item), the built-in stock item
15691         IDs, and functions to add/lookup stock items.
15692
15693         * gtk/stock-icons/*: Stock icons that come with GTK
15694
15695         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
15696         a button based on a GtkStockItem
15697         (gtk_button_new_accel): Takes a uline string and accel group, and
15698         installs the accelerator.
15699
15700         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
15701         image-display widget.
15702
15703 2000-09-25  Havoc Pennington  <hp@redhat.com>
15704
15705         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
15706
15707         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
15708         Fix a bug when removing node data, we didn't properly 
15709         re-splice the linked list after removing the data.
15710
15711         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
15712         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
15713
15714         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
15715
15716         * gtk/gtktextlayout.c (set_para_values): Set tab array 
15717         for the layout from the GtkTextTag.
15718
15719         * gtk/gtktexttypes.h: delete tab and search cruft, 
15720         remove g_convert() in favor of GLib version
15721
15722         * gtk/gtktexttypes.c: remove tab implementation from here,
15723         move to Pango
15724
15725         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
15726         tab stuff using new PangoTabArray from Pango
15727
15728         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
15729         unused border_width stuff
15730
15731 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
15732
15733         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
15734         glib) and now useless utf_to_latin1() latin1_to_utf()
15735
15736         * gtk/gtktextview.[ch]: Change ::move_insert and
15737         ::delete_text action signals to ::move and ::delete;
15738         create the signals with the right enumeration type,
15739         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
15740         C-v bindings, change Home, End to move to beginning/end
15741         of line, Add C-Home C-End to move to beginning/end
15742         of buffer. Change ::cut_text to ::cut_clipboard, etc;
15743         combine ::scroll_text into ::move; use new GtkSelectionData
15744         functions to simplify DND text handling.
15745         
15746         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
15747         deletion enumerations here, rename enumeration values to 
15748         be consistently plural.
15749
15750         * gtk/gtktextbuffer.c: Use new clipboard interfaces
15751         for cut/copy/paste and primary selection.
15752
15753         * gtk/gtktextbuffer.[ch]: Remove excess time and
15754         'interactive' arguments from cut/copy/paste;
15755         rename cut to cut_clipboard, etc; remove
15756         gtk_text_buffer_get_clipboard_contents().
15757
15758         * gtk/gtktextlayout.[ch]: Add 
15759         gtk_text_layout_move_iter_to_line_end() to move the iter to 
15760         line ends.
15761
15762         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
15763         Functions to set or get a UTF-8 string on the selection
15764         data.
15765
15766         * gtk/gtkclipboard.[ch]: New, simplified selection handling
15767         interfaces.
15768
15769         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
15770         created widgets - one of these is useless if we don't.
15771
15772         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
15773         a public function clear all targets registered for the
15774         widget.
15775
15776         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
15777         Never call gtk_widget_realize() - that was just asking
15778         for bizarre side-effects.
15779
15780         * gtk/gtkselection.c (gtk_selection_owner_set): Call
15781         gdk_selection_owner_set even if the widget is the
15782         same so that we reliably update the timestamp on
15783         the server.
15784
15785         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
15786         gdk_x11_get_server_time() function.
15787         
15788         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
15789         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
15790         Add some tricky filtering on serial numbers for
15791         selection clear events to fix up long-standard
15792         race condition FIXME's in gtkselection.c.
15793
15794         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
15795         routines to convert from utf8 to compound text or
15796         STRING and from a text property to UTF-8.
15797
15798         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
15799         a convenience function gdk_get_current_event_time().
15800
15801         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
15802         and free selection_data->data properly
15803
15804 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
15805
15806         * gtk/gtkthemes.c: Remove some unecessary includes.
15807
15808 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
15809
15810         * gtk/gtktextdisplay.c
15811         * gtk/gtktextlayout.c
15812         * gtk/gtktexttag.c
15813         * gtk/gtktexttag.h
15814         * gtk/testtext.c: Change the overstrike property to strikethrough,
15815         to closer match pango.
15816
15817 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
15818
15819         * gtk/gtktextview.c: Fix up visibility so that focus,
15820         cursor_visible and blink interact properly.  Reenable cursor blink
15821         which had been roughly disabled. Make blink and focus
15822         properly per-view.
15823
15824         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
15825         Add a flag for whether to display insertion cursor and
15826         a function to set the flag.
15827
15828         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
15829         get_line_y() to get_line_yrange(), to be a bit more generally
15830         useful.
15831
15832 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
15833
15834         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
15835           do stop_navigating_submenu, to clear last timeout properly.
15836           Also in gtk_menu_motion_notify move ignore_enter above
15837           the conditional to make it always happen as suggested by Owen
15838
15839 2000-09-07  Tor Lillqvist  <tml@iki.fi>
15840
15841         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
15842
15843         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
15844         w32api headers.
15845
15846         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
15847         declarations.
15848
15849         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
15850         (gdk_win32_get_colormap): A line had been deleted by mistake.
15851
15852         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
15853         (gdk_event_translate): Handle more virtual keycodes to be able to
15854         generate GDK events for Control-comma, Control-period, etc.
15855
15856         * gtk/gtk.def: Add some missing entry points.
15857
15858 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
15859
15860         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
15861         Doc comment fixing. (Mostly non-matching parameter names.)
15862
15863         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
15864         comments a little to avoid looking like a doc comment.
15865
15866         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
15867         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
15868         conversions be changed to GError?)
15869
15870         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
15871         Move private #defines into .c file.
15872
15873         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
15874         order of argument addition, remove duplicates.
15875
15876         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
15877         parent class is FrameClass, not BinClass.
15878
15879         * gtk/gtk.h: Add gtkinvisible, which was missing.
15880         (It's occasionalyl useful for client apps, if seldom.)
15881
15882         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
15883         #define.
15884
15885 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
15886
15887         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
15888         coordinates when creating window, instead of GDK-space
15889         coordinates. (Avoid BadValue on too large windows.)
15890
15891 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15892
15893         * configure.in (use_mmx_asm): Remove conftest* after use along the
15894         lines of AC_TRY_COMPILE.        
15895         
15896         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
15897         of g_dirname, which is deprecated.
15898         (gtk_rc_parse_any): Removed calls to
15899         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
15900
15901         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
15902         Removed calls to g_hash_table_{freeze,thaw}, as they are
15903         deprecated now.
15904
15905         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
15906         instead of g_basename.
15907         
15908 2000-09-04 Elliot Lee <sopwith@redhat.com>
15909         
15910         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
15911         ANSI warning.
15912
15913 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
15914
15915         * gtk/gtkwidget.h:  Add some documenting comments about 
15916           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
15917           just as owen said on irc.
15918
15919         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
15920           set HAS_DEFAULT.  Only set it if there isn't another window
15921           holding it (a focus window which RECEIVES_DEFAULT) and only unset
15922           it if the widget is not the focused window with RECEIVES_DEFAULT.
15923           This fixes weird double default bugs in dialogs which has things
15924           call gtk_window_set_default at times.
15925
15926 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
15927
15928         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
15929         Nils Barth and David Santiago to improve submenu
15930         navigation. The patch does this by creating a triangular
15931         region from the point where the pointer leaves the
15932         menu to the submenu.  While the pointer is in
15933         that region and a timeout has not expired, events 
15934         that would cause the active submenu to change are
15935         ignored.
15936
15937 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
15938
15939         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
15940         moving a toplevel window immediately after sizing it would
15941         result in it being sized back to the old size since 
15942         impl->width, impl->height aren't updated until we hear
15943         back from the server. There is still a (longstanding) bug
15944         here that gdk_window_get_size() will give the wrong size
15945         until we do hear back.
15946
15947 2000-08-31  Havoc Pennington  <hp@redhat.com>
15948
15949         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
15950         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
15951         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
15952         Rename GtkTextStyleValues to GtkTextAttributes
15953
15954 2000-08-31  Havoc Pennington  <hp@pobox.com>
15955
15956         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
15957         for rapid testing whether an iterator is the end iterator
15958         (gtk_text_btree_new): init end line cache
15959         (gtk_text_line_is_last): use fast cached line to 
15960         see if we're the last line.
15961         (get_last_line): use cached line here too, should 
15962         speed up some random unrelated code.
15963         
15964 2000-08-30  Havoc Pennington  <hp@pobox.com>
15965
15966         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
15967         signals.
15968
15969         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
15970         delete_text signals. This allows the signals to be used for
15971         implementing undo.
15972
15973         * gtk/gtktextbuffer.c: Change signal handler signatures; 
15974         provide "interactive" argument when emitting insert_text or
15975         delete_text signal.
15976         
15977 2000-08-30  Havoc Pennington  <hp@pobox.com>
15978
15979         * gtk/gtktextbuffer.c: Docs
15980
15981 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
15982
15983         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
15984         from switch statements, since Tor removed the enumeration
15985         value.
15986         
15987         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
15988         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
15989
15990 2000-08-29 Elliot Lee <sopwith@redhat.com>
15991         * */*.h: Use G_GNUC_CONST.
15992
15993 2000-08-27  Havoc Pennington  <hp@pobox.com>
15994
15995         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
15996         minor indentation fixes, inserted some FIXME about stuff I
15997         realized was broken while documenting it.
15998         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
15999         GTK convention  
16000
16001 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
16002
16003         * gtk/testgtk.c (create_styles): Fix double free of
16004         font desc.
16005
16006 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16007
16008         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
16009         
16010         * gtk/testgtk.c (create_styles): Add a test for modifying
16011         the style through gtk_widget_modify_*.
16012
16013         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
16014         a function to get the current modifier style.
16015
16016         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
16017         of the passed in GtkRcStyle instead of ref'ing it.
16018
16019         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
16020
16021 2000-08-20  Tor Lillqvist  <tml@iki.fi>
16022
16023         * gdk/gdkimage.h
16024         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
16025         shared memory image+pixmap GdkImage type, or
16026         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
16027         I am dropping that.
16028
16029         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
16030         actually call gtk_init_abi_check(), passing also
16031         sizeof(GtkWindow). Ditto for gtk_init_check(). 
16032
16033         * gtk/gtk.def
16034         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
16035         New functions, used to check that the GTK+-using code has been
16036         compiled using the correct compiler and switches. In particular,
16037         with gcc one has to use the -fnative-struct switch as GTK+ is
16038         compiled with that.
16039
16040 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
16041
16042         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
16043         ->prev fields when merging lists. (Found simultaneously
16044         by Pawel Salek and Jakub Jelinek)
16045
16046 2000-08-12  Tor Lillqvist  <tml@iki.fi>
16047
16048         * gdk/gdk.def
16049         * gtk/gtk.def: Add missing entries.
16050
16051         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
16052         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
16053
16054         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
16055         function. Dummy implementation at this point.
16056
16057         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
16058         rules. Undefine GTK_COMPILATION when compiling the test programs.
16059         
16060         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
16061
16062 2000-08-11  Tor Lillqvist  <tml@iki.fi>
16063
16064         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
16065         to convert back and forth from UTF-8 and the "system" (or "current
16066         locale") charset when necessary. Indentation/spacing cleanup.
16067
16068 2000-08-10  Havoc Pennington  <hp@redhat.com>
16069
16070         * Makefile.am (snapshot): Change the format of the snapshot
16071         version to match glib
16072
16073         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
16074         from EXTRA_DIST since it doesn't seem to exist
16075
16076 2000-08-10  Tor Lillqvist  <tml@iki.fi>
16077
16078         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
16079         version of the directory name (not the UTF-8 one) when building
16080         the path name to stat().
16081
16082 2000-08-03  Elliot Lee  <sopwith@redhat.com>
16083
16084         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
16085         PANGO_ATTR_SHAPE set.
16086
16087 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
16088
16089         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
16090         Peter Osterlund to simplify the code while keeping the
16091         functionality the same.
16092
16093 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
16094
16095         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
16096         is_viewable() test further inside the function, since removing the 
16097         window from the redraw list without clearing ->update_area
16098         was also very broken.
16099
16100 2000-08-02  Tor Lillqvist  <tml@iki.fi>
16101
16102         * configure.in: Check for <unistd.h>.
16103
16104 2000-08-01  Martin Baulig  <baulig@suse.de>
16105
16106         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
16107         to display the message that this is a development version of GTK+.
16108
16109 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
16110
16111         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
16112         was depending on widget->allocation instead of the width of text_area,
16113         which was incorrect for subclasses like GtkSpinButton.
16114
16115         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
16116         with width == 1 tests that should be width == -1.
16117
16118 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
16119
16120         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
16121         (broken, Elliot, every single window blank on X) custom code with call
16122         to gdk_window_is_viewable() which a) prevents code duplicate and
16123         b) works. 
16124
16125 2000-07-31  Elliot Lee  <sopwith@redhat.com>
16126
16127         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
16128         to get the GDK_PARENT_ROOT() macro to work.
16129         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
16130         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
16131         of, windows that aren't shown.
16132         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
16133         pointer grab stuff.
16134
16135 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
16136
16137         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
16138           s/gtk_main_iteration/g_main_iteration/
16139
16140           Did this already in change:
16141                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16142           don't know how it got reverted.
16143
16144 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
16145
16146         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
16147         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
16148
16149         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
16150         not gdk_pixbuf.
16151
16152 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
16153
16154         * configure.in,po/{sp,sr}.po: Added Serbian files
16155
16156 2000-07-30  Tor Lillqvist  <tml@iki.fi>
16157
16158         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
16159
16160         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
16161         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
16162         GIOChannel implementation.
16163
16164         * gdk/win32/gdkinput.c
16165         * gdk/win32/gdkpango-win32.c: Update license name here, too.
16166
16167         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
16168         definition to match prototype.
16169
16170         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
16171
16172 2000-07-27  Elliot Lee  <sopwith@redhat.com>
16173
16174         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
16175         function, to allow handling image formats that cannot be detected
16176         by looking at content alone.
16177
16178 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
16179
16180         * docs/tutorial/*.gif *.jpg *.eps
16181           Update these to the same look-n-feel.
16182           Why does including images in DocBook suck so badly?
16183
16184 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
16185
16186         * gtk/gtktable.c: applied patch from Phil Thompson
16187         <phil@river-bank.demon.co.uk> that enables space settings for
16188         the last row/columns as well.
16189
16190 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
16191
16192         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
16193         updates the license headers to the GNU Lesser General Public License,
16194         as well as updating the copyright year to 2000.
16195
16196 2000-07-26  Robert Brady  <rwb197@zepler.org>
16197
16198         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
16199           and po/Makefile, was installing and looking for them under gtk20
16200           and gtk2 respectively.
16201
16202 2000-07-25  Havoc Pennington  <hp@redhat.com>
16203
16204         * gtk/testtext.c: Comment out some stuff that depends on the rest
16205         of my patches.
16206
16207 2000-07-25  Havoc Pennington  <hp@redhat.com>
16208
16209         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
16210         buffer
16211
16212 2000-07-25  Havoc Pennington  <hp@redhat.com>
16213
16214         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
16215         widget changes.
16216
16217         * gtk/gtktextview.h: To be consistent with usage of "line"
16218         throughout the API to mean "newline-terminated thingy", change
16219         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
16220         to MOVEMENT_LINE.
16221
16222         (GtkTextView): Add flags for default editability, and whether to
16223         show the cursor. Add functions to get/set that. Add 
16224
16225         (gtk_text_view_get_iter_location): new function
16226
16227         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
16228         gtktextlayout.h
16229         (g_convert): Add g_convert temporarily, will go in glib in a bit
16230         
16231         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
16232         GtkTextTagTableForeach instead of brokenly using GHFunc.
16233         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
16234
16235         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
16236         moved to public header.
16237
16238         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
16239         "invisible", since "elide" was a bad name.
16240         (gtk_text_tag_get_priority): Added
16241
16242         (GtkTextStyleValues): put this in public header, along with
16243         functions to use it.
16244
16245         * gtk/gtktextmarkprivate.h: Include more headers, since we no
16246         longer include gtktextbtree.h.
16247
16248         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
16249         gtk_text_mark_deleted
16250
16251         * gtk/gtktextlayout.h: Don't include the "really private" headers,
16252         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
16253         to make this possible. Now we only need to install
16254         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
16255         (However the Makefile.am isn't changed yet because of the
16256         logistics of merging gtk-hp-patches piecemeal)
16257
16258         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
16259         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
16260         gtk_text_iter_get_line is now used in the public API for a
16261         different purpose.
16262
16263         * gtk/gtktextiter.h: Clean up function names to be more
16264         consistent. Always call char offset "offset" and byte index
16265         "index". A "line" is always a line number. 
16266
16267         (gtk_text_iter_is_last): new function, more efficient than 
16268         the existing way to check
16269         (gtk_text_iter_is_first): new function, also more efficient
16270
16271         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
16272
16273         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
16274         gtk_text_iter_forward_char, etc.
16275
16276         (gtk_text_iter_forward_to_tag_toggle): Renamed from
16277         forward_find_tag_toggle, since this isn't a linear search
16278
16279         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
16280
16281         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
16282         New functions, search for a buffer substring.
16283
16284         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
16285         interactive and default editable (since we need to store that info
16286         until we receive the selection data).
16287
16288         Remove all the _at_char and at_line etc. versions of functions;
16289         only have iterator versions.
16290
16291         Add _interactive() versions of functions, that consider the
16292         editability of text. (FIXME add interactive flag to the 
16293         insert/delete signals per Darin's suggestion)
16294
16295         (gtk_text_buffer_get_tag_table): new function, demand-creates the
16296         tag table if necessary
16297
16298         Remove declaration of gtk_text_buffer_get_iter_from_string
16299
16300         (_gtk_text_buffer_get_btree): private/internal function, added.
16301         
16302
16303         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
16304         (gtk_text_line_is_last): new function
16305
16306 2000-07-25  Havoc Pennington  <hp@redhat.com>
16307
16308         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
16309         using GtkProgressBar. See Changes-2.0.txt for details.
16310
16311         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
16312         "pulse_step" which are the equivalent of
16313         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
16314         Implement new API.
16315         
16316         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
16317         (use_text_format) to mark whether text set on the progress bar is
16318         a format string. Deprecate entire GtkProgress interface.
16319
16320         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
16321         (gtk_progress_build_string): make this a no-op if use_text_format
16322         is FALSE
16323
16324         * docs/Changes-2.0.txt: Describe progress bar changes.
16325
16326 2000-07-25  Tor Lillqvist  <tml@iki.fi>
16327
16328         * Makefile.am: Include the build directory.
16329
16330         * configure.in: Generate build/Makefile, build/win32/Makefile,
16331         gdk/, gdk/win32/, and gtk/makefile.mingw.
16332
16333         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
16334         Add GETTEXT_PACKAGE.
16335         
16336         * gdk/gdk.def
16337         * gtk/gtk.def: Updates.
16338
16339         * gdk/gdkfont.h
16340         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
16341         need them any longer.
16342
16343         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
16344
16345         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
16346         PANGOWIN32_LIBS and gdk_pixbuf.
16347
16348         * gdk/win32: Compiles, but no doubt doesn't work at all.
16349
16350         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
16351
16352         * gdk/win32/gdkinput.c: New file, temporarily.
16353         
16354         * gdk/win32/gdkinput-win32.h: New file
16355
16356         * gdk/win32/gdkinputprivate.h: Remove.
16357
16358         * gdk/win32/gdkpango-win32.c: New file.
16359
16360         * gtk/makefile.mingw.in: New file
16361
16362         * gtk/makefile.cygwin: Removed
16363         
16364         * gtk/Makefile.am: Update accordingly.
16365
16366         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
16367         made externally visible.
16368
16369         * gtk/gtkmain.c: Use it.
16370         
16371         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
16372         is enough.
16373
16374         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
16375
16376 2000-07-24 Elliot Lee <sopwith@redhat.com>
16377         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
16378         individual backends already.
16379         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
16380         again. Yes, there really is a good reason for this, if you are using the gdkregion
16381         internals, and if you're not, why do you care?
16382         * gdk/gdkwindow.c: Fix inverted condition
16383         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
16384         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
16385         * gtk/gtkrange.c: Redraw trough when moving.
16386         * gtk/gtktypeutils.c: Fix warning by adding const cast.
16387         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
16388
16389 2000-07-23  Tor Lillqvist  <tml@iki.fi>
16390
16391         * configure.in: Check for mkstemp and sigsetjmp. Output
16392         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
16393
16394         More work on GDK for Win32. Still in an intermediate state.
16395
16396         * gdk/makefile.cygwin
16397         * gdk/win32/makefile.cygwin: Removed.
16398         
16399         * gdk/makefile.mingw.in
16400         * gdk/win32/makefile.mingw.in: New files.
16401
16402         * gdk/Makefile.am
16403         * gdk/win32/Makefile.am: Generate and distribute them.
16404
16405         * gdk/win32/gdkwindow-win32.h
16406         * gdk/win32/gdkdrawable-win32.h
16407         * gdk/win32/gdkpixmap-win32.h: New files.
16408
16409         * gdk/win32/gdkcolor-win32.c
16410         * gdk/win32/gdkcursor-win32.c
16411         * gdk/win32/gdkdrawable-win32.c
16412         * gdk/win32/gdkgc-win32.c
16413         * gdk/win32/gdkimage-win32.c
16414         * gdk/win32/gdkprivate-win32.h
16415         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
16416         Rename fields and variables called xcursor, xid, etc (these names
16417         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
16418
16419 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
16420
16421         * gtk/gtkentry.[ch]: Fix some problems with vertical
16422         alignment.
16423
16424         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
16425         char/byte confusion.
16426
16427 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
16428
16429         * gtk/gtktextview.c (changed_handler): Fix bug where
16430         redraw wasn't being done properly when height of
16431         dirty region changed.
16432
16433         * demos/Makefile.am: Remove various references to
16434         -lgmodule
16435
16436 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
16437
16438         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
16439         PangoAttrShape to reserve space for pixmaps, add 
16440         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
16441         in the display functions.
16442         
16443         * gtk/testgtk.c (create_layout): Set some more exotic
16444         scrolled window options
16445
16446         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
16447         Add function to set the shadow type of a window, to allow
16448         putting a shadow around widgets such as GtkLayout or GnomeCanvas
16449         which don't draw their own frame.
16450
16451 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
16452
16453         * docs/tutorial/package-db-tutorial.sh: New file for
16454           packaging DocBook format tutorial
16455
16456 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
16457
16458         * docs/tutorial/gtk-tut.sgml: Minor updates
16459
16460         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
16461
16462 2000-07-19  Tor Lillqvist  <tml@iki.fi>
16463
16464         * gtk/gtksignal.c: Fix C++ comment.
16465
16466         * gtk/gtkimmulticontext.c
16467         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
16468         don't return value from void functions.
16469
16470         * gtk/gtk.def: Add gtk_rc_style_unref.
16471
16472 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
16473
16474         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
16475         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
16476         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
16477         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
16478         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
16479         gtk/gtktypeutils.h: Include files outside of the extern "C"
16480         block. Makes some C++ compiler happy. Reported by Denis Vakatov
16481         <vakatov@peony.nlm.nih.gov>.
16482
16483 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
16484
16485         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
16486           Completes first pass. Hurrah!
16487
16488 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
16489
16490         * docs/tutorial/gtk-tut.sgml: More clean ups.
16491
16492 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
16493
16494         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
16495         paint the background of the text area which was accidentally
16496         removed at some point.
16497
16498         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
16499           
16500          - Move most of the functionality from the theme vtable
16501            into GtkRcStyleClass and GtkStyleClass. The moved
16502            vtable functions were changed a bit in the move to
16503            work better in their new home.
16504
16505          - Get rid of the engine and engine_data fields from
16506            GtkRcStyle and GtkStyle; instead the theme
16507            engine derives theme-specific subclasses of GtkRcStyle
16508            and GtkStyle
16509
16510          - Add extra dlsym() found entry point to themes,
16511            theme_create_rc_style().
16512
16513         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
16514         in gtk_style_real_copy.
16515
16516         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
16517         to register a type associated with an engine. (The engine
16518         won't be unloaded as there is an instance of the type.)
16519
16520
16521 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
16522
16523         * docs/tutorial/gtk-tut.sgml: Clean ups.
16524
16525 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
16526
16527         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
16528           of cleaning up to do.
16529
16530 2000-07-15  Tor Lillqvist  <tml@iki.fi>
16531
16532         * gdk/testgdk.c: New file, quick hack to test backends for
16533         pixel-by-pixel correctness of the most simple graphic operations.
16534
16535 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
16536
16537         * Really release 1.3.1
16538         
16539         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
16540         include structure.
16541
16542 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
16543
16544         * Released 1.3.1
16545
16546 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
16547
16548         * gtk/gtktextlayout.c: use FALSE for size_only most
16549         of the time when calling gtk_text_layout_get_line_display()
16550         to avoid causing double reshapes when a redraw follows
16551         immediately after.
16552
16553 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
16554
16555         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
16556         appropriate region and gdk_window_process_updates() so trough
16557         updating doesn't lag behind the window being scrolled.
16558
16559         * gdk/gdkgc.c: Make parent_class pointer static.
16560          
16561 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
16562
16563         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
16564         include <string.h>.
16565          
16566         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
16567         cut-and-paste error in computing memory offset for 4 channels.
16568
16569 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
16570
16571         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
16572         gtk_rc_append_default_pixmap_path(), since it wasn't
16573         adding an interesting path and we don't have a meaningful
16574         default for this value.
16575
16576 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
16577
16578         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
16579         gtk-config to gtk-config-2.0 move gtk_.m4 to
16580         gtk-2.0.m4
16581
16582         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
16583         gdk/Makefile.am demos/Makefile.am: Change 
16584         library names to libgtk-1.3.la, etc, so that we
16585         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
16586
16587         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
16588         gdk/Makefile.am gdk/x11/Makfile.am
16589         Move include files into /usr/include/gtk-2.0, 
16590         /usr/lib/gtk-2.0/include/
16591          
16592         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
16593         gtk/gtkintl.h: Change package for gettext from 
16594         gtk+ to gtk20. Put hack in autogen.sh to modify
16595         po/Makefile.in.in after gettextize to make this
16596         possible.
16597
16598         * gtk+.spec: Some updates, not tested.
16599
16600         * gdk-pixbuf/Makefile.am: Move loaders into
16601         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
16602
16603         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
16604         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
16605         to THEMENAME/gtk-2.0/. Move engine directory  to
16606         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
16607         
16608 2000-07-12  Tor Lillqvist  <tml@iki.fi>
16609
16610         Win32 changes, still doesn't build though.
16611
16612         * gdk/makefile.cygwin
16613         * gdk/win32/makefile.cygwin
16614         * gtk/makefile.cygwin: Updates.
16615
16616         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
16617         default values for fg and bg pixel as X11 does (0 and 1), not
16618         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
16619         Use 0 for pen width by default (treated as 1 anyway later, but for
16620         apps that might check the value in the GdkGC).
16621         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
16622         interface to gdk_gc_predraw and _postdraw.
16623
16624         * gdk/win32/gdkwin32.h
16625         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
16626
16627         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
16628         extraneous semicolon.
16629
16630         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
16631
16632         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
16633         not the Win32 bitspixel value.
16634
16635         * gdk/win32/gdkcc-win32.c:
16636         * gdk/win32/gdkcolor-win32.c 
16637         * gdk/win32/gdkprivate-win32.h
16638         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
16639         GDK object structure.
16640
16641 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
16642
16643         * docs/tutorial/gtk_tut_12.es.sgml (name): 
16644         * docs/tutorial/gtk_tut_it.sgml (name): 
16645         * docs/tutorial/gtk_tut_fr.sgml (name): 
16646         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
16647         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
16648
16649 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
16650
16651         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
16652           small changes.
16653
16654 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
16655
16656         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
16657         a bug here, never been here and never fixed anything ;(
16658         (don't segfault if tree->root_tree is NULL, which happens prior
16659         to widget realization, but puke instead).
16660
16661 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
16662
16663         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
16664         add the necessary tokens.
16665
16666         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
16667         (gtk_rc_style_to_style): copy thicknesses.
16668         (gtk_rc_init_style): apply thicknesses.
16669         (gtk_rc_parse_style): parse xthickness and ythickness.
16670
16671         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
16672
16673         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
16674         (gdk_window_new): 
16675         (_gdk_windowing_window_init): 
16676         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
16677         (gdk_pixmap_create_from_data): 
16678         (gdk_bitmap_create_from_data): 
16679         (gdk_pixmap_new): 
16680         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
16681         (gdk_image_new): 
16682         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
16683         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
16684         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
16685         (gdk_colormap_get_system): 
16686         (gdk_colormap_new): 
16687         * gdk/gdkwindow.c (gdk_window_init): 
16688         * gtk/gtkstyle.c (gtk_style_new):
16689         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
16690         * gdk/gdkpixmap.c (gdk_pixmap_init): 
16691         * gtk/gtkrc.c (gtk_rc_style_new):
16692         use g_object_new() instead of g_type_create_instance() which
16693         is a private function for fundamental type implementations.
16694
16695 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
16696
16697         * configure.in: Add check for db2html
16698
16699 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
16700
16701         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
16702         hack to set glib_debug_objects based on gtk_debug_flags.
16703
16704 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
16705
16706         * INSTALL.in: Update the Prerequisites section.
16707
16708         * Makefile.am demos/Makefile.am docs/Makefile.am
16709         docs/tutorial/Makefile.am gdk/x11/Makefile.am
16710         gdk/linux-fb/Makefile.am: Dist fixes
16711
16712 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
16713
16714         * NEWS: 10,000 foot view of 1.3.1 changes.
16715
16716 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
16717
16718         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
16719         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
16720         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
16721         gdk/x11/gdkmain-x11.c: 
16722
16723         Patch from George Lebl to add a GdkGrabStatus enumeration to use
16724         as a return value of gdk_*_grab(). Previously, we just
16725         returned the X11 values directly.
16726
16727 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
16728
16729         * gdk/x11/Makefile.am: Patch from George Lebl to 
16730         install all the headers in the right place.
16731
16732 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
16733
16734         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
16735           initial conversion to DocBook.
16736
16737 2000-07-04  Tor Lillqvist  <tml@iki.fi>
16738
16739         * README.win32: Improve a bit.
16740
16741         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
16742         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
16743         Alt+0nnn on the numpad (used to enter characters by numeric code
16744         from current DOS or ANSI codepage) working correctly, as in other
16745         Windows apps.
16746
16747         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
16748         same argument validity tests as in X11 version.
16749         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
16750
16751         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
16752         definitions in case missing from headers.
16753
16754         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
16755         destroy the window-specific cursor.
16756         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
16757         calling GetModuleHandle(NULL).
16758         (gdk_window_set_cursor): Reworked to always copy the passed cursor
16759         with CopyCursor before setting it as the window-specific
16760         cursor. It is OK for the caller to destroy the GdkCursor (and thus
16761         also its Windows cursor) after calling this function. Destroy any
16762         previous window-specific cursor.
16763
16764 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
16765
16766         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
16767         font charset is iso8859-1, not iso-8859-1.
16768
16769 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
16770
16771         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
16772         Use g_get_charset() instead of g_get_codeset().
16773
16774         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
16775         Comment out some strdup'ing functions to keep timj
16776         happy until we finish fighting this out.
16777
16778 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
16779
16780         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
16781         <= width or height.
16782
16783         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
16784         from 1.2 for parent/child states.
16785
16786         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
16787         of typos.
16788
16789         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
16790         event structures, replace with a generic axes field. Replace 
16791         deviceid/sourec with GdkDevice *device.
16792
16793         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
16794         to extract particular axis use value from event. (Also
16795         can be used for normal X/Y.)
16796
16797         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
16798         allow for arbitrary number of axes, namespace everything
16799         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
16800         everywhere.
16801
16802         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
16803         Get rid of the gdk_input_vtable setup if favor of simply
16804         defining the functions in gdkinput-none/gxi/xfree.c in
16805         a similar fashion to the way that the port structure is 
16806         done.
16807
16808         * gtk/gtkdnd.c: Fix fields of synthesized button press event
16809         for new event structures. 
16810
16811         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
16812         new device interfaces.
16813
16814 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
16815
16816         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
16817         set the initial text.
16818
16819         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
16820         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
16821         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
16822         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
16823
16824         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
16825         pango_layout_set_font_description to simplify.
16826
16827 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
16828
16829         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
16830         pango_layout_set_font_description to simplify.
16831
16832 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
16833
16834         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
16835         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
16836         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
16837
16838         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
16839         PANGO_PIXELS() macro.
16840
16841 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
16842
16843         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
16844         that returns a PangoContext owned by the widget and updated to
16845         match future changes in the widget. Also, make 
16846         gtk_widget_create_pango_layout() use this context. If we ever
16847         add a ::changed signal to PangoContext, this will make things
16848         much more convenient. 
16849
16850         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
16851         in the appropriate places instead of destroying the layouts and
16852         creating new ones.
16853
16854         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
16855         in a few strategic places.
16856
16857 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
16858
16859         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
16860         gtk_widget_size_request() on reparented child, if one. Otherwise,
16861         queue_resize() on the child never results in it getting size-requested
16862         at all.
16863
16864         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
16865         in option menus, so that (with luck) people won't copy it into
16866         their apps in the future.
16867
16868         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
16869         to gtk_option_menu_calc_size. This isn't perfect, but should fix
16870         a lot of problems with changing the size of the menu's menu
16871         items after adding it to the option menu.
16872
16873         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
16874
16875         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
16876         the text direction for a widget changes.
16877
16878         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
16879         ::direction_changed to get rid of various hacks.
16880
16881 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
16882
16883         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
16884         name.
16885
16886 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
16887
16888         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
16889         flag to the structure. Do not call XFreePixmap on pixmaps created
16890         by gdk_pixmap_foreign_new().
16891
16892 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
16893
16894         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
16895         value using GdkRGB functionality given GdkColormap and GdkColor.
16896         (name not final, waiting for inspiration.)
16897         
16898         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
16899         set the foreground/background of a GC using the GC's colormap
16900         and GdkRGB. (name not final, waiting for inspiration.)
16901
16902         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
16903         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
16904
16905         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
16906         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
16907         purely a function of the corresponding colormap. Make
16908         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
16909
16910         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
16911         gdk_pixbuf_*create_from_xpm_* in terms of
16912         gdk_pixbuf_new_from_xpm_data(), move into platform independent
16913         code.
16914
16915         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
16916         advantage of the new draw_rgb_32_image_dithalign.
16917
16918         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
16919
16920         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
16921         on each created GC.
16922
16923         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
16924
16925         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
16926         which we initialize from the drawable when the GC is created,
16927         if the drawable has a colormap.
16928
16929         * gdk/x11/gdkgc-x11.c: include string.h for memset.
16930
16931         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
16932
16933         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
16934
16935 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
16936
16937         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
16938         actually returning expose events, make sure to set
16939         the count field properly.
16940
16941         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
16942         accidentally reintroced bug which always cleared
16943         the graphics_exposures value. 
16944
16945 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
16946
16947         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
16948
16949 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
16950
16951         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
16952
16953 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
16954
16955         * docs/faq/gtk-faq.sgml: Start of Section 6.
16956
16957 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
16958
16959         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
16960         
16961         (Fixes problem with drawing childless frames. Pointed out
16962         by and a first patch from Anders)
16963         
16964         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
16965         compute a child_allocation, even if we don't have a child.
16966
16967         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
16968         Always chain to the parent's impl, even if we don't have a child.
16969
16970 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16971
16972         * gdk/gdkrgb.c: If possible, create only a single shm segment and
16973         use multiple parts of it instead of creating a bunch of separate
16974         segments, since the maximum number of segments per system is not
16975         large. (This might be worth backporting to GTK+-1.2.x if we make a
16976         new release )
16977
16978         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
16979         structure in preparation for per-colormap GdkRGB.
16980
16981         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
16982         to False when we get EINVAL from shmget so that the caller of
16983         gdk_image_new can retry with a smaller segment size.
16984
16985 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
16986
16987         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
16988
16989 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
16990
16991         * configure.in: make the current version number 1.3.1 (binary age 0,
16992         interface age 0).
16993         
16994         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
16995         gtkcompat.h is all we want.
16996
16997         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
16998         GLib primitive types. fixed g_type_register_fundamental() argument
16999         ordering.
17000
17001         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
17002         compiles.
17003
17004         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
17005         object code cleanup, comment trigraph fixes, etc...
17006
17007 2000-06-23  Havoc Pennington  <hp@redhat.com>
17008
17009         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
17010         instead of making up a bogus name for first_para_mark
17011
17012         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
17013         0 as a context ID
17014
17015 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
17016
17017         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
17018
17019 2000-06-21  Havoc Pennington  <hp@pobox.com>
17020
17021         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
17022         we didn't check window->bg_pixmap != GDK_NO_BG.
17023
17024         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
17025         gdk-pixbuf
17026
17027 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
17028
17029         * docs/faq/gtk-faq.sgm: Move file to here.
17030           TODO: Update Makfile.am 
17031
17032 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
17033
17034         * docs/gtk-faq.sgm: Add Section 2
17035
17036 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
17037
17038         * docs/gtk-faq.sgm: New file. Start of DocBook
17039           version of the FAQ.
17040
17041 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
17042
17043         * configure.in (GDK_PIXBUF_MAJOR): Define version
17044         numbers for GDK_PIXBUF_*, as they get substituted
17045         into a header file. Need to consider versioning
17046         for gdk-pixbuf more carefully later.
17047
17048 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
17049
17050         Work with srcdir != builddir.   
17051         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
17052         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
17053         * demos/testpixbuf.c: Likewise.
17054         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
17055         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
17056         <gdk/x11/gdkx.h>.
17057         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
17058         "gdk-pixbuf.h".
17059         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
17060
17061 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
17062
17063         * TODO.xml: Change 1.4 version numbers to 2.0.
17064
17065 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
17066
17067         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
17068         fixups to GTK+ standard.
17069
17070 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
17071
17072         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
17073         gdk-pixbuf.
17074
17075         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
17076         fixups for GObject.
17077
17078         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
17079         gdk-pixbuf with GDK dependencies moved into GDK.
17080         
17081         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
17082         move gdk-pixbuf-loader here until GObject has signals.
17083
17084         * demos/: New directory of demos. Move demos from
17085         gdk-pixbuf here.
17086
17087         * demos/pixbuf-init.c: Small bit of code to check for
17088         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
17089         set GDK_PIXBUF_MODULEDIR appropriately.
17090
17091         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
17092         define which no longer makes sense.
17093
17094 2000-06-21  Havoc Pennington  <hp@redhat.com>
17095
17096         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
17097         gtk_get_default_language
17098
17099         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
17100         new function to get the default language
17101
17102         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
17103         s/gtk_text_view_style_values/gtk_text_style_values/
17104
17105         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
17106         Add a "language" field to tags.
17107
17108         (gtk_text_tag_set_arg): Fix bug in setting
17109         "bg_full_height_set" tag.
17110
17111 2000-06-21  Havoc Pennington  <hp@redhat.com>
17112
17113         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
17114         in the interfaces
17115
17116         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
17117         stuff instead when possible.
17118
17119         * gtk/gtktexttypes.h: Delete some unused constants
17120
17121         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
17122         testtextbuffer.c: use glib instead of custom unicode routines
17123
17124 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
17125
17126         * docs/es/: Removed mistakenly added generated sgml
17127
17128         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
17129         Remove outdated info files.
17130
17131         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
17132         Moved tutorial files into subdir
17133
17134         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
17135         subdir.
17136
17137         * docs/man/gtk_button.pod: Remove. (contents will be
17138         integrated into gtk-reference button page.)
17139
17140         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
17141         docs/faq/Makefile.am: Adjust for new organization
17142
17143 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
17144
17145         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
17146         not $(MKINSTALLDIRS)
17147
17148 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
17149
17150         * gtk/testgtk.c (create_text): Finish the job Elliot started
17151         of removing font setting test for text widget. (Since text widget
17152         and GdkFont are not deprecated, and cause portability problems.)
17153
17154 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
17155
17156         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
17157         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
17158         Remove use of libunicode in favor of new GLib functions.
17159
17160         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
17161         nano-x, framebuffer. The X11 include is just a hack until we get
17162         the necessary functions in gdkcolor.h, so there is no reason to
17163         add other includes of platforms.
17164
17165         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
17166         window bigger than the screen change.
17167
17168         * gtk/testgtk.c: Revert some random changes from Elliot
17169         that had no particular point and were causing testgtkrc
17170         not to function correctly.
17171         
17172         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
17173         because GdkSegment and GdkRegionBox have the same fields,
17174         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
17175         results in clearer code.
17176
17177         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
17178         gdk_input_translate_coordinates): Fix missed GdkObjectification
17179
17180 2000-06-18  Elliot Lee  <sopwith@redhat.com>
17181
17182         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
17183         * gtk/gtk{plug,socket}.h: Missed commits from previous.
17184
17185 2000-06-20  Havoc Pennington  <hp@redhat.com>
17186
17187         * modules/linux-fb/Makefile.am: Make this compile
17188         without framebuffer enabled
17189
17190         * gdk/linux-fb/Makefile.am: Add conditional to not build
17191         framebuffer unless specified in configure
17192
17193         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
17194         the size of the target instead of source if -1 was passed for
17195         width/height
17196
17197         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
17198         width/height confusion.
17199
17200 2000-06-19  Havoc Pennington  <hp@redhat.com>
17201
17202         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
17203         GDK_DRAWABLE_XID. In the future, we probably want to make it
17204         faster with G_DISABLE_CHECKS turned on.
17205
17206 2000-06-14  Havoc Pennington  <hp@redhat.com>
17207
17208         * gdk/Makefile.am: add gdkpixmap.c
17209
17210         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
17211         s/gdk_image_init/_gdk_windowing_image_init
17212
17213         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
17214         ref/unref
17215
17216         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
17217
17218         * gdk/gdkcompat.h: remove GdkWindowType compat, since
17219         GdkWindowType is now non-deprecated; 
17220         change gdk_window_get_type() compat to be
17221         gdk_window_get_window_type().
17222
17223         * gdk/gdkdnd.h: make GdkDragContext a GObject.
17224
17225         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
17226         virtual GObject. Make all functions call into the vtable.
17227         Move gdk_image_put() guts in here. Remove GdkDrawableType
17228         and gdk_drawable_get_type(), these are now GdkWindow-specific.
17229         draw_image, get_depth, get_size, set_colormap, get_colormap,
17230         get_visual added to the vtable.
17231         
17232         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
17233         GObject. Virtualize everything. 
17234         (gdk_gc_new_with_values): remove check for destroyed window,
17235         because now GdkWindow::create_gc will check this.
17236         (gdk_gc_set_values): New function to set GC values, this 
17237         was already implemented but wasn't in the header
17238
17239         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
17240
17241         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
17242         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
17243         remove _gdk_window_class; add _gdk_window_impl_get_type() and
17244         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
17245         _gdk_windowing_window_init, rename gdk_image_init to
17246         _gdk_windowing_image_init.
17247         
17248         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
17249         (gdk_draw_layout): Remove check for destroyed window, 
17250         because all the drawable methods already check it.
17251         
17252         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
17253         Add gdkpixmap.c which contains implementation of GdkDrawable
17254         virtual table (by chaining to a platform-specific implementation
17255         object).
17256         
17257         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
17258         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
17259         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
17260         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
17261         GdkColormapPrivate. 
17262
17263         * gdk/gdktypes.h: #include <glib-object.h>
17264
17265         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
17266         Move most functionality to platform-specific implementation
17267         object. GdkWindow itself now handles the backing store, then
17268         chains to the platform-specific implementation.
17269         (gdk_window_get_window_type): return GdkWindowType of the window.
17270         (gdk_window_peek_children): New routine, returns the children of 
17271         a GdkWindow
17272         (gdk_window_get_children): Was in X11-specific code and did 
17273         XQueryTree. Changed to simply return a copy of window->children; 
17274         so it can go in cross-platform code.
17275         
17276         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
17277
17278         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
17279         GdkColormap; just changed to use the new private data instead
17280         of casting to GdkColormapPrivate.
17281
17282         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
17283         gdk_cursor_new().
17284
17285         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
17286         (private data member in the GObject). 
17287         (xdnd_manager_source_filter): Function had broken 
17288         error handling, fix it (use gdk_error_trap_push).
17289
17290         * gdk/x11/gdkdrawable-x11.c: This file now implements
17291         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
17292         base class is purely for the convenience of the X port,
17293         and not part of the interface to cross-platform GDK.
17294
17295         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
17296         
17297         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
17298         specific to X, and returned by the create_gc virtual method
17299         of GdkDrawableImplX11. 
17300         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
17301         rather than gchar, this was also changed in the GdkGC vtable.
17302         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
17303         mask is 0, return immediately, instead of checking every flag.
17304         This is faster, and keeps us from segfaulting if values is NULL
17305         and the mask contains some nonzero flags.
17306
17307         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
17308         GdkWindow.
17309
17310         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
17311         GdkWindowPrivate is gone.
17312
17313         * gdk/x11/gdkim-x11.c: rename things that got renamed.
17314
17315         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
17316         remove the image_put stuff that got transferred to GdkDrawable.
17317         
17318         * gdk/x11/gdkinput.c: renamings
17319
17320         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
17321
17322         * gdk/x11/gdkpixmap-x11.c: GObject conversion
17323
17324         * gdk/x11/gdkprivate-x11.h: indentation fixes
17325
17326         * gdk/x11/gdkproperty-x11.c: renamings
17327
17328         * gdk/x11/gdkselection-x11.c: renamings
17329
17330         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
17331         implements the platform-specific "impl" object.
17332         Moved gdk_window_get_children to gdk/gdkwindow.c
17333
17334         * gdk/x11/gdkx.h: Remove all the private structs and private datas
17335         that no longer exist. Add declaration of GdkGCX11 object here.
17336         Fix all the macros to still work. 
17337
17338         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
17339         GdkDragContext from the boxed types since they are now GObjects.
17340
17341         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
17342         moved xthickness/ythickness into the instance. GtkStyleClass
17343         functions are now in the standard vtable for GtkStyle, so you have
17344         to create a GObject subclass to write a theme engine.
17345         (gtk_style_copy): fixed a leaked PangoFontDescription
17346         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
17347         can be the standard GObject function.
17348         
17349         * Throughout GTK:
17350         s/style->klass->[xy]thickness/style->[xy]thickness
17351         s/pango_layout_unref/g_object_unref/
17352
17353         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
17354         
17355         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
17356         accessing GDK internals.
17357
17358         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
17359         accessing GDK internals.
17360
17361 2000-06-18  Elliot Lee  <sopwith@redhat.com>
17362
17363         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
17364
17365         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
17366         problem by calculating event position relative to the trough
17367         rather than the slider.
17368         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
17369
17370         * gdk/gdkgc.h: Add GDK_NOR.
17371
17372         * configure.in, Makefile.am: Add modules top level dir
17373         * configure.in: Only use pangox library if building x11 target.
17374         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
17375
17376 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
17377
17378         * gtk/gtkcolorsel.c: Change private class member to be named
17379         private_data throughout the file.
17380
17381         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
17382         private_data to avoid clashing with keyword.
17383
17384 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
17385
17386         * gdk/gdkdnd.h: Add comment to remove warning.
17387
17388 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
17389
17390         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
17391         Byelorussian language; changed the Makefile and file names 
17392         to reflect that.
17393
17394 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
17395
17396         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
17397         rather than gdk_window_hide; this makes things work
17398         correctly if the window is programmatically hidden while
17399         iconified.
17400
17401 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
17402
17403         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
17404         cut and paste typo where wrong pixmap was being
17405         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
17406
17407 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
17408
17409         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
17410         Add helper function to compute format / bytes 
17411         relationship. Use in a couple places to fix up
17412         errors which assume 8 * format.
17413
17414         * gtk/gtkselection.c (gtk_selection_request): Use 32
17415         rather than 8 * sizeof (GdkAtom), to work correctly
17416         on Alpha.
17417
17418 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
17419
17420         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
17421         libgtk.la
17422         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
17423         versions
17424
17425         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
17426         checking macros return NULL since the function has a return value.
17427
17428 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
17429
17430         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
17431         GTK+ from building at all.
17432
17433         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
17434
17435 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
17436
17437         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
17438         gtk/Makefile.am: make it possible to configure gtk for different
17439         targets on the same platform. The library name is now 
17440         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
17441         flag. Only the x11 target compiles right now.
17442         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
17443         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
17444         * gdk/nanox/gdk*generic*: delete generic region code.
17445         * gdk/linux-fb/gdk*generic*: delete generic region code.
17446         * README.nanox: update information.
17447         
17448 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
17449
17450         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
17451         prepend not append. (Pointed out by Brett Hall.)
17452
17453 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
17454
17455         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
17456
17457 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
17458
17459         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
17460         need this later, and this makes sure that the atexit for
17461         glib gets called after that for GDK, so atexits are
17462         properly ordered for object leak checking.
17463
17464         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
17465
17466         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
17467         pango_x_shutdown_display()
17468
17469         * gtk/simple.c (main): Close window on destroy.
17470
17471 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
17472
17473         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
17474         to treat initial creation different from setting with 
17475         regards to the graphics-exposures parameter, so add a parameter
17476         indicating whether this is initial or not.
17477
17478 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
17479
17480         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
17481         to sort of work by adding an extra return_exposes arg
17482         to gdk_event_translate() - it might be better to simply
17483         deprecate the function altogether and force people to rewrite
17484         without it. gdk_window_scroll() handles most of it, and where
17485         gdk_window_scroll() doesn't work, simply redrawing more does.
17486
17487         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
17488         assertion.
17489
17490         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
17491
17492         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
17493         bunch of pretty much useless /* Print debugging info */ comments 
17494         which had drifted away from the code they were commenting.
17495
17496 2000-06-02  Havoc Pennington  <hp@pobox.com>
17497
17498         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
17499         is in working order.
17500         
17501         * gtk/testtext.c: Change to reflect anonymous mark API
17502
17503         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
17504
17505         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
17506         field, which was unused.
17507
17508         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
17509         saves some typing.
17510
17511         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
17512
17513         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
17514         flag on the insertion point and selection bound
17515
17516         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
17517         make mark-manipulation functions take a GtkTextMark* instead of a
17518         mark name.
17519         
17520         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
17521         GtkTextMarkBody; will be used to detect attempts to delete
17522         the permanent marks (insert and selection bound)
17523
17524         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
17525
17526 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
17527
17528         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
17529         flag to on.
17530
17531         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
17532         Honor DOUBLE_BUFFRED_FLAG
17533
17534         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
17535         function to set the DOUBLE_BUFFERED flag.
17536
17537         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
17538         or not exposes done on the widget should be double-buffered.
17539
17540         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
17541         to be what would be expected. (Fixes problem with a
17542         g_return_if_fail() validating a TextDirection enumeration)
17543
17544 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
17545
17546         * gtk/gtkwidget.c: Remove all references to 
17547         offscreen flag which was no longer used.
17548
17549         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
17550
17551         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
17552         for non-null label_widget->parent.
17553
17554         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
17555         which no longer was used.
17556
17557         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
17558
17559         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
17560         for null arguments.
17561
17562         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
17563         check for destroyed windows.
17564
17565 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
17566
17567         * gtk/gtkimmulticontext.c: Add a finalize method and unref
17568         the slave context there.
17569
17570         * gtk/gtkinvisible.[ch]: Make reference counting behavior
17571         identical to GtkWindow.
17572
17573 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
17574
17575         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
17576         pangox to here, so we can write them independent of rendering
17577         system, using GDK primitives.
17578
17579         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
17580         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
17581         since we have a rendering-system independent implementation in
17582         terms of draw_glyphs().
17583         
17584         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
17585         function to render a single line.
17586
17587         * gdk/x11/gdkpango.c: Move the guts of this file mostly
17588         into ../gdkpango.c, which simplifies things, since we
17589         don't have to deal with raw X gc's.
17590
17591 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
17592
17593         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
17594         get the logical attributes for a given GtkTextLine.
17595
17596 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
17597
17598         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
17599         g_locale_get_codeset() to g_get_codeset() change.
17600
17601 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
17602
17603         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
17604         descriptions.
17605
17606         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
17607         the entry.
17608
17609         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
17610         redoing (vastly simplifying) for Pango. Still needs quite
17611         a bit of work. (Size selection is currently poor. List of 
17612         predefined sizes is not a good idea, since all of these
17613         sizes won't necessarily be distinct.)
17614
17615 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
17616
17617         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
17618         CODESET results for LANG=C.
17619
17620 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
17621
17622         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
17623         which takes a stringized pango font description;
17624         ignore the older 'font' and 'fontset' declarations.
17625
17626         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
17627         field with a GdkFont derived via gdk_font_from_description(),
17628         for compatibility. (Should we just remove it entirely?
17629         Probably too much compatibility breakage, but people
17630         should be migrating to the new Pango stuff as quickly
17631         as possible.)
17632
17633 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
17634
17635         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
17636
17637 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
17638
17639         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
17640         redoing; there are some bugs in size allocation right
17641         now, the semi-existant distinction between header / day
17642         fonts was removed, but, with Pango, could actually
17643         be made functional in a nice way.
17644         
17645         * gtk/testcalender: Move calender from examples into this
17646         directory as a test program. (We really need to restrcture
17647         testgtk into a whole directory full of tests for every
17648         widget or functionality group, separated into multiple .c
17649         files.)
17650
17651 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
17652
17653         * gtk/testgtk.c (file_exists): Fix stupid typo that
17654         was keeping RC file from being loaded.
17655
17656         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
17657         RC file font code.
17658
17659 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
17660
17661         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
17662         Add function to load a GdkFont from a PangoFontDescription.
17663
17664 2000-05-29  Tor Lillqvist  <tml@iki.fi>
17665
17666         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
17667         variable should be of type GdkEventPrivate.
17668
17669 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
17670
17671         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
17672         to have any widget for the label, use a GtkLabel widget
17673         to display the text. (Based partially on a patch from
17674         Anders Carlson.)
17675
17676         (Quite a bit of code reorganization - strip 90% of the
17677         guts out of gtkaspectframe and add a single virtual
17678         func to GtkFrameClass - compute_child_allocation.)
17679
17680 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
17681
17682         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
17683         (Removed clist->row_center_offset field because caching
17684         it wasn't saving time or code, added private function
17685         _gtk_clist_create_cell_layout()).
17686
17687 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
17688
17689         * gtk/gtkaccellabel.c: Pangoized.
17690
17691         * gtk/[hv]ruler.c: Pangoized
17692
17693 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
17694
17695         * gtk/gtkfilesel.c (gtk_file_selection_init):
17696         Use gtk_clist_set_column_auto_resize() to remove need
17697         need for manual column width computations.
17698
17699 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
17700
17701         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
17702         ensuring Pango correctness, and considerably simplifying the
17703         code.
17704         
17705         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
17706
17707         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
17708         getting of numbers of lines.
17709
17710         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
17711         to the actual requested width of the lable, not to the wrap
17712         width we set.
17713
17714         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
17715
17716         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
17717           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
17718
17719         * gtk/gtktextview.c: Fix structure inheritance.
17720
17721         * gtk/gtkprogressbar.c: Pangoize.
17722
17723 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
17724
17725         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
17726         in a function.
17727
17728         * gtk/gtktextlayout.c (find_display_line_above): Fixed
17729         bug with computing line tops.
17730
17731         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
17732
17733 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
17734
17735         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
17736         and y_offset coordinates to do what we need now. (The offset between
17737         buffer and layout coordinates has been reintroduced, but is a 
17738         bit different than before.)
17739
17740         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
17741         handle the adjustments ourselves, and scroll as necessary using
17742         the new gdk_window_scroll().
17743         
17744         The advantage of this is that when we are incrementally revalidating,
17745         we are essentially rearranging things around the visible portion
17746         of the screen. With the old setup, the visible portion of the
17747         screen was moved around in the layout, so scrolling and redrawing
17748         to track that caused jumping of the display. Since we now
17749         control the scrolling ourselves, we can suppress this and
17750         only redraw when things actually change.
17751
17752 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
17753
17754         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
17755         the region not just redisplay it after-all, since we store the
17756         cursors in the LineDisplay. (Ugly interactions here between
17757         GtkLayout and GtkTextBTree here.)
17758         
17759         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
17760
17761 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17762
17763         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
17764         Added function to scroll contents of a window while keeping the
17765         window constant. Works by XCopyArea or guffaw-scrolling depending
17766         on the details of how the window is set up. (guffaw-scrolling
17767         still needs to be filled in.)
17768
17769 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
17770
17771         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
17772         move the debugging that was tied to a global variable
17773         to that.
17774
17775         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
17776
17777         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
17778         validated flag, in line data instead of setting height/width to
17779         -1. This allows us to perform operations with partially invalid
17780         buffer (using the old size for invalid lines) and thus to do
17781         incremental vaidation. Keep height/width aggregates up to date
17782         when deleting text and rebalancing the tree.
17783
17784         * gtk/gtktextbtree.[ch]: Add functions validate a line
17785         (gtk_text_btree_validate_line), and to validate up
17786         to a number of pixels (gtk_text_btree_validate).
17787
17788         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
17789         that indicates that something is changed and a revalidation
17790         pass is needed. Change ::need_repaint to ::changed, and
17791         make it take old and new yranges instead of a rectangle.
17792
17793         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
17794         the line_data_destroy() function from 
17795         gtk_text_btree_add_view() to a virtual function in 
17796         GtkTextLayout
17797
17798         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
17799         since we are handling partial repaints in a different fashion
17800         now.
17801
17802         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
17803         of the selection instead of queueing a repaint on the
17804         entire widget.
17805
17806         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
17807         get_selection_bounds() down to btree, make the function
17808         in buffer a wrapper around the btree function.
17809
17810         * gtk/gtktextlayout.[ch]: Add functions to check if the
17811         layout is valid and to recompute either a range of pixels
17812         aroudn a line or a certain total number of pixels.
17813
17814         * gtk/gtktextlayout.[ch]: Cache a single line display;
17815         now that we only redraw the needed portions, the hit rate
17816         for this cache is quite high.
17817         
17818         * gtk/gtktextview.[ch]: Keep track of the first paragraph
17819         on the screen so that when re-laying-out the buffer, we can
17820         keep the same place. This requires connecting to ::value_changed
17821         on the adjustments
17822
17823         * gtk/gtktextview.[ch]: Add idle functions to revalidate
17824         the buffer after we receive an ::invalidated signal.
17825         
17826 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
17827
17828         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
17829         to max of allocation and layout size, not just to the
17830         layout size.
17831
17832         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
17833         Invalidate window so it gets redrawn properly.
17834
17835         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
17836         to mean the entire window.
17837
17838         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
17839         into public header.
17840
17841 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
17842
17843         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
17844         to get the name of a mark.
17845
17846         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
17847         to find the paragraph from a y position.
17848
17849 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
17850
17851         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
17852         nodes have width/height >= 0, not > 0.
17853
17854 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
17855
17856         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
17857         Add a size_only flag, so when we only need the size, we don't create
17858         useless appearance attributes.
17859
17860         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
17861         duplicate setting of font description.
17862
17863         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
17864
17865 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17866
17867         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17868         EXTRA_DIST. It does not work well when the file that
17869         everything depends on is not in the tarball.
17870
17871 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
17872
17873         * gtk/testgtk.c: Some hacks and fixes so that it basically
17874         works when not sitting in the GTK+ build tree.
17875
17876 2000-05-03  Havoc Pennington  <hp@redhat.com>
17877
17878         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
17879         Properly determine the ordering of the tag root and the current
17880         line within the tree. Previous algorithm only worked if the tag
17881         root's immediate parent was the common root of both the current
17882         line and the tag root.
17883
17884 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
17885
17886         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
17887         alignment.
17888
17889         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
17890         the widget text directional dynamically.
17891
17892         * gtk/gtktextview.[ch]: Added functions to get and set default
17893         wrap mode.
17894
17895 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
17896
17897         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
17898         in cursor location computation.
17899
17900 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
17901
17902         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
17903         vadjusment values properly when layout gets smaller.
17904
17905         * gtk/gtktextview.c (need_repaint_handler): Areas being
17906         passed in are far completely inaccurate, and sometimes
17907         too small, so, for now, just queue a redraw on the
17908         whole visible region.
17909
17910 2000-04-25  Havoc Pennington  <hp@redhat.com>
17911
17912         * gtk/gtktextbtree.c (summary_destroy): new function to 
17913         destroy tag summary nodes
17914         (gtk_text_line_next_could_contain_tag): this function was 
17915         totally broken if the line passed in wasn't below the tag
17916         root. Fix it.
17917         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
17918         "wildcard" case, we have to do a linear scan. Blah.
17919         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
17920         we have to do the linear scan
17921         (tag_removed_cb): When a tag is removed from the tag table, 
17922         remove the GtkTextTagInfo node from the btree.
17923         (gtk_text_btree_spew): Implement the spew function, for 
17924         our debugging pleasure.
17925
17926 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
17927
17928         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
17929         a problem with referring to the wrong buffer.
17930
17931         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
17932
17933         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
17934         font description to gtk_style_new() - otherwise things
17935         don't work without a .gtkrc file.
17936
17937         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
17938         tags table if we create it ourself, too.
17939
17940         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
17941         it was conflicting with XKB modifiers.
17942
17943         * gtk/gtktextview.[ch]: Add simple support for 
17944         GtkIMContext.
17945
17946 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
17947
17948         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
17949         with deletion from last commit.
17950
17951 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
17952
17953         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
17954         in the context from the current locale.
17955         
17956         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
17957         context, not hardcoded value.
17958
17959         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
17960         not logical.
17961
17962 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17963
17964         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
17965         attributes - that doesn't handle partial-glyph selection
17966         properly. Instead use new pango_layout_line_get_x_ranges()
17967         functionality to draw the selection.
17968
17969         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
17970         now properly handles out-of-range coordinates.
17971
17972         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
17973
17974         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
17975         public.
17976
17977         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
17978         for paragraphs opposite to the base direction of the widget.
17979
17980         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
17981
17982         * gtk/gtktextlayout.c: Don't split segments on marks, since that
17983         causes Arabic words to reshape as you cursor through.
17984
17985         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
17986         cursor position when moving vertically with the arrow keys and
17987         scrolling with page-up/page-down. (Arrow keys save only the X,
17988         scrolling saves both X and Y.)
17989
17990         This means you can line-up / line-down or page-up / page-down
17991         without losing your place, and also that moving vertically
17992         with the cursor keys keeps the same X position, not the same
17993         character count:
17994
17995         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
17996         arrow keys move by display lines, not paragraphs.
17997
17998 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17999
18000         * gtk/gtklayout.c: Make sure that the bin window is at least
18001         as big as the allocation. (Should we also make sure that the
18002         bin window is big enough to completely cover widget->window?)
18003
18004         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
18005         function to get the onscreen rectangle.
18006
18007         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
18008         for offsets in window coordinates.
18009
18010 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
18011
18012         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
18013         confusion.
18014
18015         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
18016         from the widget direction.
18017
18018         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
18019         Add a "direction" attribute.
18020
18021         * gtk/gtktextview.c: global s/tkxt/text_view/.
18022
18023         * gtk/testtext.c: Added long block of text in Arabic, to test out
18024         the direction attributes. (Some problems with the shaping system
18025         for arabic become obvious - like the fact the cursor splits words
18026         into unjoined pieces.)
18027
18028 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
18029
18030         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
18031
18032         * gtk/gtktextlayout.c: Fix up alignment.
18033
18034         * gtk/testtext.c: Add some tests for centering, wrapping.
18035
18036 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
18037
18038         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
18039         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
18040         If we wrote GTK+-specific layout-render function this could just replace
18041         the draw_layout() operation in the vtable.
18042
18043         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
18044         pango_layout_get_cursor_pos() and use that function.
18045
18046         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
18047         is a non-static symbol.
18048
18049         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
18050         with gtk_text_btree_find_line_by_y()
18051
18052         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
18053         renderer that handles GtkTextAppearance attributes.
18054
18055         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
18056
18057           - Move the values in the style that don't affect geometry into a
18058             GtkTextAppearance structure.
18059           - Change underline to take a PangoUnderline and "font" a string
18060             representation of a font description
18061           - Add a "font_desc" attribute which takes a FontDescription structure.
18062
18063         * gtk/gtktextlayout.[ch]:
18064
18065           - Get rid of the display-line list per each line. Instead, we
18066             generate, on demand, a GtkTextLineDisplay structure which]
18067             contains a PangoLayout * and other necesary information
18068             (offsets, cursor locations) for displaying a paragraph.
18069           - Get rid of the code to wrap lines, create display chunks,
18070             etc. Instead, we just go through a paragraph and convert
18071             it into the necessary inputs to a PangoLayout.
18072           - Implement a new attribute type, GtkTextAttrAppearance. This
18073             holds a GtkTextAppearance, and is used to pass colors, 
18074             stipple, etc, through from the layout to the display without
18075             having to use lots and lots of individual attributes.
18076           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
18077             in terms of PangoLayout functions.
18078         
18079         * gtk/gtktextview.c: 
18080          
18081           - Handle passing the necessary PangoContext to the layout
18082           - Some fixups in painting to deal with the automatic backing store
18083             and offsetting of GTK+-1.4
18084           - Add a style_set handler so that the default style reacts
18085             properly to theme changes.
18086         
18087         * gtk/gtktext?*.[ch]: Random code-style fixes.
18088
18089         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
18090
18091 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
18092
18093         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
18094         in original form preparatory to Pango-ization and gdkimcontext-ization.
18095
18096 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
18097
18098         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
18099         so that we can derive from gtkimcontext in language bindings properly.
18100
18101 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
18104         Add a compose table including (almost) all the compose combinations
18105         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
18106         data in the XIM implementation.
18107
18108         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
18109         Moved functions to convert keyvalues from and to unicode here from
18110         the win32 port and made them public.
18111
18112 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
18113
18114         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
18115
18116 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
18117
18118         * gtk/gtkimcontext.[ch]: Base class for new input context system
18119
18120         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
18121         the real input context implementation to be loaded from modules
18122         and switched on the fly.
18123
18124         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
18125         context that just does direct keysymbol => unicode translation.
18126
18127         * gtk/gtkentry.[ch]: Start switching editing over to using
18128         GtkInputContext. (No handling of preedit yet.)
18129
18130 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
18131
18132         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
18133         many substitutions. (klass should not be subsituted.)
18134
18135 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
18136
18137         * configure.in: Add checks for Pango
18138
18139         * configure.in docs/Makefile.am: Add test for sgml2html
18140         and allow 'make dist' without building html, but print out
18141         warnings in that case. (For making snapshots)
18142
18143         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
18144         Add Pango libraries and C flags
18145
18146         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
18147         Add function (gdk_draw_layout) to draw a pango layout.
18148
18149         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
18150         for getting Pango contexts for GDK.
18151
18152         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
18153
18154         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
18155         editing.
18156
18157         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
18158         keysym => unicode translations. More languages can be added
18159         here, but real input-method support is needed.
18160
18161         * docs/Changes-1.4.txt: Added note about entry behavior.
18162         
18163         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
18164         to set the reading direction for a widget and the global direction.
18165         Add test which allows toggling the global direction. Two private
18166         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
18167
18168         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
18169           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
18170
18171         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
18172
18173         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
18174         underlining now handled by Pango.
18175
18176         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
18177         to RCStyle and Style. (Having both this and the old font name and GdkFont 
18178         is temporary.)
18179
18180         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
18181         convenience functions for creating contexts and layouts for widgets.
18182
18183         * gtk/testgtk.c: Enhance label tests with multilingual labels.
18184
18185 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
18186
18187         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
18188         titles to be active, even if they aren't visible.
18189         (gtk_clist_column_titles_passive):  Ditto.
18190
18191 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
18192
18193         * gtkmenu.c:
18194         * gtkmenu.h:
18195         * gtktypeutils.h: Spelling/grammar fixes in comments.
18196
18197 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
18198
18199         * gdk/nanox/*.h: add missing header files.
18200
18201 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
18202
18203         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
18204         send_event to TRUE.
18205         (gtk_drawing_area_size): queue a resize.
18206
18207 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
18208
18209         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
18210         the handlers, also invalidate them. bug nailed down by Karl Nelson
18211         <kenelson@ece.ucdavis.edu>.
18212
18213 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
18214
18215         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
18216         "(nil)" foundries, patch from Grigorios Magklis.
18217
18218         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
18219         on non-available fonts, based on a patch by Grigorios Magklis
18220         <maglis@cs.rochester.edu>.
18221
18222 2000-05-18  Elliot Lee  <sopwith@redhat.com>
18223
18224         * gdk/x11/gdkregion-generic.c: If a region does not have any
18225         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
18226         instead of GDK_OVERLAP_RECTANGLE_IN.
18227
18228 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
18229
18230         * gtk/gtklayout.c (gtk_layout_map): Remove references to
18231         OFFSCREEN, as it is no longer necessary.
18232
18233 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
18234
18235         * gtk/gtkcolorsel.c: Patch from David Santiago
18236         <mrcooger@cyberverse.com> to change things so that the 
18237         indicator of the active palette entry is done independently,
18238         not via the focus, since it should always be visible.
18239
18240 2000-05-17  Tor Lillqvist  <tml@iki.fi>
18241
18242         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
18243         refcount leaks as in the X11 backend.
18244
18245         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
18246         cosmetics.
18247
18248         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
18249         backend. Add _gdk_windowing_window_destroy().
18250
18251         * gtk/gtkcolorsel.c: Include correct backend-specific header.
18252         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
18253         either, but these probably do exist on nanox?)
18254         
18255         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
18256         which isn't necessarily defined by <math.h>.
18257
18258         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
18259         ancestry past GtkObject.
18260
18261         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
18262         from DLL on Win32.
18263
18264         * gtk/gtk.def: Update corresponding to recent changes.
18265
18266         * gtk/makefile.{cygwin,msc}: Updates.
18267
18268 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
18269
18270         * docs/Changes-1.4.txt: A bit of editing.
18271
18272         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
18273         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
18274         to clear the update area for the window, and clear it
18275         when hiding a window.
18276
18277         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
18278         if window destroyed.
18279
18280         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
18281
18282         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
18283         gdk_window_destroy() to the generic code, since there was a lot of 
18284         window-system-independent logic it in. Add a function:
18285         
18286          _gdk_window_destroy() 
18287
18288         to the internal API to destroy a window without unreferencing it.
18289         Add a function:
18290
18291          _gdk_windowing_window_destroy()
18292
18293         That does the windowing-system-dependent part of destroying 
18294         the window.
18295
18296 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
18297
18298         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
18299
18300 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
18301
18302         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
18303         Make gtk_widget_shape_combine_mask() keep a reference count on
18304         the pixmap since it keeps it around.
18305
18306 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
18307
18308         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
18309         leak.
18310
18311         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
18312         leak with event filters.
18313
18314 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
18315
18316         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
18317         signal handlers with the right data arguments. (Fixes
18318         some warnings when a widget was repeatedly set as a drag
18319         destination.)
18320
18321         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
18322         window so we can avoid avoid setting the DND properties on the
18323         toplevel window repeatedly.
18324
18325 2000-05-13  Tor Lillqvist  <tml@iki.fi>
18326
18327         * gdk/win32/gdkwin32.h: Define more message types missing from
18328         mingw headers.
18329
18330         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
18331         call gdk_window_destroy_notify(). It was never called. This
18332         probably meant that the GdkWindow was never freed. Thanks Owen for
18333         noticing (!).
18334
18335         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
18336         window as destroyed before calling DestroyWindow(). DestroyWindow()
18337         causes a call to the window procedure (gdk_WindowProc), which
18338         calls gdk_event_translate(), which calls
18339         gdk_window_destroy_notify(), which gets confused unless the window
18340         is set as destroyed.
18341
18342         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
18343         this function to indicate it's win32 only. Put inside #ifdef
18344         G_ENABLE_DEBUG.
18345
18346         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
18347         debugging function. (gdk_event_translate:) Add a default branch
18348         that uses the above function to print debug messages with all
18349         Windows messages symbolically.
18350
18351         * gdk/win32/gdkprivate-win32.h: Declare it, and
18352         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
18353
18354 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
18355
18356         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
18357         public header file.
18358
18359 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
18360
18361         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
18362
18363         * gtk/gtktext.c: made the adjustments no-construct args, simply
18364         provide default adjustments.
18365         (gtk_text_destroy): release adjustments.
18366
18367         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
18368         adjustment argument non-construct.
18369
18370         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
18371         instead of in finalize.
18372         (gtk_progress_get_text_from_value): 
18373         (gtk_progress_get_current_text): 
18374         (gtk_progress_set_value): 
18375         (gtk_progress_get_percentage_from_value): 
18376         (gtk_progress_get_current_percentage): 
18377         (gtk_progress_set_percentage): 
18378         (gtk_progress_configure): ensure an adjustment is present.
18379
18380 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
18381
18382         * gtk/gtkcolorsel.[hc]:
18383         * gtk/gtkcolorseldialog.[hc]:
18384         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
18385         their parent implementation, use bit fields for boolean values, don't
18386         create unused widgets, usage of glib types, braces go on their own
18387         lines, function argument alignment, #include directives etc. etc. etc..
18388
18389         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
18390
18391 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
18392
18393         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
18394
18395         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
18396         of NULL.
18397
18398         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
18399         to freed data.
18400         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
18401
18402         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
18403         to NULL when the toplevel is getting destroyed.
18404         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
18405         (gtk_menu_destroy): 
18406         (gtk_menu_init): store the information of whether we have to
18407         readd the initial child ref_count during destruction in a new
18408         GtkMenu field needs_destruction_ref_count.
18409
18410         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
18411         here, those reading: learn from my mistake! ;)
18412         in order for set_?adjustment to support a default adjustemnt if
18413         invoked with an adjustment pointer of NULL, the code read (pseudo):
18414         if (v->adjustment) unref (v->adjustment);
18415         if (!adjustment) adjustment = adjustment_new ();
18416         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
18417         now imagine the first unref to actually free the old adjustment and
18418         adjustment_new() creating a new adjustment from the very same memory
18419         portion. here, the latter comparision will unintendedly fail, and
18420         all hell breaks loose.
18421         (gtk_viewport_set_hadjustment):
18422         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
18423         after unreferencing it.
18424
18425         * gtk/gtkcontainer.[hc]: removed toplevel registration
18426         functions: gtk_container_register_toplevel(),
18427         gtk_container_unregister_toplevel() and
18428         gtk_container_get_toplevels() which had wrong semantics
18429         anyways: it didn't reference and copy the list.
18430
18431         * gtk/gtkwindow.c: we take over the container toplevel registration
18432         bussiness now. windows are registered across multiple destructions,
18433         untill they are finalized. the initial implicit reference count
18434         users are holding on windows is removed with the first destruction
18435         though.
18436         (gtk_window_init): ref & sink and set has_user_ref_count, got
18437         rid of gtk_container_register_toplevel() call. add window to
18438         toplevel_list.
18439         (gtk_window_destroy): unref the window if has_user_ref_count
18440         is still set, got rid of call to
18441         gtk_container_unregister_toplevel().
18442         (gtk_window_finalize): remove window from toplevel list.
18443         (gtk_window_list_toplevels): new function to return a newly
18444         created list with referenced toplevels.
18445         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
18446
18447         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
18448         adjustment a non-construct arg.
18449         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
18450         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
18451         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
18452
18453         * gtk/gtkrange.c: added some realized checks.
18454         (gtk_range_destroy): get rid of the h/v adjustments in the
18455         destroy handler instead of finalize. remove timer.
18456         (gtk_range_get_adjustment): demand create adjustment.
18457
18458         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
18459         we simply create them on demand now and get rid of them in
18460         the destroy handler.
18461         (gtk_viewport_destroy): get rid of the h/v adjustments in the
18462         destroy handler instead of finalize.
18463         (gtk_viewport_get_hadjustment): 
18464         (gtk_viewport_get_vadjustment): 
18465         (gtk_viewport_size_allocate): demand create h/v adjustment
18466         if required.
18467
18468         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
18469         gtk_widget_real_destroy () functionality.
18470         (gtk_widget_real_destroy): reinitialize with a new style, instead
18471         of setting widget->style to NULL.
18472
18473 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
18474
18475         * gtk/gtkcalendar.c:
18476         * gtk/gtkbutton.c: ported _get_type() implementation over to
18477         GType, either to preserve memchunks allocation facilities,
18478         or because Gtk+ 1.0 GtkTypeInfo was still being used.
18479
18480         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
18481         over. prepare for ::destroy to be emitted multiple times.
18482         removed reference tracer magic. chain into GObjectClass.shutdown()
18483         to emit ::destroy signal.
18484
18485         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
18486         fundamental.
18487
18488         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
18489         cludge.
18490
18491         * gtk/gtksocket.c:
18492         * gtk/gtkplug.c:
18493         * gtk/gtklayout.c:
18494         * gtk/gtklabel.c:
18495         * gtk/gtkargcollector.c:
18496         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
18497         not being a fundamental anymore, and to work with the new
18498         type system (nuked fundamental type varargs clutter).
18499
18500         * gtk/*.c: install finalize handlers in the GObjectClass
18501         part of the class structure.
18502         changed direct GTK_OBJECT()->klass accesses to
18503         GTK_*_GET_CLASS().
18504         changed direct object_class->type accesses to GTK_CLASS_TYPE().
18505
18506         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
18507         GType. made most of the GTK_*() type macros and Gtk* typedefs
18508         simple wrappers around macros and types provided by GType.
18509         most notably, a significant portion of the old API vanished:
18510         GTK_TYPE_MAKE(),
18511         GTK_TYPE_SEQNO(),
18512         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
18513         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
18514         GTK_TYPE_ARGS,
18515         GTK_TYPE_CALLBACK,
18516         GTK_TYPE_C_CALLBACK,
18517         GTK_TYPE_FOREIGN,
18518         GtkTypeQuery,
18519         gtk_type_query(),
18520         gtk_type_set_varargs_type(),
18521         gtk_type_get_varargs_type(),
18522         gtk_type_check_object_cast(),
18523         gtk_type_check_class_cast(),
18524         gtk_type_describe_tree(),
18525         gtk_type_describe_heritage(),
18526         gtk_type_free(),
18527         gtk_type_children_types(),
18528         gtk_type_set_chunk_alloc(),
18529         gtk_type_register_enum(),
18530         gtk_type_register_flags(),
18531         gtk_type_parent_class().
18532         replacements, where available are described in ../docs/Changes-1.4.txt.
18533         implemented compatibility functions for the remaining API.
18534
18535         * configure.in: depend on glib 1.3.1, use gobject module.
18536
18537 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
18538
18539         * TODO.xml: Various updates to current status.
18540
18541 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
18542
18543         * gtk.m4: Print out version when test succeeds.
18544
18545 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
18546
18547         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
18548         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
18549         
18550         (Original triangle color selector from Simon Budig
18551         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
18552         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
18553         Santiago <mrcooger@cyberverse.com>)
18554
18555         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
18556         out into a separate widget.
18557
18558         * gtk/testgtk.c: Add some checkbuttons for toggling palette
18559         and opacity controls.
18560
18561 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
18562
18563         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
18564         snuck in prematurely.
18565
18566 2000-05-07  Tor Lillqvist  <tml@iki.fi>
18567
18568         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
18569         had deleted a ! operator by mistake, which caused
18570         GDK_SELECTION_CLEAR events never to be generated, which caused
18571         only the first copy to the clipboard from an gtkeditable to
18572         actually cause a copy to the Windows clipboard.
18573
18574 2000-05-06  Tor Lillqvist  <tml@iki.fi>
18575
18576         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
18577         compilation, too. Current mingw gcc distributions include the
18578         necessary headers. Also the necessary IIDs are now in mingw
18579         headers/libraries, and own definitions unnecessary.
18580
18581         More hacking on OLE2 DND, still doesn't work though, and thus
18582         ifdeffed out.
18583
18584         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
18585         here, too.
18586
18587 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
18588
18589         * gdk/nanox/*: nano-X port work in progress.
18590         * gdk/simple.c: simple test for Gdk.
18591         * README.nanox: notes about the port: read this first!
18592         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
18593         with nano-X.
18594
18595 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
18596
18597         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
18598         gdk_window_clear() into common code, implement in terms of
18599         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
18600         not redirected to the backing rectangle.
18601
18602 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
18603
18604         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
18605         EXTRA_DIST. It does not work well when the file that
18606         everything depends on is not in the tarball.
18607
18608 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
18609
18610         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
18611         with recursion where process_updates() is called from
18612         an expose handler. (GtkTextView is highly broken in
18613         doing this, but it should work, so it is a nice test
18614         case.)
18615
18616 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
18617
18618         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
18619         handle the case where updates are queued during processing of
18620         updates.
18621
18622 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
18623
18624         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
18625         window is on gdk_display - use that instead of segfaulting.
18626
18627 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
18628
18629         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
18630         broken and require an empty arg, give it to them.
18631
18632 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
18633
18634         * gtk/gtklabel.h: indentation fixes.
18635
18636 2000-05-02  Tor Lillqvist  <tml@iki.fi>
18637
18638         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
18639         draw too narrow or too low arcs, they seem to fail, at least with
18640         some display drivers.
18641
18642         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
18643
18644         Large changes to the Win32 backend, partially made necessary by
18645         the changes to the backend-independent internal
18646         structures. Attempts to implement similar backing store stuff as
18647         on X11. The current (CVS) version of the Win32 backend is *not* as
18648         stable as it was before the no-flicker branch was merged. A
18649         zipfile with that version is available from
18650         http://www.gimp.org/win32/. That should be use by "production"
18651         code until this CVS version is usable. (But note, the Win32
18652         backend has never been claimed to be "production quality".)
18653
18654         * README.win32: Add the above comment about versions.
18655
18656         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
18657
18658         * gdk/gdk.def: Update.
18659
18660         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
18661         presumably be replaced by some more better mechanism as 1.4 gets
18662         closer to release shape.
18663
18664         * gdk/makefile.{cygwin,msc}: Update.
18665
18666         * gdk/win32/*.c: Correct inclusions of the backend-specific and
18667         internal headers. Change code according to changes in these. Use
18668         gdk_drawable_*, not gdk_window_* where necessary.
18669
18670         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
18671         our old DND.
18672
18673         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
18674         to interpret single characters as UTF-8. Thanks to Hans Breuer.
18675         Use correct function name in warning messages.
18676
18677         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
18678         GSourceFuncs gdk_event_prepare and gdk_event_check.
18679         (gdk_event_get_graphics_expose): Do implement, use
18680         PeekMessage. Thanks to Hans Breuer.
18681         (event_mask_string): Debugging function to print an GdkEventMask.
18682         (gdk_pointer_grab): Use it.
18683
18684         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
18685         (old) book I used claimed was Hangul actually is CJK Unified
18686         Ideographs Extension A. Also, Hangul Syllables were missing.
18687         Improve logging.
18688
18689         * gdk/win32/gdkgc-win32.c: Largish changes.
18690
18691         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
18692         g_win32_getlocale() from GLib, and not setlocale() to get current
18693         locale name.
18694
18695         * gdk/win32/gdkprivate-win32.h
18696         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
18697         gdkwin32.h, similarily as in the X11 backend.
18698
18699         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
18700         assignment was used instead of equals in if test. Thanks to Hans
18701         Breuer.
18702
18703         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
18704         the X11 version.
18705
18706         * gdk/win32/makefile.{cygwin,msc}
18707         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
18708         path to the Win32 headers that works also with the mingw compiler.
18709
18710         * gtk/gtkstyle.c: Include <string.h>.
18711
18712 2000-04-26  Havoc Pennington  <hp@redhat.com>
18713
18714         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
18715         replacing the broken gtk_label_get ()
18716
18717 2000-04-15  Havoc Pennington  <hp@pobox.com>
18718
18719         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
18720         this keeps scanner scripts from getting confused.
18721
18722         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
18723         data, rather than void
18724
18725 2000-04-15  Tor Lillqvist  <tml@iki.fi>
18726
18727         * gtk/gtkclist.c (gtk_clist_motion)
18728         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
18729         with is_hint FALSE, get x and y from the event. They used to be
18730         used uninitialised. The Win32 backend never sends motion events
18731         marked as hints. This for instance fixes the annoying file and
18732         font selector behaviour in the Win32 version.
18733
18734 2000-04-14  Tor Lillqvist  <tml@iki.fi>
18735
18736         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
18737         gtk_private_n_signals variables, they are used by some software,
18738         sigh.
18739
18740         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
18741         installation directory from the Registry, where the installer
18742         should have put it.
18743
18744 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
18745
18746         * gdk/x11/Makefile.am: Fix problem with installation directory for
18747         gdkx.h
18748
18749         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
18750         <mrcooger@cyberverse.com> so that when selecting menus with the
18751         mouse, the first item will not be selected, but when selecting
18752         with an accelerator, or navigating left-right on a menubar with
18753         the menus popped up, the first item will be selected.
18754
18755 2000-04-05  Dan Damian  <dand@dnttm.ro>
18756
18757         * configure.in: Added "ro" to ALL_LINGUAS.
18758
18759 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
18760
18761         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
18762         indentation.
18763
18764         * Makefile.am (EXTRA_DIST): Fix typo.
18765
18766         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
18767         to catch gdkconfig.h
18768
18769         * gtk/gtkitemfactory.c: Added FIXME.
18770
18771 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
18772
18773         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
18774         s/return_if_fail/return_val_if_fail/g and add a return value.
18775
18776 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
18777
18778         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
18779         merge slipup.
18780
18781         * gdk/gdkinput.h: Fix missing line from merge.
18782
18783 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
18784
18785         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
18786         instead of gdkprivate.h.
18787
18788 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
18789
18790         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
18791         parent class to correctly be GtkDialogClass.
18792
18793 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
18794
18795         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
18796         toplevel windows and their immediate children by their parents,
18797         since the size of toplevel windows is out of our immediate
18798         control and we don't get any real benefit from trying to track
18799         this size for clipping.
18800
18801         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
18802         for input_only windows.
18803
18804         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
18805         to fix some hacks and make sure that we don't try to set the
18806         background of input only windows.
18807
18808 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
18809
18810         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
18811         the _really_ internal stuff, and leave gdkprivate.h for the fake private
18812         stuff that we've traditionally exposed.
18813
18814         * gdk/**.c: Use gdkinternals.h where appropriate.
18815
18816         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
18817         not include gdkprivate-x11.h, move all stuff of conceivable public
18818         interest into gdkx.h; keep all really private stuff in
18819         uninstalled header gdkprivate-x11.h.
18820
18821         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
18822         image->image_put on windows through a new function _gdk_window_draw_image()
18823         to allow us to do backing store for images. (Sort of ugly)
18824
18825         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
18826         contexts locally so that we can offset them properly when drawing 
18827         onto backing pixmaps.
18828
18829         * gdk/gdkinput.h: Reindented
18830
18831         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
18832         pixmap or color for the window, so we can properly initialize
18833         our double-buffer pixmaps, and also so that we temporarily set
18834         a background of None while scrolling.
18835
18836         * gdk/gdkregion.h: Revise region boolean operators to have an
18837         interface that is actually convenient - switch from creating new
18838         regions on every op, to "methods" that modify existing regions
18839         (A = A OP B). 3 argument forms which allow dest == src, would also
18840         be possible, but the current interfaces seem to map nicely
18841         onto what needs to be done. (There is quite a lot of region
18842         code in GDK now.)
18843
18844         * gdk/gdkregion.h: Add constructor from rectangle and a copy
18845         operator.
18846
18847         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
18848         gdkpoly-generic.h: Copy region code from Xlib, switch it over
18849         to 32 bit coordinates, modify it to be mostly GTK+ style
18850         and to have interfaces that match gdkregion.h.
18851
18852         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
18853         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
18854         create a backing pixmap and redirect all drawing to
18855         that backing pixmap until a matching gdk_window_end_paint().
18856
18857         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
18858         Create a special drawable class for GtkWindow's that 
18859         redirects the drawing to the backing pixmap as necessary
18860         and then calls the real operations in _gdk_windowing_window_class.
18861
18862         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
18863         Store invalid region for each window. Generate expose events for invalid
18864         region in an idle. This replaces both the expose compression
18865         and the redrawing queuing in GTK+. It is both more efficient and
18866         simpler than either one individually and far more so then the
18867         combination.
18868
18869         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
18870         Emulate 32 bit coordinates for windows with 16 bit coordinates
18871         by offsetting drawing, guffaw scrolling techniques and
18872         mapping/unmapping child windows as necessary.
18873
18874         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
18875         where, when invalid regions are processed, the region is stored,
18876         and if expose events come in that are detectably duplicate
18877         the processed exposes (by comparison of event serial numbers),
18878         the stored region is subtracted out of those exposes.
18879
18880         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
18881         regions newly exposed when scrolling or resizing windows.
18882         This, combined with forcing processesing of queued invalidated
18883         regions, gives nice flicker-free scrolling.
18884
18885         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
18886         invalidated regions after every scroll.
18887
18888         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
18889         emulation in GDK. Its, for all practical purposes just a
18890         GtkViewport/GtkFixed hybrid now.
18891
18892         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
18893         (16-bit) structures as necessary instead of just casting.
18894
18895         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
18896         in terms of the structures from gdkregion-generic.c, using appropriate
18897         offsets from GDK to X11 coordinates. Cache clip mask and
18898         origin and ts origin locally and only flush to the server
18899         when drawing, to avoid constantly setting and resetting these
18900         values when offsetting GC's for scrolling and backing pixmaps.
18901
18902         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
18903
18904         * gtk/gtkcontainer.c: Call process_all_updates at end
18905         of resizing to reduce flicker. (Avoids having redraw
18906         lag arbitrarily behind resize under some circumstances)
18907
18908         * gtk/gtkentry.c: Remove old backing store code, and simply take
18909         advantage of the new backing store capabilities of GDK.
18910
18911         * gtk/gtkmain.c: Simple implementation of widget backing
18912         store - simply push a paint while handling each expose.
18913         (Should really be configurable widget for widget.)
18914         
18915         * gtk/gtkwidget.c: Remove all the old complicated redraw
18916         code, and simply invalidate the GDK windows from
18917         gdk_window_queue_clear(), etc. (Sigh, so much carefully
18918         debugged complexity ... gone to the winds.)
18919
18920         Remove all the code for suppressing expose events while
18921         resizes are pending; this isn't needed since the invalid
18922         areas won't be processed until after the resizes are
18923         processed, since they are in a lower priority idle.
18924
18925 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
18926
18927         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
18928         and height of dest rectangle for non-intersecting rectangles.
18929
18930 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
18931
18932         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
18933         for GdkRectangle.
18934
18935 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
18936
18937         * gdk/gdk{events,image,private,types,window}.h
18938          gdk/x11/gdkinputprivate.h: Change all coordinates
18939          from int16 to int. Also, Change width and height from
18940          unsigned to signed to avoid all the stupid C 
18941          signedness bugs.
18942
18943 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
18944
18945         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
18946         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
18947         Add some more detailed checking.
18948
18949         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
18950         New function to retrieve the depth of a drawable.
18951
18952         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
18953         field, reorder fields to save memory. 
18954
18955 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
18956
18957         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
18958         of the background image instead of scaling the background down to
18959         a line.
18960
18961         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
18962         which temporarily set slider to wrong size.
18963
18964         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
18965         queue_clear().
18966
18967 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
18968
18969 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
18970
18971         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
18972
18973 2000-03-17  Tor Lillqvist  <tml@iki.fi>
18974
18975         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
18976         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
18977
18978         * gdk/win32/gdkfont-win32.c
18979         * gdk/win32/gdkproperty-win32.c
18980         * gdk/win32/gdkselection-win32.c
18981         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
18982         now declared such.
18983
18984 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
18985
18986         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
18987
18988 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
18989
18990         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
18991         is called without trapping X errors.
18992
18993 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
18994
18995         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
18996         way into the fontset lists.
18997
18998 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
18999
19000         * gtk/gtkthemes.h: add extern "C" scope.
19001
19002 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
19003
19004         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
19005         to make appends to the list constant. (gtk-guy-990901-0.patch)
19006
19007 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
19008
19009         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
19010         for the typename hash table.
19011
19012 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
19013
19014         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
19015         to make sure we never divide by zero. 
19016         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
19017
19018 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
19019
19020         * gtk/gtkfontsel.c: Apply patch from
19021         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
19022         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
19023
19024         Also, some cleanups in atom handling.
19025
19026 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
19027
19028         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
19029         not GtkWidget.
19030
19031 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
19032
19033         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
19034         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
19035         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
19036         more guint wrap-around bugs before going to bed.
19037
19038 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
19039
19040         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
19041         guint wrap arounds in allocation.width.
19042
19043         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
19044         process untill we fit the allocation given.
19045
19046 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
19047
19048         * gtk/gtkwidget.c:
19049         (gtk_widget_unrealize): guard widget access with ref/unref
19050         around signal emission.
19051         (gtk_widget_hide): same here, but also check its destroyed
19052         state before queueing a resize.
19053
19054 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
19055
19056         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
19057         of gtk_default_insensitive_bg as insensitive base color.
19058
19059         * gtk/gtktext.c (gtk_text_style_set): set the background color according
19060         to the widget's state.
19061         (gtk_text_realize): same here.
19062         (gtk_text_state_changed): same here.
19063         (draw_bg_rect): compare background color against base[] from
19064         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
19065
19066 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
19067
19068         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
19069         grabs are active, unless a delete event is send to the toplevel
19070         of the currently grab holding widget.
19071
19072 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
19073
19074         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
19075         debugging g_print's.
19076
19077 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
19078
19079         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
19080         ever make the scrolled-window requisition ever depend on the 
19081         visibility state of the scrollbars for the AUTOMATIC policy. 
19082         This breaks the GTK+ requisition model, and causes loops.
19083
19084 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
19085
19086         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
19087         the default font to avoid problems with XFree86-4.0 where the
19088         default charset is iso10646-1, not iso8859-1.
19089
19090 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
19091
19092         * acinclude.m4
19093         * config.guess
19094         * config.sub
19095         * ltconfig
19096         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
19097
19098         * gtk/Makefile.am: minor cosmetic consistency tweak
19099
19100 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
19101
19102         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
19103         the activate_time to 0, so that we handle a quick
19104         press/release press/release properly and don't suppress
19105         the second release. (Red Hat bug #7545)
19106
19107 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
19108
19109         * gtk/gtkctree.c (row_delete):
19110         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
19111         bugs with destruction notifier, *always* update internal
19112         structures *before* calling user code.
19113
19114 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
19115
19116         A few more fixes for bug #5487, #2051, #2677.
19117         * gtk/gtkclist.c : 
19118         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
19119         not GDK_BUTTON_PRESS.
19120         (resync_selection): resync only if selection_mode is
19121         GTK_SELECTION_EXTENDED
19122         * gtk/gtkctree.c (resync_selection): same here
19123
19124 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
19125
19126         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
19127         gdk_drag_get_selection() and gtk_menu_detach().
19128
19129         [ From Jeroen Ruigrok/Asmodai ]
19130
19131 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
19132
19133         * gtk/gtknotebook.c (gtk_notebook_size_request): 
19134         page->tab_label can be NULL.
19135
19136 2000-01-25  Havoc Pennington  <hp@pobox.com>
19137         
19138         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
19139         arg is boolean
19140
19141         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
19142
19143         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
19144
19145         * gdk/gdkproperty.c (gdk_property_get): return boolean
19146
19147         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
19148
19149         * gdk/gdkim.c (gdk_im_ready): return boolean
19150
19151         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
19152
19153         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
19154         glib clash, should fix glib)
19155
19156         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
19157         (gdk_get_show_events): return gboolean, and canonicalize 
19158         to TRUE/FALSE
19159
19160         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
19161         colormap is private
19162         (gdk_colors_alloc): gboolean whether to be contiguous
19163         (gdk_color_equal): return gboolean since we are a predicate
19164         and not a qsort() (this looks semi-wrong due to glib breakage,
19165         IMO glib should be fixed)
19166         
19167         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
19168         (gdk_get_use_xshm): return gboolean
19169         (gdk_pointer_is_grabbed): return gboolean
19170
19171         * gdk/gdk.h: Change prototypes to match all the above changes,
19172         and re-run egtk-format-protos as required.
19173
19174 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
19175
19176         * gtk/gtkctree.c (resync_selection): 
19177         * gtk/gtkclist.c (resync_selection):
19178
19179         Return immediately if clist->drag_pos < 0. This is a workaround
19180         for the corrupt state that the clist gets into when a
19181         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
19182
19183         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
19184         
19185         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
19186         variable from recent commit.
19187
19188 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
19189
19190         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
19191
19192 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
19193
19194         * gtk/Makefile.am: prefix all autogenerated source that get build in
19195         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
19196         in builddir. since we subsequently cd into srcdir for autogeneration,
19197         the paths have to be stripped from the target file names, thusly we
19198         use $(@F) as target names now.
19199         put a comment about configure.in's --disable-rebuilds option,
19200         which can be used for non-writable source directories, for development
19201         setups though, srcdir has to be *writable*.
19202
19203 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
19204
19205         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
19206           Finish the job of allowing event to be NULL.
19207           (Fixes bug #4283, reported by Chris Blizzard)
19208
19209         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
19210           things so that the cursor appears on screen, properly
19211           take into account INNER_BORDER.
19212           (Fixes bug #4754, reported by Antonio Campos)
19213
19214 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
19215
19216         * gtk/gtknotebook.c (gtk_notebook_map): Don't
19217           show the tab_label unless it itself is visible.
19218
19219           gtk/gtknotebook.c (gtk_notebook_size_request):
19220           Do a better job of making sure that the visibility
19221           of the tab label corresponds to whether it should
19222           be mapped or not.
19223
19224 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
19225
19226         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
19227           Use the requisition, not the allocation, since the
19228           allocation has not necessarily been computed yet.
19229           (Pointed out by Eugene Osintsev)
19230
19231 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
19232
19233         * gtk/gtkstyle.c (gtk_style_new): Dont' set
19234           style/base[GTK_STATE_INSENSITIVE] both to
19235           gtk_default_insensitive_bg!
19236           (Bug #2187, reported by Jonathan Blandford)
19237
19238         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
19239           Add Alt_L, Alt_R to list of invalid accelerators.
19240           (Bug #3736, reported by Vlad Harchev)
19241
19242 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
19243
19244         * gtk/gtkfilesel.c (open_ref_dir): Fix several
19245         bugs which occured after an attempt to open 
19246         invalid home directory left cmpl_state->reference_dir == NULL.
19247
19248          - completion on files in home directory didn't work
19249          - completion on an empty string caused  segfault
19250
19251          (Bug #3678, reported by Steve Ratcliffe)
19252
19253         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
19254         cut and paste error that was causing scales to
19255         be incorrectly positioned.
19256         (Bug #2956,
19257          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
19258
19259 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
19260
19261         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
19262         when checking for dcgettext, if we've found we needed
19263         it for dgettext.
19264 +
19265 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
19266
19267         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
19268         queue_clear on NO_WINDOW widgets during a reparent,
19269         since at that point the window and widget heirarchies
19270         are out of sync. This stops crashing in some cases
19271         (the scrolled window reparent test, for instance), and
19272         _probably_ won't cause drawing errors.
19273
19274         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
19275         test do what it was supposed to do and be robust against
19276         window closings, etc. (Bug #2443)
19277
19278 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
19279
19280         * gtk/gtkentry.c: Fix return values on mouse events.
19281         (Bug #2686, Sky <seb_sky@yahoo.com>)
19282
19283         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
19284         (pointed out by George Lebl)
19285
19286         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
19287         (From Ettore Perazzoli  <ettore@helixcode.com>)
19288  
19289 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
19290
19291         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
19292         clicks between rows or outside calender area correctly.
19293         (Patch from Damon Chaplin)
19294
19295         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
19296         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
19297           Call destroy function when overwriting existing data. 
19298           (Pointed out by Damon Chaplin)
19299
19300 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
19301
19302         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
19303           which was causing problems on various systems with Xmu.
19304           This hasn't been needed for a very long time.
19305           (Fixes #1185 3167)
19306
19307 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
19308
19309         * gdk/gdki18n.h: Include <ctype.h> when defining
19310           gdk_isw* in terms of is* as a fallback.
19311           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
19312
19313 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
19314
19315         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
19316           realize the widget when it is size allocated!
19317           (old, old bug)
19318
19319         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
19320           Removed unused call to gdk_window_get_size() that
19321           showed up when the above was fixed.
19322
19323 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
19324
19325         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
19326           fix up widget->window when the widget is a
19327           NO_WINDOW container widget.
19328
19329 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
19330
19331         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
19332           to account for the fact that feof() does _not_ 
19333           return TRUE on errors, and thus avoid infinite loops
19334           when trying to use gdk_pixmap_create_from_xpm()
19335           on unreadable values.
19336
19337 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
19338
19339         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
19340
19341 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
19342
19343         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
19344           gdk_gc_set_dashes to take gint8 instead of gchar to
19345           make it clearer that it is _not_ a NULL terminated string.
19346
19347         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
19348           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
19349           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
19350           arguments.
19351
19352 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
19353
19354         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
19355         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
19356         background size relative to our allocation, guard against small
19357         allocations, we may have not yet been size allocated.
19358
19359 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
19360
19361         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
19362         not just version == 3. We implement all 3 + most of 4 - 
19363         (we don't support matching text/plain;charset=iso-8859-1
19364         to a dest that expects text/plain). We'll still advertise
19365         3 to be safe, but any client implementing version >= 3
19366         must interoperate with 3.
19367         
19368 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
19369
19370         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
19371         background and gc members, add a warning in gtk_tooltips_set_color()
19372         indicating that this function is deprecated.
19373
19374 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
19375
19376         * docs/gtkfaq.sgml: FAQ Update:
19377           - Minor cleanups (Emmanuel, me)
19378           - New questions:
19379                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
19380                 How can I retrieve the text from a GtkMenuItem? (timj)
19381                 How do I validate/limit/filter the input to a GtkEntry? (me)
19382                 Memory does not seem to be released when I free the list
19383                         nodes I've allocated (timj)
19384
19385 2000-03-07  Tor Lillqvist  <tml@iki.fi>
19386
19387         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
19388         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
19389         for which it is no use to call GetLastError onWin9x.
19390         (gdk_other_api_failed) New function, for general error
19391         reporting without calling GetLastError.
19392         (gdk_win32_api_failed) OTOH, this function always calls
19393         GetLastError. (gdk_win32_last_error_string) Remove this function,
19394         GLib has the equivalent now.
19395
19396         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
19397         call them with function name, file name and line number in the
19398         arguments.
19399
19400         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
19401         functions.
19402         
19403         * gtk/gtk.def: Add some missing entry points.
19404
19405         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
19406         gtk_paned_set_gutter_size, which don't exist any longer, as void.
19407         
19408         Fixes by Hans Breuer:
19409
19410         * gdk/makefile.msc: Update for debugging.
19411
19412         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
19413         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
19414         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
19415         in the dash_list.
19416
19417         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
19418         the x11 backend.
19419
19420         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
19421
19422         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
19423
19424 2000-03-04  Tor Lillqvist  <tml@iki.fi>
19425
19426         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
19427         just pixel value of background colour.
19428
19429         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
19430         containing code snippet previously duplicated in a couple of
19431         places.
19432         
19433         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
19434         gdk_colormap_color.
19435
19436         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
19437         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
19438         events for autorepeated Shift, Control and Alt keys. Use
19439         gdk_colormap_color.
19440
19441         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
19442         pointer is inside the window the cursor of which we are setting,
19443         call SetCursor immediately.
19444
19445         * gdk/win32/makefile.cygwin
19446         * gtk/makefile.cygwin: If we don't have the build number stamp
19447         file, use zero.
19448
19449         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
19450         gtk_paned_set_gutter_size as empty.
19451
19452         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
19453         
19454 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
19455
19456         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
19457           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
19458           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
19459           docs/gtk_tut.sgml docs/gtk.texi TODO:
19460
19461           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
19462
19463 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
19464
19465         * gtk/gtkcalendar.c: Implement num_marked_dates,
19466           and don't emit mutiple day_selected signals on
19467           month_prev.
19468
19469 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
19470
19471         * docs/make-todo (lineno): let title and logo be configurable so
19472         that GNOME can use this script too.
19473
19474         * TODO.xml: added logourl and a title
19475
19476 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
19477
19478         * TODO.xml: Added some UI items, and an explanatory
19479         comment at the top of the file.
19480
19481 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
19482
19483         * TODO.xml: some updates, added abunch of new entries.
19484         a note for those fiddeling with this file, when done
19485         with it, invoke:
19486         $ ./docs/make-todo TODO.xml >/dev/null
19487         and correct output errors before comitting changes.
19488
19489 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
19490
19491         * TODO.xml: Added XML-structured TODO file.
19492         * docs/make-todo: python script to turn TODO.xml into
19493           pretty XML output. 
19494
19495 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
19496
19497         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
19498         the function to let it draw the seven dots, instead of the old,
19499         much maligned, method.
19500         (draw_dot): New function to draw a dot.
19501
19502         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
19503         to draw the handle inside the border width as opposed to outside.
19504         Use paint function instead of gdk_draw_point.
19505
19506         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
19507         to draw the handle inside the border width as opposed to outside.
19508         Use paint function instead of gdk_draw_point.
19509
19510         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
19511         Change indenting to be more GTK like.
19512
19513 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
19514
19515         * docs/gtk_tut.sgml: New section on GtkCalendar
19516         * examples/calendar: Update example code
19517
19518 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
19519
19520         * docs/gtkfaq.sgml: FAQ Update
19521
19522 2000-02-19  Anders Carlsson  <andersca@gnu.org>
19523
19524         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
19525         to prevent the scroll event to be propagated upwards.
19526
19527 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
19528
19529         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
19530         OwnerGrabButtonMask from button entries for
19531         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
19532
19533         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
19534         to the event mask (which will result in button/press release
19535         being added to the event mask on Unix) so scrolling works
19536         for layouts in scroll windows.
19537
19538         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
19539
19540         Patch from Anders Carlsson  <andersca@gnu.org> to add
19541         a scroll event.
19542
19543         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
19544         scrolling to the "Test Scrolling" part of testgtk.
19545  
19546         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
19547  
19548         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
19549         it against GDK_SCROLL.
19550  
19551         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
19552         way of mouse wheel scrolling.
19553  
19554         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
19555  
19556         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
19557  
19558         * gtk/gtkmain.c: Removed previous mouse wheel hack.
19559  
19560         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
19561         gdk_event_mask_table.
19562  
19563         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
19564         GdkEventScroll handler.
19565  
19566         * gdk/gdkevents.h: Added GdkEventScroll structure.
19567  
19568 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
19569
19570         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
19571         and Anders Carlsson to change the Paned widgets so that they
19572         can be dragged from anywhere along the length. Also change
19573         the way that this is drawn to make this apparent.
19574
19575         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
19576         from George Lebl to check that option_menu->menu is present
19577         before getting history.
19578
19579 2000-02-14  Tor Lillqvist  <tml@iki.fi>
19580
19581         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
19582         before the assertion for non-NULL segment list.
19583
19584         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
19585         Seems that pattern brushes *must* be 8x8 pixels! At least on my
19586         machine, but it might be display driver dependent. Sigh, so make
19587         sure the stipple is that size. Does Windows suck or what?
19588
19589         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
19590         places.
19591
19592 2000-02-13  Havoc Pennington  <hp@pobox.com>
19593
19594         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
19595         refcount to 1
19596         (gdk_cursor_new): init refcount to 1
19597
19598         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
19599
19600 2000-02-13  Tor Lillqvist  <tml@iki.fi>
19601
19602         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
19603         so that we don't have to do unnecessary settings to the HDC.
19604
19605         * gdk/win32/gdkdrawable-win32.c
19606         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
19607         gdk_gc_predraw.
19608
19609         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
19610         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
19611         GDI paths, call WidenPath to get the outline of the stroken path,
19612         and then fill the outline (with the brush that was built from the
19613         stipple).
19614
19615         * gdk/win32/gdkgc-win32.c: Factor out common code from
19616         _gdk_win32_gc_new and gdk_win32_gc_set_values into
19617         gdk_win32_gc_values_to_win32values. Use correct colour for
19618         SetBkColor() (Until now the code actually used a random colour in
19619         the call to SetBkColor()... but that didn't show up as not many
19620         GDI APIs use the background colour. Pattern (opaque stippled)
19621         brushes do.)
19622
19623         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
19624         gdk_win32_api_failed): New functions for error logging.
19625
19626         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
19627         WIN32_API_FAILED to call them, passing function or file name and
19628         line number.
19629
19630         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
19631
19632         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
19633         GdkColor for foreground and background in GdkGCWin32Data.
19634
19635         * gdk/makefile.cygwin: Link in the resource object separately.
19636
19637         * gdk/win32/rc/gdk.rc
19638         * gtk/gtk.rc (New file)
19639         * gdk/win32/makefile.cygwin
19640         * gtk/makefile.cygwin: Update build number in DLLs automatically,
19641         as in GLib.
19642
19643 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
19644
19645         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
19646         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
19647         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
19648         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
19649         parameters given and cursor->ref_count. coding style fixups.
19650
19651         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
19652         not GtkWidget.
19653         
19654         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
19655         fix up widget macros and add _GET_CLASS() variant.
19656         
19657         * gtk/*.c: some GtkType fixups.
19658
19659 2000-02-09  Tor Lillqvist  <tml@iki.fi>
19660
19661         * gdk/win32/gdkproperty-win32.c
19662         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
19663         were reversed.
19664
19665 2000-02-04  Tor Lillqvist  <tml@iki.fi>
19666
19667         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
19668         g_filename_to_utf8 to convert the font names Windows gives us from
19669         whatever is the default codepage to UTF-8.
19670         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
19671         in the other direction.
19672
19673         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
19674         error in debugging output.
19675
19676 2000-02-02  Tor Lillqvist  <tml@iki.fi>
19677
19678         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
19679         and height parameters to gdk_window_clear_area(). Not minus one.
19680
19681 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
19682
19683         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
19684         checks if the widget passed to gtk_drag_get_data() was not the
19685         dest widget.
19686
19687 2000-02-01  Tor Lillqvist  <tml@iki.fi>
19688
19689         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
19690         g_filename_from_utf8 functions (which were added a moment ago to
19691         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
19692         size buffers.
19693
19694         gtk_file_selection_get_filename returns the filename in the C
19695         runtime encoding. It calls g_filename_from_utf8, but copies the
19696         returned string to a static buffer, which is returned. I think
19697         this is better than returning the result from g_filename_from_utf8
19698         directly, which would mean all apps that use it would have to free
19699         the return value. Or should this function care about this issue at
19700         all? Maybe a new function with clearly defined semantics.
19701
19702         * gtk/gtkfilesel.h: Add comment about
19703         gtk_file_selection_get_filename returning the filename in the C
19704         runtime's encoding.
19705
19706         * README.win32
19707         * gdk/gdk.def
19708         * gdk/makefile.{cygwin,msc}
19709         * gtk/gtk.def: Updates.
19710
19711         * gdk/gdkcursor-win32.c: Initialise refcount.
19712
19713 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
19714
19715         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
19716
19717 2000-01-30  Havoc Pennington  <hp@pobox.com>
19718
19719         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
19720         destroy
19721
19722         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
19723
19724         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
19725         implemented in platform-specific code
19726
19727         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
19728
19729         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
19730         underscore in front
19731
19732         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
19733         put an underscore in front
19734
19735         * gdk/gdkcursor.c: new file, implements
19736         gdk_cursor_ref/gdk_cursor_unref
19737
19738         * gdk/gdkcursor.h: Refcount GdkCursor
19739
19740         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
19741
19742 2000-01-29  Tor Lillqvist  <tml@iki.fi>
19743
19744         * gdk/gdkwindow.h
19745         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
19746
19747 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
19748
19749         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
19750         structures to properly inherit from GtkWidget not GtkBin.
19751
19752 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
19753
19754         * gtk+.spec.in: Added lib/gtk+/include/* to %files
19755         (bug #5178 - Peter Wainright)
19756         
19757         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
19758         so that it will be installed.
19759         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
19760
19761 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
19762
19763         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
19764         for the GtkStyleClass vtable const.
19765
19766         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
19767         take a const string argument like GtkTranslateFunc. This will
19768         require changes in use code.
19769
19770 2000-01-19  Tor Lillqvist  <tml@iki.fi>
19771
19772         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
19773         semantics (to mimic the X11 backend, which just calls XClearArea)
19774         is to check for zero width (and height), and in that case use the
19775         window's width minus x (height minus y). This fixes for instance
19776         some redraw problems with gtkclist, which were easily noticeable
19777         in the gtk file selection widget.
19778
19779         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
19780         windows.
19781
19782 2000-01-13  Tor Lillqvist  <tml@iki.fi>
19783
19784         * configure.in
19785         * gdk/Makefile.am
19786         * gdk/x11/Makefile.am
19787         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
19788         (bug #5177).
19789         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
19790         out later.
19791
19792 2000-01-09  Tor Lillqvist  <tml@iki.fi>
19793
19794         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
19795         WM_MOVE for iconified or invisible windows. This fixes various
19796         problems when minimising windows. Thanks to Bernd Herd.
19797
19798 2000-01-05  Tor Lillqvist  <tml@iki.fi>
19799
19800         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
19801         backend's draw_lines method, not draw_points.
19802
19803 2000-01-02  Tor Lillqvist  <tml@iki.fi>
19804
19805         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
19806         before Owen's reorganisation: Don't have queued_events and
19807         queued_tail statics in this file, but use gdk_queued_events and
19808         gdk_queued_tail. This makes exposure event compression work again.
19809
19810         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
19811         seem to be needed?
19812
19813 1999-12-30  Tor Lillqvist  <tml@iki.fi>
19814
19815         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
19816         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
19817         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
19818         doesn't do anything.
19819
19820         * gdk/gdk.def: Add gdk_xid_table_insert.
19821
19822         * gdk/win32/gdkprivate-win32.h
19823         * gdk/win32/gdkevents-win32.c
19824         * gdk/win32/gdkinput-win32.c
19825         
19826         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
19827         extension_events field in the GdkWindowWin32Data struct. Use only
19828         the extension_events field in GdkWindowPrivate. Previously one was
19829         set, and the other one tested, which broke tablet
19830         functionality. Thanks to Keishi Suenaga for pointing this out.
19831
19832 1999-12-18  Tor Lillqvist  <tml@iki.fi>
19833
19834         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
19835         When handling a single character (text length == 1), don't handle
19836         it as if it was UTF-8.
19837
19838 1999-12-11  Tor Lillqvist  <tml@iki.fi>
19839
19840         * Makefile.am: Distribute README.win32.
19841         
19842         * gdk/Makefile.am
19843         * gdk/win32/Makefile.am: Distribute Win32 files.
19844
19845         * gdk/makefile.msc: New file.
19846
19847         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
19848         after label).
19849
19850         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
19851         gdk_error_code as GDKVAR, as they are referred outside GDK.
19852
19853         * gdk/win32/makefile.msc: Update.
19854
19855         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
19856         tweaks. Check only if at least one of those Unicode subrange bits
19857         we care for is set. If no code page bits are set, guess (wildly)
19858         based on the charset.
19859
19860         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
19861
19862         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
19863         non-NULL.
19864
19865         * gtk/gtkdnd.c
19866         * gtk/gtklayout.c
19867         * gtk/gtkplug.c
19868         * gtk/gtkselection.c
19869         * gtk/gtksocket.c
19870         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
19871         appropriate. There must be a cleaner way to handle this?
19872
19873         * gtk/gtkrc.c: Must include windows.h on Win32.
19874
19875         * gtk/testgtk.c: No need to include gdkx.h.
19876
19877         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
19878
19879 1999-12-07  Tor Lillqvist  <tml@iki.fi>
19880
19881         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
19882         the rbearing is set to the same as the width, but this should be
19883         fixed.
19884
19885 1999-12-06  Tor Lillqvist  <tml@iki.fi>
19886
19887         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
19888         function. If Windows doesn't tell us what Unicode subranges a font
19889         covers, guesstimate based on the codepages it covers. This will
19890         hopefully help those Windows versions or fonts that don't give us
19891         any useful Unicode subrange information with GetTextCharsetInfo.
19892         Call this function in gdk_font_load_internal.
19893
19894         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
19895         minor changes.
19896
19897 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
19898
19899         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
19900         New function, long needed.
19901
19902 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
19903
19904         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
19905         only_if_exists argument of gdk_atom_intern to
19906         bool.
19907
19908 1999-11-25  Tor Lillqvist  <tml@iki.fi>
19909
19910         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
19911         Fix two copy&paste errors.
19912
19913         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
19914         win32 has changed.
19915
19916         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
19917         GdkWin32SingleFont struct.
19918
19919         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
19920         subranges of loaded fonts. Clear font signature first, in case
19921         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
19922         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
19923
19924         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
19925         Unoffset clip region.
19926
19927 1999-11-23  Tor Lillqvist  <tml@iki.fi>
19928
19929         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
19930         event->any.window before calling filter functions.
19931
19932 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
19933
19934         * gtk/gtkgamma.h: Adapt cast macros to standard.
19935
19936 [ Merges from 1.2 ]
19937
19938 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
19939
19940         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
19941         If translation does not include a '/', use entire
19942         translation instead of crashing.
19943
19944 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
19945
19946         * docs/gtk_tut.sgml:
19947         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
19948
19949 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
19950
19951         * gtk/gtkselection.c (gtk_target_list_remove): Use
19952         g_list_remove_link, not g_list_remove.
19953
19954         [ From Geert Bevin <gbevin@thunderstorms.org> ]
19955         
19956 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
19957
19958         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
19959         statement upon unselection (how the heck did that slip in?).
19960
19961 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
19962
19963         * gtk/gtktext.c (gtk_text_freeze): 
19964         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
19965         in frozen state (and aparently crashes). patch provided by Anders
19966         Melchiorsen <and@kampsax.dtu.dk>.
19967
19968 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
19969
19970         * fix insensitive default/focus widget activation,
19971         reported by Matt Goodall <mgg@isotek.co.uk>.
19972
19973         * gtk/gtkwindow.c (gtk_window_key_press_event): 
19974         (gtk_window_activate_default):
19975         (gtk_window_activate_focus):
19976         return handled=FALSE for actiavtion of insensitive default
19977         widgets. return handled=TRUE for activation of insensitive
19978         focus widgets. don't activate in either case.
19979
19980 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
19981
19982         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
19983         and $glib_cflags to match library order and in the
19984         theory that an old version of GLib is more likely to
19985         be in the include directory for X then vice-versa.
19986         (Bug #2776)
19987
19988 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19989
19990         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
19991         to determine the locale for fontsets, not LC_MESSAGES;
19992         the user may want English messages with a handling
19993         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
19994         will still be broken) (Bug #2891)
19995
19996 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19997
19998         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
19999
20000 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
20001
20002         * gtk/gtkrc.ko: Changed the Korean default fontset.
20003
20004 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
20005
20006         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
20007         where when scrolling to the left or top double exposes
20008         were done, causing major slowdowns.
20009
20010 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
20011
20012         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
20013         names to lowercase and alphanumeric, before looking
20014         them up.
20015
20016         * gtk/Makefile.am: Install codeset variant gtkrc files
20017         with normalized names.
20018
20019 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
20020
20021         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
20022         popup menus when the menu is already visible, but its parent
20023         is still hidden, (happens after tornoff window got hidden).
20024
20025 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
20026
20027         * gtk/Makefile.am (install-data-local): Fix
20028         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
20029         deleted, causing error messages on install.
20030
20031 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
20032
20033         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
20034         the handle as well, since we now sometimes ignore
20035         exposes on the handle while resizing.
20036
20037 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
20038
20039         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
20040         extra g_free introduced in one of the last one or two 
20041         commits.
20042
20043 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
20044
20045         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
20046         consistent, put each style that a gtkrc.* file creates
20047         in a unique namespace, remove old files before installing.
20048
20049 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
20050
20051         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
20052         gtk_rc_init is called multiple times. (Yes, people who
20053         do that have bugs in their code.)
20054
20055 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
20056
20057         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
20058         Remove it since it's generated by the Makefile anyway
20059
20060 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
20061
20062         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
20063         device->info.axes for core pointer.
20064
20065 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
20066
20067         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
20068         idle_id, to deal with obsolete, broken C libraries.
20069
20070 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
20071
20072         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
20073         allocation->x/y twice!
20074
20075         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
20076         consistent with gtk_vscale_pos_trough().
20077
20078 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
20079
20080         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
20081         be queueing a resize on a toplevel container between
20082         the time we show it and when we map it. So, we need
20083         to test GTK_WIDGET_VISIBLE() for toplevels, and only
20084         use GTK_WIDGET_DRAWABLE() for child windows.
20085
20086 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
20087
20088         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
20089         (fixes bug #2144)
20090
20091 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
20092
20093         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
20094         container DRAWABLE (instead of VISIBLE), so we don't queue
20095         resizes on non-toplevel containers.
20096
20097 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
20098
20099         * gtk/gtkselection.[ch]: Make the data argument
20100         const guchar *.
20101
20102 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
20103
20104         * gtk/gtkwindow.c: Try to behave sensibly if 
20105         the focus widget is the window itself. (Should
20106         we allow this at all?)
20107
20108 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
20109
20110         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
20111         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
20112         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
20113         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
20114         in prototypes and implementations consistent (Tomas Ogren).
20115
20116         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
20117         before the widget is unparented (reported by damon).
20118
20119         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
20120         since we provide unsigned data anyways.
20121
20122 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
20123
20124         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
20125         the call to gtk_tooltips_layout_text() until later.
20126
20127         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
20128         Call gtk_widget_ensure_style() before using the style.
20129
20130 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
20131
20132         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
20133         for old widgets that don't propagate draws to all
20134         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
20135
20136 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
20137
20138         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
20139         for a redraw but just the widget that requested the resize.
20140
20141 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
20142
20143         * gtk/gtkcontainer.c: added new widget level method
20144         gtk_container_set_reallocate_redraws() and a GtkContainer flag
20145         reallocate_redraws : 1 to reflect the setting, exported this through
20146         the argument system as a boolean ::reallocate_redraws.
20147
20148         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
20149         on the widget because the allocation changes, do so as well for
20150         widget->parent if the parent has reallocate_redraws set to TRUE.
20151         with that containers requesting reallocation redraws get automatically
20152         redrawn if their children changed allocation (this unfortunately
20153         affects also other children that didn't change allocation, but we
20154         cannot work around that before 1.3).
20155
20156 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
20157
20158         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
20159         _and_ height are >0 (not _or_).
20160
20161         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
20162         instead of gtk_container_queue_resize(), which is a core gtk internal
20163         function (must have been on crack when i queued that).
20164
20165         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
20166         we can check more reliably if we want to discard expose events.
20167         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
20168         flag.
20169         
20170         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
20171         we simply trust these events. for deciding whether to discard exposes,
20172         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
20173         
20174 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
20175
20176         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
20177         queues of areas that are completely off screen.
20178
20179         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
20180         logic for handleboxes.
20181
20182         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
20183         check on width/height.
20184
20185 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
20186
20187         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
20188         we are fine with using $@ the way we do (if we actually encounter
20189         brokeness with $@ in VPATH builds because of additional path prefixes,
20190         we need to use $(@F) actually).
20191
20192 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
20193
20194         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
20195         short lived bugs, that would allow language bindings to do surgeries
20196         to our guts.
20197
20198 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
20199
20200         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
20201         where comparison was being done against an uninitialized
20202         value causing intermittant results depending on
20203         compiler flags. Also make it clearer that we aren't
20204         ever initializing the child as 0x0 (though this will
20205         be caught in gtk_widget_size_allocate())
20206
20207 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
20208
20209         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
20210         gtk_window_unset_transient_for() call after we do checks
20211         involving the old transient parent.
20212         [ From Lance Capser <lmc@cyberhighway.net> ]
20213
20214 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
20215
20216         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
20217         an empty file.
20218
20219 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
20220
20221         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
20222         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
20223
20224 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
20225
20226         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
20227         `$@' is valid only in the build dir, not after we've done 
20228         `cd $srcdir'.  Also use `test -f' instead of less portable
20229         `test -e'.
20230
20231 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
20232
20233         * gtk/gtktext.c (correct_cache_insert): Rewrite
20234          for simplicity, and hopefully correctness.
20235          (Fixes bug #1322, which was a segfault when
20236           on some insertions with the properties around
20237           the insertion set up just wrong.)
20238
20239         * gtk/gtktext.c (gtk_text_adjustment): When we receive
20240          a "changed" signal, clamp the new value to the adjustment
20241          bounds to avoid segfaulting if someone tries to change
20242          the adjustment to a bogus value. (Bug #1795)
20243
20244 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
20245
20246         * gtk/gtkmain.c: Ignore unexpected destroy notifies
20247         for children, for toplevel windows handle them
20248         like delete_event.
20249
20250         * gtk/gtkplug.c: Add an unrealize handler so that
20251         we unref plug->socket_window when we are done
20252         with it.
20253
20254 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
20255
20256         * gtk/gtktext.c (clear_area): Fix stupid signedness
20257          problem that was causing background to sometimes
20258          be misaligned.
20259
20260 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
20261
20262         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
20263         
20264         * gtk/gtkmenu.c (gtk_menu_position): Make
20265          sure we never position menus with negative x, y,
20266          since gtk_widget_set_uposition() can't handle that.
20267
20268         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
20269          Modify the positioning code a bit so that we always
20270          put the top-left corner onscreen. (This is for
20271          UI reasons, gtk_menu_position() now takes care of
20272          gtk_widet_set_uposition() brokeness.)
20273
20274 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
20275
20276         * gtk/Makefile.am: fixed up things for -jx, x > 1.
20277
20278 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
20279
20280         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
20281           RC style that is passed in. The lack of the ref
20282           before was a bug. If people worked around this
20283           bug, this will introduce a slight memory leak
20284           in their code. The code should typically look like:
20285
20286             rc_style = gtk_rc_style_new ();
20287             [...]
20288             gtk_widget_modify_style (widget, rc_style);
20289             gtk_rc_style_unref (rc_style);
20290
20291         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
20292           the style if it was already set.
20293
20294         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
20295           style if it was set before.
20296
20297 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
20298
20299         * gtk/testgtk.c (main): Add a check to see if we
20300           are being run from the correct directory and
20301           to quit nicely if we are not.
20302
20303         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
20304           static.
20305
20306 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
20307
20308         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
20309
20310         * gtk/gtkwindow.c:
20311         queue resizes unconditionally (gtk_widget_queue_resize will figure
20312         what to do if the window is not realized).
20313         (gtk_window_move_resize): only recenter the window
20314         for GTK_WIN_POS_CENTER_ALWAYS.
20315         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
20316         the same way as GTK_WIN_POS_CENTER.
20317
20318 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
20319
20320         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
20321         with (!(info->last_flags & GDK_HINT_POS)) instead of
20322         (!info->last_flags & GDK_HINT_POS).
20323
20324         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
20325         new_height unconditionally, because we use these values even if
20326         !default_size_changed && !hints_changed.
20327         comented the (default_size_changed || hints_changed) case with
20328         respect to resize rejects from the window manager.
20329
20330         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
20331         in the zvt condition hack, since this includes the window hints, set
20332         the hints after the handling_resize case.
20333
20334         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
20335         window is initially shown with to the geometry.
20336
20337 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
20338
20339         * gtk/gtkwindow.c (gtk_window_move_resize):
20340         s/size_changed/default_size_changed/g so i know what's
20341         really going on (frying brain on smaller flame now).
20342
20343 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
20344
20345         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
20346         we have size_changed upon handling_resize. this is a gross
20347         workaround for the broken zvt widget and should be removed in
20348         1.3 again (search for FIXME).
20349         Owen provided an accurate comment for this:
20350
20351         /* We could be here for two reasons
20352          *  1) We coincidentally got a resize while handling
20353          *     another resize.
20354          *  2) Our computation of size_changed was completely
20355          *     screwed up, probably because one of our children
20356          *     is broken. It's probably a zvt widget.
20357          *
20358          * For 1), we could just go ahead and ask for the
20359          * new size right now, but doing that for 2)
20360          * might well be fighting the user (and can even
20361          * trigger a loop). Since we really don't want to
20362          * do that, we requeue a resize in hopes that
20363          * by the time it gets handled, the child has seen
20364          * the light and is willing to go along with the
20365          * new size. (this happens for the zvt widget, since
20366          * the size_allocate() above will have stored the
20367          * requisition corresponding to the new size in the
20368          * zvt widget)
20369          *
20370          * This doesn't buy us anything for 1), but it shouldn't
20371          * hurt us too badly, since it is what would have
20372          * happened if we had gotten the configure event before
20373          * the new size had been set.
20374          */
20375
20376 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
20377
20378         * gtk/gtkrc.c: deal properly with the fact that RC
20379           style lists may include rc styles more than once.
20380
20381         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
20382           unused static function.
20383
20384         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
20385           stack of directories of RC files currently being
20386           parsed and implicitely add them to pixmap path.
20387           
20388           This fixes a bug where the directory would get
20389           appended then overwritten by pixmap_path declarations.
20390
20391           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
20392
20393         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
20394           theme's exit function. (Patch from Peter Wainwright,
20395           bug #1454)
20396
20397         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
20398           Add a destroy() handler to take care of removing
20399           group for menu item. (Fixes bug #1197)
20400
20401         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
20402           in warning message.
20403
20404 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
20405
20406         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
20407         roundtrip to figure window's width and height, since we know that
20408         anyways from widget->allocation.
20409
20410 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
20411
20412         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
20413           the hints after we request the new size.
20414
20415 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
20416
20417         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
20418           GTK_WIDGET_REALIZED() assertion - we can compute the
20419           hints before we are realized.
20420
20421         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
20422           hint changing so that we have a value of hints_changed
20423           when we decide whether to constrain the window size.
20424
20425         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
20426
20427         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
20428         change back to G_MAXINT.
20429
20430 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
20431
20432         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
20433         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
20434         contain uncluttered values.
20435         (gtk_window_compute_hints): simply assert that window is realized
20436         and that geometry_info is valid, since we rely on this anyways.
20437         (gtk_window_constrain_size): major cleanups to the code.
20438         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
20439         for the base size, instead of the minimums. use 32767 as max width
20440         and height (like in gtkwindow.c) instead of G_MAXINT.
20441
20442 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
20443
20444         * cleaned up the GtkContainer.need_resize flag handling mess, we
20445         only need to force resize requests when we were prematurely
20446         realized, or our widget tree was modified when we were temporarily
20447         hidden. handling these cases directly upon showing the window (i.e.
20448         while the GdkWindow is still unmapped) avoids the need to wait for
20449         a configure event response and therefore makes the GUI more snappier
20450         and avoids blank windows during the roundtrip.
20451
20452         * gtk/gtkwidget.c:
20453         (gtk_widget_hide): 
20454         (gtk_widget_show): don't queue resizes on toplevels, they know how
20455         to deal with matters.
20456
20457         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
20458         flag directly for not visible resize containers and spare us unecessary
20459         signal emissions.
20460
20461         * gtk/gtkwindow.c:
20462         (gtk_window_realize): if we need to enforce premature size allocation,
20463         queue a container resize so we are correctly resized later on.
20464         (gtk_window_init):
20465         (gtk_window_size_request):
20466         don't freak around with the ->need_resize flag,
20467         gtk_container_queue_resize() will care about that.
20468         (gtk_window_show):
20469         handle initial resizing issues here, we can handle matters better in
20470         this place, especially since we know that our GdkWindow is still
20471         unmapped.
20472         (gtk_window_move_resize):
20473         don't care about ->need_resize at all.
20474         handle size changes properly that occoured while we waited for a
20475         configure event.
20476
20477 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
20478
20479         * gtk/gtkwidget.c (gtk_widget_set_uposition):
20480         * gtk/gtkwindow.[hc] (gtk_window_reposition):
20481         Move the hint setting code from gtk_widget_set_uposition
20482         to here; set the hints so that we respect any previously
20483         set geometry hints.
20484
20485         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
20486         change the window hints here or move the window here,
20487         let that happen in gtk_window_move_resize().
20488
20489 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
20490
20491         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
20492         to already queued resizes (and therefore redraws) on a widget, check
20493         its anchestry as well.
20494
20495         * gtk/gtkcontainer.c:
20496         (gtk_container_queue_resize): clear resize widgets for resize
20497         containers before aborting prematurely. this is especially important
20498         for toplevels which may need imemdiate processing or their resize
20499         handler to be queued.
20500         (gtk_container_dequeue_resize_handler): added new internal function for
20501         gtkwindow.c.
20502
20503         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
20504         configure event, take possible changes in window position into account
20505         as well.
20506         if we request a new window size, queue up a resize handler that will
20507         last until the configure event response arrives.
20508         combined the ->need_resize case (initial show) with the general size
20509         (hints) changed case and added even more comments.
20510         if !auto_shrink, only revert to the old allocation if the new size
20511         is smaller than the current allocation.
20512
20513 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
20514
20515         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
20516                            gtk_window_set_geometry_hints
20517                            gtk_window_set_default_size):
20518         When hints are set, queue a resize so that the hints will
20519         be eventually reset on the toplevel.
20520
20521         * gtk/gtkwindow.c (gtk_window_show): Use
20522         gtk_window_compute_default_size(). Clear the need_resize flag
20523         on the initail map so that we don't unnecessarily trigger the
20524         resize code.
20525
20526         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
20527         into separate functions. Compare the hints we are setting
20528         with what we set last time so that we can accurately
20529         tell when we need to reset the hints.
20530
20531         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
20532         function to figure out the size from requisition
20533         and default_size.
20534
20535         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
20536         from fvwm to constrain a size to the geometry hints.
20537
20538         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
20539         to compare two sets of geometry hints.
20540
20541         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
20542         from gtk_window_set_hints(), just compute the hints,
20543         don't set them.
20544
20545         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
20546         code from gtk_window_move_resize() to separate function,
20547         rationalize a bit.
20548
20549 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
20550
20551         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
20552         structure into a new private structure.
20553
20554         * gtkrc.c: Split GtkRcStyle into public/private.
20555         In the private part, add a list of pointers to the
20556         RcStyle lists this RcStyle participates in.
20557
20558         * gtkrc.c: When a RcStyle is free, remove all
20559         lists referencing it from the 
20560         realized_style_ht hash, and free those lists.
20561         
20562         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
20563         gtk_rc_init(), since that adds the default styles
20564         to the list of parsed RC files again.
20565
20566         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
20567         
20568 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
20569
20570         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
20571         checks that ensure that a widget's allocation is at least 1 in width
20572         and height. (GNOME note: this doesn't affect old panel code anymore,
20573         because GtkSocket will request width and height of at least 1 since
20574         Fri Jul 23).
20575
20576         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
20577         allocated yet (happens if the user realizes the window prematurely),
20578         size request and allocate it.
20579         (gtk_window_size_allocate): guard against guint underflows.
20580
20581 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
20582
20583         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
20584         in gtk_built_sources, so gtk.defs gets built prior to all other
20585         sources.
20586
20587 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
20588
20589         * gtk/Makefile.am:
20590         invoke indent on gtkmarshal.*. 
20591         rewrote source generation rules, use COPYING as oldest source tag for
20592         a piggyback rule to generate all sources from (don't touch it ;).
20593         major cleanups, strip spaces on build rules for GNU Make.
20594
20595         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
20596         source and target files from commandline arguments. don't invoke indent.
20597
20598 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
20599
20600         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
20601         notebook after switch to avoid drawing problems.
20602         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
20603         
20604         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
20605         show them instead. 
20606         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
20607
20608 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
20609
20610         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
20611         notebook after switch to avoid drawing problems.
20612         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
20613         
20614         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
20615         show them instead. 
20616         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
20617
20618 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
20619
20620         * gtk/gtkwindow.c:
20621         we use window->need_resize from configure_event now, to indicate that
20622         the gtkwindow should keep its allocation (e.g. because the user resized
20623         the window through window manager handles). resize_count is now reliably
20624         used to figure whether we got the allocation we requested from the
20625         window manager.
20626         configure events get queued as resizes now, the real stuff (size
20627         computation and allocation) now only goes on in gtk_window_move_resize().
20628         GtkWindow's requisition now contains its *real* requisition (like all
20629         other widgets), *not* taking usize into account.
20630         geometry_info->last_{width|height} is now updated from set_hints() only
20631         so it always contains the last hints we set for the window manager.
20632         made some event handlers return TRUE instead of FALSE.
20633         the overall code should be much more straight forward now, and the
20634         significant code portions are accompanied by comments now.
20635         (gtk_window_set_hints):
20636         removed requisition argument and made it
20637         fetch the requisition through gtk_widget_get_child_requisition.
20638         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
20639         does that now.
20640         (gtk_window_show):
20641         ensure that the widget is realized before calling 
20642         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
20643         ensure that we got properly size requested and allocated before
20644         realization.
20645         (gtk_window_configure_event):
20646         ignore plain window moves, or reallocate the widget tree through the
20647         resize queue otherwise.
20648         (gtk_window_move_resize):
20649         mostly rewrote this function to figure window manager hints more
20650         reliably, coalesce window moves and resizes to reduce configure events
20651         and do actuall size allocations.
20652
20653 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
20654
20655         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
20656         that have a resize pending, because a redraw is already queued for them.
20657
20658         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
20659         hack to clear resize_widgets.
20660
20661         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
20662         for resize containers prior to size allocation. (this is also a bit
20663         ugly, but avoids side effects for stopped emissions and is thus more
20664         reliable).
20665         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
20666
20667         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
20668         function from gtk_tooltips_expose, as we connect to ::expose_event
20669         *and* ::draw now.
20670
20671 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
20672
20673         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
20674         checks.
20675         (gtk_target_list_unref): Likewise.
20676
20677         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
20678
20679 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
20680
20681         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
20682         guard against division by zero. (Fixes bug #1339)
20683
20684 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
20685
20686         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
20687         Prevent the trivial leak of information of allowing
20688         word motion when the entry is not visible.
20689
20690 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
20691
20692         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
20693         modality to error dialog as well as confirmation dialogs.
20694         (Bug #1803, reported by Rosanna Wing Sze Yuen)
20695
20696 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
20697
20698         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
20699         tree->view_lines.
20700         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
20701
20702         * gtk/Makefile.am (install-data-local): Solaris apparently
20703         has various troubles with ln -f; use rm first instead.
20704         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
20705
20706 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
20707
20708         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
20709         use `cp' followed by `rm' (the `rm' was already there).
20710
20711 July 30, 1999 Elliot Lee <sopwith@redhat.com>
20712         
20713         * configure.in: Fix autoconf warnings about cross compilation by
20714         trying to provide sane defaults for AC_TRY_RUN.
20715         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
20716         put them into $(srcdir) when generated. Also add a dependency of
20717         gtksignal.h on gtkmarshal.h for -j builds. 
20718         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
20719
20720 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
20721
20722         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
20723         GDK_THREADS_{LEAVE,ENTER} pair.
20724         (From Paul Fisher <pnfisher@redhat.com>)
20725
20726 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
20727
20728         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
20729         width and height are always >0 (owen).
20730
20731 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
20732
20733         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
20734         change that assured that a widget's allocated with and height are
20735         always >1, since this breaks *buggy* panel code. unfortunately this
20736         back-breaks the gimp's color selector.
20737
20738         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
20739         allocation is always >0 in width and height, before sending the
20740         configure event; this is a *gross* hack to get the gimp back to work.
20741         
20742         * marked both cases with TODO-1.3
20743
20744 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
20745
20746         * gtk/gtktext.c: Don't display wrap indicators when
20747         text is not editable and word wrap is on.
20748
20749 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
20750
20751         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
20752         option menus here as they are not derived from menu shell, assure that
20753         the option menu has a menu we can add items to.
20754
20755 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
20756
20757         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
20758         width/height to (gint) before calculations and check against < 0 to
20759         avoid guint wraparounds.
20760
20761 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
20762
20763         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
20764         width and height is never zero. sanity check both dimensions against
20765         32767 and issue a warning if the allocation is greater than that.
20766
20767 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
20768
20769         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
20770         to g_main_pending() as well.
20771
20772 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
20773
20774         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
20775         call to g_main_iteration() - since that will regrab
20776         GTK+ lock to process events.
20777
20778 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
20779
20780         * gtk/gtkwindow.c
20781         - Regularize with the rest of GTK+ by making widget->requisition
20782           not reflect the set_usize()
20783         - Always recompute geometry hints, then check if they
20784           changed before sending them to the X server. The
20785           previous checks for changes would fail in a number
20786           of circumstances. 
20787
20788 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
20789
20790         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
20791
20792 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
20793
20794         * gtk/gtkdnd.c:
20795         - Code cleanups
20796         - Instantaneously update on modifier key presses
20797         - Allow cancellation of the drag with Escape.
20798
20799 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
20800
20801         * gtk/testgtk.c (create_handle_box): Set the policy
20802         to auto_shrink - otherwise the appearance is rather
20803         strange when flipping between horizontal and vertical.
20804
20805 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
20806
20807         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
20808         (gtk_window_set_default_size): don't change a value if it's < 0.
20809         queue a resize.
20810
20811 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
20812
20813         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
20814
20815 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
20816
20817         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
20818         add an extra "/" when concating "/" + filename.
20819         (From Matt Grossman <mattg@oz.net>)
20820
20821 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
20822
20823         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
20824         for fg_gc if we set it for drawing pixmap.
20825
20826 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
20827
20828         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
20829         
20830         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
20831         already set, call old engine's destroy function and
20832         unref the old engine.
20833
20834 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
20835
20836         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
20837
20838 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
20839
20840         * gtk/gtkaccelgroup.h: mark certain functions as internal.
20841
20842 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
20843
20844         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
20845         expand behaviour changed.
20846
20847         * gtk/gtklabel.c (gtk_label_set_pattern):
20848         (gtk_label_set_justify):
20849         (gtk_label_set_line_wrap):
20850         don't bother invoking queue_clear, the reallocation does
20851         that for us, always free_words so the upcoming resize will
20852         relayout the label's contents.
20853
20854 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
20855
20856         * applied argument implementation patches from Elena Devdariani
20857         <elena@cogent.ca>.
20858
20859         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
20860         ::space_style, ::relief
20861         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
20862         * gtk/gtkpreview.c: ::expand
20863         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
20864         * gtk/gtknotebook.c: ::homogeneous
20865         * gtk/gtklabel.c: ::wrap
20866         * gtk/gtklist.c: ::selection_mode
20867         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
20868         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
20869         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
20870         * gtk/gtkclist.c: ::sort_type
20871         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
20872         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
20873
20874 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
20875
20876         * gtk/gtkstyle.c: Removed ill-thought-out part of last
20877         comment.
20878
20879 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
20880
20881         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
20882         counting right when we have to attach a new style
20883         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
20884
20885         * gtk/gtkstyle.c: Documented the refcounting
20886         peculularities of gtk_style_attach.
20887
20888 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20889
20890         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
20891         window types.
20892
20893         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
20894         of GTK_TOPLEVEL for creating the window.
20895
20896 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20897
20898         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
20899         the last argument (reported by Per Winkvist).
20900         
20901 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
20902
20903         Fixes for invisible XOR lines (Frank Loemker
20904         <floemker@TechFak.Uni-Bielefeld.DE>)
20905         
20906         * gtk/gtkclist.c (gtk_clist_realize): Always use
20907         a non-zero pixel for GDK_XOR.
20908
20909         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
20910         Use GDK_INVERT instead of GDK_XOR.
20911
20912 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
20913
20914         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
20915         signals if h/voffsets differ from adjustment values.
20916         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
20917
20918 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
20919
20920         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
20921         ::selection-done emissions up to the topmost menu shell.
20922
20923 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
20924
20925         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
20926         the user data on the window before destroying it.
20927
20928         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
20929         unrealize handler to take care of destroying 
20930         notebook->panel properly. 
20931         (Bug #1198 - Morten Welinder <terra@diku.dk>)
20932
20933         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
20934         of g_new and g_realloc to stop memory leak. (Actually,
20935         we could just use g_realloc(), but I'm not 100% sure
20936         that is portable).
20937         (Bug #1196 - Morten Welinder <terra@diku.dk>)
20938
20939 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
20940
20941         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
20942
20943         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
20944         for fontsets.
20945
20946         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
20947         with bin/button confusion.
20948
20949 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
20950
20951         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
20952         and show how preselection of radio items is done.
20953
20954 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
20955
20956         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
20957         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
20958         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
20959         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
20960         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
20961         * gtk/gtktable.c (gtk_table_attach): 
20962         * gtk/gtklist.c (gtk_list_insert_items): 
20963         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
20964         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
20965         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
20966         * gtk/gtkbin.c (gtk_bin_add): 
20967         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
20968         * gtk/gtkfixed.c (gtk_fixed_put): 
20969         * gtk/gtklayout.c (gtk_layout_put):
20970         general fixups to container_add logic. always realize child if
20971         child->parent is realized, only map the child and queue a resize
20972         if child and child->parent are both visible.
20973
20974 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
20975
20976         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
20977         instead of gtk_container_foreach to walk and unrealize children, so
20978         composite children get also unrealized.
20979         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
20980         (gtk_widget_map): assert that the widget is visible (basic constrain).
20981         (gtk_widget_real_map): assert that the widget is realized (basic
20982         constrain).
20983
20984 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
20985
20986         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
20987
20988 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
20989
20990         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
20991         file for iso-8859-2 locales.
20992
20993         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
20994
20995 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
20996
20997         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
20998          (Pointed out by andy@rz.uni-karlsruhe.de and others).
20999          Remove some suspicious and useless lines. 
21000
21001 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
21002
21003         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
21004         width,height = 0, 0 to mean - here to edge of window,
21005         instead of -1, -1, since the former is all we support.
21006
21007 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
21008
21009         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
21010         when removing from quit_functions list.
21011
21012 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
21013
21014         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
21015
21016 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
21017
21018         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
21019          When redrawing characters on non-visible entry, use appropriate
21020          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
21021
21022 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
21023
21024         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
21025         from drag coordinates.
21026         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
21027         use drag_dest_cell.
21028
21029         * gtk/gtktree (drag_dest_cell)
21030         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
21031         (Bug #1129)
21032
21033 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
21034
21035         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
21036         translate_* fields.
21037         (gtk_item_factory_finalize): invoke translate_notify independant from
21038         translate_data.
21039         (gtk_item_factory_set_translate_func): likewise.
21040         (gtk_item_factory_destroy): only remove ifactory pointer from those
21041         widgets that belong to us (stupid me).
21042
21043 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
21044
21045         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
21046         rc_style list when lookup succeeeds.
21047
21048 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
21049
21050         * gtk/gtkctree.c (resync_selection): 
21051         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
21052         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
21053         bug.
21054
21055 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
21056
21057         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
21058         Add some missing GDK_THREADS_ENTER()/LEAVE around
21059         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
21060
21061 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
21062
21063         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
21064         rather than emit_by_name.
21065
21066         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
21067         on the widget across multiple signal emissions.
21068         (gtk_editable_delete_text): same here.
21069         (gtk_editable_class_init): set widget_class->activate_signal after
21070         editable_signals[ACTIVATE] has been created.
21071
21072 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
21073
21074         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
21075         position here prematurely -- we might not have the
21076         right ->min_position and ->max_position yet.
21077
21078 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
21079
21080         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
21081         Add error traps so if the other end of the connection
21082         dies, we survive.
21083
21084         * gtk/gtkselection.c (gtk_selection_notify): Clean
21085         up properly when selection property retrieval fails.
21086         
21087         * gtk/gtkselection.c (gtk_selection_request): Correctly
21088         reject SelectionRequest notifies where the handler
21089         returns no data.
21090
21091 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21092
21093         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
21094         when we've previously highlighted.
21095
21096         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
21097         emit two "drag_leave" signals for Motif drops.
21098
21099         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
21100         back the correct status messages when dropping from
21101         Motif onto a proxy window that is rejecting the
21102         drop.
21103
21104 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
21105
21106         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
21107         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
21108         to compare two argument values. added gtk_arg_to_valueloc() to set a
21109         variable from an arg through its location (pointer).
21110
21111         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
21112         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
21113         as gfloat*, uchars are collected as guchar*, ints are collected as
21114         gint*, etc...
21115
21116 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
21117
21118         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
21119         Include <string.h> instead of <strings.h>.
21120
21121         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
21122         (actually, a lot more duplicate includes occur if
21123          you trace through the sequence of #include's)
21124         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
21125         
21126 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
21127
21128         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
21129         gtk-a-higuti-990322-[0-3]
21130
21131         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
21132         that was causing -DX_LOCALE not to work.
21133
21134         * gtk/gtkrc.c (gtk_rc_init):
21135         X_LOCALE will never have LC_MESSAGES defined
21136
21137 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
21138
21139         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
21140         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
21141
21142         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
21143         left/right as well (gtk-michael-980726-0.patch.gz).
21144
21145         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
21146         for pointer values, use gchar instead of char. fixed uline allocation
21147         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
21148         chunks instead of G_ALLOC_ONLY.
21149         (gtk_label_size_request): always alter requisition as passed and leave
21150         widget->requisition alone.
21151         (gtk_label_set_text): allow NULL strings.
21152         (gtk_label_new): likewise.
21153
21154 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
21155
21156         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
21157
21158 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
21159
21160         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
21161         *and* mapped (i.e. drawable).
21162         (gtk_bin_expose): only send exposes to drawable children.
21163
21164         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
21165         (gtk_box_expose): only send exposes to drawable children.
21166
21167         * gtk/gtkhscale.c (gtk_hscale_draw): 
21168         * gtk/gtkvscale.c (gtk_vscale_draw):
21169         hm, this is an ugly one. we first compute the size of our trough area
21170         here (window relative) and then check intersection with the draw_area
21171         which is parent relative because we're a NO_WINDOW widget, so we need
21172         to offset the trough area by allocation.x and allocation.y before the
21173         check. (this must not be done for the background area though, since
21174         that's already computed parent relative).
21175
21176 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
21177
21178         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
21179         unrealize title buttons.
21180
21181 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
21182
21183         * gtk/gtkclist.c (gtk_clist_column_title_passive)
21184         (gtk_clist_column_title_active): 
21185         only connect/disconnect to GtkWidgetClass::event to block mouse events.
21186
21187         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
21188         zero initialize event, removed superfluous gdk_window_get_pointer call
21189
21190         * gtk/gtklist.c (gtk_list_vertical_timeout)
21191         (gtk_list_horizontal_timeout): removed superfluous
21192         gdk_window_get_pointer call
21193
21194 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
21195
21196         * plugging problems reported by "Bruce Mitchener, Jr."
21197         <bruce@puremagic.com> due to a purify session.
21198
21199         * gtk/gtkstyle.c:
21200         (gtk_style_ref): 
21201         (gtk_style_unref): assert ref_count to be > 0.
21202
21203         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
21204         the requisition.
21205         (gtk_clist_set_shift): likewise.
21206
21207         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
21208         adjustments.
21209
21210         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
21211         event before sending it and set send_event to TRUE (which needs to
21212         be done for *all* synthesized events).
21213         (gtk_list_vertical_timeout): likewise.
21214
21215         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
21216         leaks.
21217
21218         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
21219         to TRUE when synthesizing events.
21220
21221 [ *** end of merges from 1.2 *** ]      
21222         
21223 1999-11-21  Tor Lillqvist  <tml@iki.fi>
21224
21225         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
21226         (or copied from gdkconfig.h.win32 on Win32, sigh).
21227
21228         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
21229
21230         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
21231
21232         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
21233
21234         * gdk/gdkconfig.h.win32: New file.
21235
21236         * gdk/win32/makefile.cygwin: Build just a static archive here.
21237
21238         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
21239         for the DLL from the static archive built above.
21240
21241         * gdk/gdk.def: Moved here from the win32 subdirectory.
21242
21243         * gdk/win32/*: Adapt for the changed private struct organisation.
21244
21245         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
21246
21247 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
21248
21249         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
21250         for wheel mice (buttons 4 and 5).
21251
21252 1999-11-18  Tor Lillqvist  <tml@iki.fi>
21253
21254         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
21255         drawables use just the pixel field in the foreground and
21256         background GdkColor of the GdkGC.
21257
21258         gdk_gc_set_{fore,back}ground() are called in the GIMP with
21259         GdkColors containing uninitialized (red,green,blue) fields, and
21260         just the pixel field filled in, and furthermore in the
21261         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
21262         It thus turns out that we really don't need to have the full
21263         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
21264         it later to have just the pixel values.
21265
21266 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
21267
21268         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
21269
21270 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
21271
21272         * docs/gtkfaq.sgml: threads example from Erik Mouw.
21273         New question on GtkLabel background colors.
21274
21275         * docs/gtk_tut.sgml:
21276           - Correct the example code callback
21277             function definitions.
21278           - Update the gtkdial example code, from Frans van Schaik.
21279           - Update setselection.c to current API.
21280
21281         * examples/Makefile examples/*/*.c: Update to code
21282         listed in tutorial.
21283
21284 1999-11-10  Tor Lillqvist  <tml@iki.fi>
21285
21286         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
21287         subrange table (from the "Developing International Software for
21288         WIndows 95 and Windows NT" book) was missing the Hangul syllable
21289         block... Get the loaded font's charset correctly.
21290
21291         (Note that this, and the other *-win32.c files, still really are
21292         the old ones, the win32 subdirectory is not ready for compilation
21293         yet after the reorg.)
21294
21295 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
21296
21297         * gtk/gtkclist.c: Fix off-by-one bug in parameter
21298         check.
21299
21300 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
21301
21302         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
21303         on results of XQueryDeviceState().
21304
21305 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
21306
21307         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
21308         we need to accesss only ->children. We need an accessor
21309         for the children.
21310
21311         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
21312         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
21313         to get rid of gdkx.h include.
21314         
21315         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
21316         and random references to 'None'.
21317
21318         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
21319         Get rid of unused #include <gdk/gdkx.h>
21320
21321         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
21322         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
21323         gdkconfig.h.
21324
21325 1999-11-08  Tor Lillqvist  <tml@iki.fi>
21326
21327         * gdk/win32/gdkdraw.c
21328         * gdk/win32/gdkfont.c
21329         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
21330         following yesterday's changes. (Unrelated to Owen's reorg.)
21331
21332 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
21333
21334         * gdk/x11/gdkinput-gxi.c: Add missing include,
21335           fix GdkWindowPrivate => GdkDrawablePrivate.
21336
21337         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
21338
21339         * gdk/x11/Makefile.am (xinput_sources): Add missing
21340         backslash to fix building with --with-xinput=none
21341
21342 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
21343
21344         Move all X specific code into the x11/ directory.
21345         Aside from shuffling things around, did the following:
21346
21347        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
21348          gdk_arg_context_* - a simple argument parsing system
21349          in the style of popt.
21350
21351        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
21352          gdk/x11/gdkprivate-x11.h:
21353          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
21354          add ->klass and ->klass_data fields. The klass_data
21355          field points to an auxilliary structure that is
21356          windowing system dependent.
21357
21358        * gdk/gdkfont.c: Make most of the measurement functions
21359          simply wrappers around gdk_text_extents().
21360
21361        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
21362          _gdk_font_strlen() function that hides the weird
21363          behavior in gtk+-1.[02] where a string is interpreted
21364          differently for 8-bit and 16-bit fonts.
21365
21366        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
21367          to store common code for synthesizing double/triple
21368          press events.
21369         
21370        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
21371          Make all the function that modify an existing GC
21372          simply wrappers around gdk_gc_set_values().
21373          
21374        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
21375          for throwing out later.
21376
21377        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
21378          GdkImagePrivate and GdkColormapPrivate to have a
21379          windowing system dependent part (GdkFontPrivateX etc.)
21380          that "derives" from the system-independent part.
21381
21382        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
21383          Got rid of the included-source-files for XInput in
21384          favor of automake conditionals. (Which didn't exist
21385          when XInput support was originally added.)
21386
21387        * gdk/gdkrgb.c: Remove the visual id from the debugging
21388          statements since that is X11 specific; print out
21389          type/depth info instead.
21390          
21391
21392 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
21393
21394         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
21395         loading duplicates of hashed fonts.
21396
21397         * gdk/gdk.c (gdk_keysym_convert_case): rename
21398         gdk_XConvertCase to gdk_keysym_convert_case, allow
21399         results to be NULL in the GTK+ style.
21400
21401         * gdk/gdkcompat.h: Started compatibility header
21402         for renames.
21403
21404 1999-11-07  Tor Lillqvist  <tml@iki.fi>
21405
21406         * gdk/win32/gdkprivate.h: New font private structures, related to
21407         fontsets.
21408
21409         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
21410         gdk_font_list_free(). On X11, will just be wrappers to
21411         XListFonts() and XFreeFontNames(). On Win32, the code previously
21412         in gtkfontsel.c is now here.
21413
21414         New function gdk_font_xlfd_create(). On X11 will get the FONT
21415         property of the font (for GDK_FONT_FONTs), or call
21416         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
21417         builds a XLFD style name from the font information in the LOGFONT
21418         struct(s).
21419
21420         New function gdk_font_xlfd_free(), which correspondingly frees the
21421         string returned by gdk_font_xlfd_create().
21422
21423         Implement fontsets on Win32. Add a function that iterates over a
21424         wide char string and calls a callback function for each substring
21425         of wide chars from the same Unicode subrange (and thus probably
21426         available in the same real font).
21427
21428         Improve the XLFD emulation a bit.
21429
21430         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
21431
21432         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
21433         Beta3, WM_IME_CHAR messages don't seem to contain the composed
21434         multi-byte char as with the Active IMM on Win9x. Oh well, handle
21435         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
21436         ImmGetCompositionStringW() to get the composed Unicode chars.
21437
21438         * gdk/win32/gdkgc.c
21439         * gdk/win32/gdkdraw.c: Changes needed because of the font private
21440         struct changes.
21441
21442         * gdk/win32/gdk.def: Add the new functions.
21443
21444 1999-11-04  Tor Lillqvist  <tml@iki.fi>
21445
21446         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
21447         get the Platform SDK to get <dimm.h>.
21448
21449         * gdk/win32/gdkevents.c: More event handling fixes and
21450         simplification. Never generate motion events with is_hint true. We
21451         used to do that on bogus grounds earlier. Windows sends
21452         WM_MOUSEMOVE messages on button events even if the mouse hasn't
21453         moved, ignore these.
21454
21455         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
21456
21457         * gdk/win32/gdkglobals.c
21458         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
21459         the TrackMouseEvent function, and use it.
21460
21461         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
21462         char before calling WideCharToMultiByte in order to get a string
21463         for the window title.
21464
21465         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
21466
21467         * gdk/win32/gdk.def: Remove obsolete functions.
21468
21469         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
21470         /nodefaultlib and /defaultlib switches.
21471
21472         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
21473
21474 1999-10-31  Tor Lillqvist  <tml@iki.fi>
21475
21476         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
21477         EuroSign).
21478
21479         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
21480         same type as GdkWChar, especially on Win32.
21481
21482         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
21483
21484         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
21485         before passing to Windows GDI for drawing etc. Convert to the
21486         system default codepage before passing to Windows as window
21487         titles.
21488
21489         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
21490         support changing input locale on the fly.
21491
21492         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
21493         on-the-fly changes. Convert incoming characters from the current
21494         codepage to Unicode (and then to a UTF-8 multi-byte string) based
21495         on the current input language. Use keysym<->Unicode mapping tables
21496         and functions borrowed from xterm sources.
21497
21498         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
21499         editions of Win9x, use the ActiveX-based Active IMM (Input Method
21500         Manager) if available. IMEs and the Active IMM are available under
21501         the disguise of Chinese, Korean and Japanese support for IE and
21502         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
21503         support is present in all editions (as long as you install it).
21504
21505         Call DispatchMessage from gdk_events_queue() (and thus
21506         gdk_WindowProc()), instead of duplicating the code in
21507         gdk_WindowProc().
21508
21509         Reworked the grab handling and propagation code, factored out
21510         duplicated code snippets into separate functions. Other cleanups,
21511         too.
21512
21513         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
21514         the <dimm.h> header describing the Active IMM.
21515
21516         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
21517         just do the same as for "single" fonts.
21518
21519         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
21520         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
21521         the new keysyms from gdkkeysyms.h.
21522
21523         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
21524         fontset, so that gtkentry uses wide characters.
21525
21526         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
21527         GTk+'s system directory "gtk+", not "gtk".
21528
21529 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
21530
21531         * docs/gtkfaq.sgml: FAQ update
21532
21533 1999-10-21  Tor Lillqvist  <tml@iki.fi>
21534
21535         * gdk/win32/gdkprivate.h: Add more font private data.
21536
21537         * gdk/win32/gdkfont.c
21538         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
21539         fonts and strings. Now works much better. You still have to
21540         have a correct font selected, though. No fontset emulation yet.
21541
21542 1999-10-19  Tor Lillqvist  <tml@iki.fi>
21543
21544         * gtk/maketypes.awk: Use G_OS_WIN32.
21545
21546         * gtk/gtk.def: Add some missing entry points. Also some non-public
21547         ones, but PyGTK porter claims to need them.
21548
21549         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
21550         built-in type generation.
21551
21552 1999-10-14  Tor Lillqvist  <tml@iki.fi>
21553
21554         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
21555         GDK_FONT_FONT fonts (which is all we have for now, we don't
21556         emulate fontsets). The X11 version uses plain XDrawString in that
21557         case, too. The string passed to gdk_draw_text_wc seems to be in
21558         fact (at least, when used by gtkentry and gtktext) either in a
21559         single-byte charset, or a DBCS. Not Unicode.
21560
21561         This fixes the problem in gtkfontsel, where even if you had
21562         selected a font with a non-Latin1 charset (windows-greek, for
21563         instance), the preview still used Latin-1 glyphs.
21564
21565         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
21566         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
21567         (gdk_font_load): Recognize the demibold etc weights, even if we
21568         don't have the corresponding constants in the headers.
21569         (gdk_font_hash_insert): Use same hash mechanism as in the X11
21570         version. Should save font resources a bit, when we don't have
21571         multiple HFONTs for the same font.
21572
21573         * gdk/win32/gdkprivate.h: Add the names field as in the X11
21574         version.
21575
21576 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
21577
21578         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
21579         X values
21580
21581 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
21582
21583         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
21584         layout support (as mentioned on
21585         http://www.jcinteractive.com/gnome-ui/software/widgets/)
21586
21587 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
21588
21589         * gtk/fnmatch.c
21590         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
21591
21592 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
21593
21594         * configure.in (ALL_LINGUAS): Added Galician (gl)
21595
21596 1999-10-05  Tor Lillqvist  <tml@iki.fi>
21597
21598         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
21599
21600         * gdk/win32/gdkcompat.c: New file, actually provide an
21601         implementation for the deprecated functions. (Just temporarily.)
21602
21603         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
21604
21605         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
21606
21607         * gdk/win32/gdk.def gtk/gtk.def: Updates.
21608
21609 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
21610
21611         * configure.in: Added "uk" to ALL_LINGUAS.
21612         
21613 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
21614
21615         * configure.in: correct checking for BeOS check
21616
21617         * gdk/gdktypes.h
21618         * gtk/fnmatch.c
21619         * gtk/gtkfilesel.c
21620         * gtk/gtkitemfactory.c
21621         * gtk/gtkmain.[ch]
21622         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
21623
21624 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
21625
21626         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
21627         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
21628         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
21629         by Bulgarian). 
21630
21631 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
21632
21633         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
21634         Fix a reference to window_private->destroyed.   
21635
21636         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
21637         (ugly) setting of an internal GdkWindow member to use
21638         a _slightly_ cleaner macro.
21639
21640         * gdk/gdkprivate.h: Split GdkWindowPrivate into
21641         GdkDrawablePrivate and GdkWindowPrivate.
21642         Add extra macros for accessing GDK_DRAWABLE_ components.
21643
21644         * *.[ch]: Massive adjustments for the above, use the
21645         new macros in a lot of places.
21646
21647 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
21648
21649         * gdk/gdktypes.h: Make GdkDrawable the base type,
21650         not GdkWindow.
21651
21652 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
21653
21654         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
21655
21656 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
21657
21658         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
21659
21660 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
21661
21662         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
21663         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
21664
21665         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
21666
21667         * docs/gtk-config.1: Now autogenerated.
21668         * docs/Changes-1.4.txt: started
21669         
21670 1999-10-03  Tor Lillqvist  <tml@iki.fi>
21671
21672         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
21673         to #ifdef also here.
21674
21675         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
21676         Owen did to the X11 backend.
21677
21678         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
21679         ScrollWindowEx when blitting inside a window, it can't be correct
21680         in the general case.
21681
21682         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
21683         WM_GETMINMAXINFO is easier.
21684
21685         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
21686         depth equal to the bitspixel value, not the visual's depth.
21687
21688         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
21689         to 24 even if the bitspixel value is 32.
21690
21691         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
21692         need to check for depth==32 when bpp==32, depth will always be 24.
21693
21694 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
21695
21696         * docs/Changes-1.4.txt: Started
21697         
21698         * gtk/Makefile.am (gdk_headers): Include all the new headers.
21699
21700         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
21701         
21702         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
21703         into C file.
21704         
21705         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
21706         header to gdkinputprivate.h.
21707
21708         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
21709         unused since before 1.2.
21710
21711 1999-09-30  Tor Lillqvist  <tml@iki.fi>
21712
21713         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
21714         expand possible hex escapes in the font family (put there by
21715         logfont_to_xlfd if the font name isn't a legal XLFD font family,
21716         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
21717         On Win32, add hex escapes here, too.
21718
21719 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
21720
21721         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
21722         to #ifdef GDK_WINDOWING_X11.
21723
21724 [ Merges from gtk-1-2 ]
21725
21726 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
21727
21728         * configure.in: fixed "GNU Make" check to pass with new make version
21729         3.77.95.
21730
21731 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
21732
21733         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
21734         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
21735         AM_PATH_GTK() macros don't get confused by the -pre1.
21736
21737 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21738
21739         * configure.in (REBUILD): Change check for perl5
21740           to check explicitely for v >= 5.002. (5.001
21741           does not work with our scripts.)
21742
21743 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
21744
21745         * configure.in: evaluate $PERL for the perl version check. added
21746         --disable-rebuilds to give the user an option to completely disable
21747         any source autogeneration rules.
21748
21749 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
21750
21751         * configure.in: evaluate $ac_make when checking for GNU Make.
21752
21753 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21754
21755         * docs/Makefile.am: added generation.txt.
21756
21757         * Makefile.am: require automake 1.4, build README from README.in and
21758         INSTALL from INSTALL.in in dist-hook.
21759         
21760         * README.in:
21761         * INSTALL.in: new files to autogenerate README and INSTALL from.
21762
21763         * configure.in: figure whether we have GNU Make
21764
21765         * docs/generation.txt: minor additions/corrections.
21766
21767 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21768
21769         * docs/gtkfaq.sgml: FAQ Update
21770
21771 July 30, 1999 Elliot Lee <sopwith@redhat.com>
21772         
21773         * configure.in: Fix autoconf warnings about cross compilation by
21774         trying to provide sane defaults for AC_TRY_RUN.
21775
21776 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
21777
21778         * ltconfig
21779         * ltmain.sh: upgrade to libtool 1.3.3
21780
21781 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
21782
21783         * INSTALL: Indicate that the --with-glib= configure
21784         time flag is unsupported.
21785
21786 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
21787
21788         * docs/generation.txt: Added a file that gives
21789         documenation about the autogeneration process for
21790         various autogenerated files.
21791         
21792 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21793
21794         * configure.in (LIBS): Look for libgmodule in the
21795         right location.
21796
21797 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
21798
21799         * docs/gtk_tut.sgml: Removed references to
21800         code examples in my directory on gtk.org as
21801         they should all be in the tutorial now.
21802
21803         * docs/gtk_tut.sgml: Added sources for dial-test
21804         and scribble-xinput programs that were previously
21805         missing.
21806
21807 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
21808
21809         * TODO: Added entry about menu keyboard navigation, removed
21810         some finished items.
21811
21812 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
21813
21814         * acinclude.m4: Standardize on func_dgettext
21815         not func_gettext, so that the checks for dgettext
21816         actually are paid attention to.
21817
21818 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
21819
21820         * configure.in (LIBS): Add $INTLLIBS into $LIBS
21821         directly, rather than repeating the checks for
21822         gettext.
21823
21824         * INSTALL: Added information about gettext and
21825         NLS support.
21826
21827         * acinclude.m4 (LIBM): Check for dgettext, not
21828         just gettext. This should hopefully fix things wrt
21829         systems with old versions of GNU gettext installed.
21830
21831 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21832
21833         * configure.in (LIBS): Look for libgmodule in the
21834         right location.
21835
21836 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21837
21838         * autogen.sh: add --enable-maintainer-mode
21839
21840         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
21841
21842 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
21843
21844         * docs/gtk-config.1.in:
21845           docs/Makefile.am:
21846           configure.in: gtk-config is now generated.
21847
21848         * docs/gtk-config.1: Removed, now generated.
21849
21850 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
21851
21852         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
21853         handle CreateNotify itself, still put out a debuging message for
21854         --gdk-debug=events. made the ReparentNotify debugging message more
21855         verbose.
21856         wrap xcoords translation for ConfigureEvents into an error trap,
21857         a destroy event may already be pending, and in that case, the
21858         actuall coordinate values are not at all critical.
21859
21860 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
21861
21862         * gdk/gdkcc.c: Stop leaking the color_hash all over
21863         the place. Simplify and improve the logic.
21864
21865 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
21866
21867         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
21868         for prototypes and function implementations consistent (reported
21869         by Tomas Ogren).
21870
21871 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
21872
21873         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
21874         send_event set in debugging output.
21875         (gdk_compress_exposures): default initialize the event so we don't
21876         operate on bogus values (namely send_event).
21877
21878 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
21879
21880         * gdk/gdkwindow.c: When we receive an unexpected
21881         destroy notify on one of our windows, don't just
21882         warn about it, also mark our windows as destroyed.
21883
21884 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
21885
21886         * gdk/gdkfont.c (gdk_font_hash_insert): Add
21887           name => font and name => fontset hashes. The 
21888           name => fontset hash is a _big_ win since we
21889           weren't previously caching fontsets at all and loading
21890           fontsets is expensive. The name => font hash
21891           is less of a win, but it does save us from doing
21892           repeated XQueryFont calls on the same font.
21893
21894         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
21895           list so we can remove font/fontset from hash.
21896
21897 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21898
21899         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
21900           and slightly confusing test. [ XInternAtom (,,TRUE)
21901           will never return None ].
21902
21903 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
21904
21905         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
21906           gdk/gdkwindow.c (gdk_window_set_hints):
21907
21908         Don't omit setting the properties if flags == 0 -
21909         there may be an existing set of properties there
21910         already. (Very old bug. Would it be better to
21911         delete the property instead?)
21912
21913         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
21914           spelling error in comment.
21915
21916 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
21917
21918         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
21919           to avoid stomping over gdk_error_warnings.
21920
21921         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
21922           as (bits_per_pixel + 7) / 8. This gives the same
21923           result as before for multiples of 8, but actually
21924           a "reasonable" value for 1bit or 4bit displays.
21925
21926 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21927
21928         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
21929         GNU Make.
21930
21931 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
21932
21933         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
21934         discarding configure events.
21935
21936 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
21937
21938         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
21939         refcount is greater than zero.
21940
21941         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
21942
21943         * gdk/gdkfont.c (gdk_font_unref): Likewise.
21944
21945         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
21946
21947         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
21948
21949 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
21950
21951         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
21952         that format 32 => sizeof(item) == 4. It really is
21953         sizeof(long).
21954
21955 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
21956
21957         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
21958         core dump at all on X IO errors, only core dump
21959         if --enable-debug for X errors.
21960
21961 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
21962
21963         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
21964         unknown window:" message. disabled ConfigureNotify discarding code,
21965         because it led to events being processed out of order.
21966
21967 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
21968
21969         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
21970
21971         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
21972         we export this function, supress error warnings and don't reset the
21973         error code in the first half of this function.
21974
21975         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
21976         code (instead of just -1) so gdk_error_trap_pop() reveals something
21977         actually informative about the error that happened.
21978
21979         * gdk/*.c:
21980         don't rely on gdk_error_code being -1 if an error occoured, but just
21981         gdk_error_code != 0.
21982
21983 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
21984
21985         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
21986         pointer *before* invoking the filter function, so we at least don't
21987         crash if a filter is removed that is currently executed. window filters
21988         *really* need to be made truely reentrant at some point.
21989
21990 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
21991
21992         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
21993         PropertyNotify debug messages.
21994
21995 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
21996         
21997         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
21998         
21999         * gdk/gdkim.c: Fix cut-and-paste errors for 
22000         x/y and PreeditAttributes/StatusAttributes.
22001
22002 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
22003
22004         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
22005         G_MAXINT to 2^16 to alleviate overflow problems in
22006         various window managers.
22007
22008 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
22009
22010         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
22011         for fontsets.
22012
22013 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
22014
22015         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
22016         Initialize size_hints.x and size_hints.y because kwm
22017         brokenly pays attention to them.
22018         (Bug #1181 -  Lars Heete <hel@admin.de>)
22019
22020 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
22021
22022         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
22023         return value of gdk_list_visuals(). 
22024         (Bug #1193 - Morten Welinder <terra@diku.dk>)
22025
22026 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
22027
22028         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
22029         XSetIMValues to (void *) when comparing to NULL, to workaround
22030         the problem of some compilers barfing since older X headers don't
22031         have the prototype for it.
22032
22033 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
22034
22035         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
22036         for pseudocolor where colormap->colors was double
22037         allocated.
22038
22039         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
22040         color value in the hash table with the pixel filled
22041         in so when we do later hash table lookups, the color
22042         value is correct.
22043         
22044 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
22045
22046         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
22047         making the call
22048
22049 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
22050
22051         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
22052         pointed out by Morten Welinder <terra@diku.dk>.
22053
22054 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
22055
22056         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
22057           default filter from the list
22058
22059 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
22060
22061         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
22062           default filter from the list
22063
22064 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
22065
22066         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
22067
22068         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
22069         g_strdup_printf instead of calcing the length separately
22070
22071 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
22072
22073         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
22074         that we don't do in many other places. (Fixing duplicate 
22075         #include of config.h)
22076
22077         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
22078         Otherwise, #ifndef XINPUT_NONE check in the latter
22079         doesn't work. (Bug #546)
22080
22081 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
22082
22083         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
22084         "None" case insensitive.
22085
22086 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
22087
22088         * gdk/gdkselection.c: 
22089         Add error traps so if the other end of the connection
22090         dies, we survive.
22091
22092 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
22093
22094         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
22095         dest_xid field into two fields - one for the window
22096         to send in messages, one to indicate the last looked
22097         up window for caching purposes. This is needed, so
22098         that Leave messages get the correct window.
22099
22100 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
22101
22102         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
22103         Fix warning created by people mucking around
22104         with the gsource API.
22105
22106         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
22107         Change mapping between GIOCondition and GdkInputCondition
22108         to match the way the Linux kernel does it. This should
22109         fix problems where closed pipes were no longer signalling
22110         GDK_INPUT_READ on systems with a native poll().
22111
22112 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
22113
22114         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
22115         explicitly for the string "None" - it is in the XPM
22116         spec and some servers treat unknown colors in odd ways
22117         (like asking the user!)
22118
22119 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
22120
22121         * gdk/gdkevents.c: made "->" into a "." of previous change so
22122         it compiles
22123
22124 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
22125
22126         * gdk/gdkevents.c (gdk_compress_exposures): Set the
22127         window field of the event structure before calling
22128         user filters.
22129
22130 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
22131
22132         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
22133         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
22134
22135 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
22136
22137         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
22138         intermediate text property - prevents major memory
22139         leak when gdk_use_mb.
22140         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
22141
22142 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
22143
22144         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
22145         gtk-a-higuti-990322-[0-3]
22146
22147         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
22148         sizeof(wchar_t) != sizeof (GdkWChar)
22149
22150         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
22151         that was causing -DX_LOCALE not to work.
22152
22153         * gtk/gtkrc.c (gtk_rc_init):
22154         X_LOCALE will never have LC_MESSAGES defined
22155
22156         * gdk/gdk.c (gdk_init_check):
22157         Remove --xim-preedit and --xim-status from argv properly.
22158
22159         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
22160         that the client window is present on the X server
22161         before we pass it to the input method.
22162
22163 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
22164
22165         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
22166         if --display is specified on the command line, than
22167         the drag window will not be created on that display.
22168         
22169 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
22170
22171         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
22172         lookups with only_if_exists == TRUE were inserting
22173         bogus values into the atom cache.
22174
22175 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
22176
22177         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
22178         then reset it to NULL.
22179
22180         * gdk/gdkcolor.c:
22181         (gdk_colors_free): 
22182         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
22183         key for g_hash_table_remove() in both functions, this prevents us
22184         from accessing possibly uninitialized portions of a GdkColor structure
22185         where we are only interested in its pixel value.
22186
22187 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22188
22189         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22190         font hash table, if we have a GdkFontPrivate entry for this font
22191         already, simply increment its reference count, provided by Olaf Dietsche
22192         <olaf.dietsche+list.gtk@netcologne.de>.
22193
22194 1999-09-21  Tor Lillqvist  <tml@iki.fi>
22195
22196         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
22197         just to be sure.
22198
22199         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
22200         unused variables, leftovers from the X11 version.
22201
22202         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
22203
22204         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
22205         downcase fields on X11.
22206
22207 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
22208         
22209         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
22210         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
22211
22212 1999-09-17  Tor Lillqvist  <tml@iki.fi>
22213
22214         * gdk/win32/gdk.def: Add gdk_threads_mutex.
22215
22216         * gtk/makefile.msc: Correct path to libintl.
22217
22218         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
22219         use of gint vs. int, and gint vs. gboolean in headers and
22220         definitions. Use GtkType for the *_get_type functions. Note that
22221         these changes preserve binary compatibility.
22222
22223         * gdk/gdk.c
22224         * gdk/win32/gdk.c
22225         * gdk/gdk.h: Fix inconsistencies: gint vs int.
22226
22227         * gtk/gtkmain.c
22228         * gtk/gtkclist.c
22229         * gtk/gtkmenufactory.c
22230         * gtk/gtknotebook.c
22231         * gtk/gtkwidget.c: Fix inconsistencies, also gint
22232         vs. gboolean.
22233
22234         * gtk/gtkcolorsel.[ch]
22235         * gtk/gtkcombo.[ch]
22236         * gtk/gtkdrawingarea.[ch]
22237         * gtk/gtkgamma.[ch]
22238         * gtk/gtkhandlebox.[ch]
22239         * gtk/gtkhpaned.[ch]
22240         * gtk/gtkhruler.[ch]
22241         * gtk/gtkplug.[ch]
22242         * gtk/gtkpreview.[ch]
22243         * gtk/gtkruler.[ch]
22244         * gtk/gtksocket.[ch]
22245         * gtk/gtkstatusbar.[ch]
22246         * gtk/gtktoolbar.[ch]
22247         * gtk/gtkvbbox.[ch]
22248         * gtk/gtkvpaned.[ch]
22249         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
22250         functions.
22251
22252         * gtk/gtkgamma.h: Fix bug, missing () in call of
22253         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
22254
22255 1999-09-14  Tor Lillqvist  <tml@iki.fi>
22256
22257         * gdk/gdkcolor.c (gdk_colormap_new)
22258         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
22259         colormap->colors was allocated twice.
22260
22261         * gdk/win32/gdk.c: Remove some unused stuff.
22262
22263         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
22264         colormap.
22265
22266         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
22267         * gtk/gtklabel.h (gtk_label_get_type)
22268         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
22269         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
22270         in a couple of places, not guint.
22271
22272 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
22273
22274         * configure.in,po/et.po: added Estonian language file
22275
22276 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
22277
22278         * configure.in,po/da.po: added Danish file
22279
22280 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
22281
22282         * docs/gtkfaq.sgml: Minor FAQ Update
22283
22284 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
22285
22286         * docs/gtkfaq.sgml: FAQ update
22287
22288 1999-08-27  Tor Lillqvist  <tml@iki.fi>
22289
22290         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
22291         way to get window contents continually refreshed while resizing. I
22292         didn't like the effects myself, so it's not on by default.
22293
22294         * gdk/win32/gdkprivate.h: New flag variable
22295         gdk_event_func_from_window_proc, FALSE by default.
22296
22297         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
22298         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
22299         are passed --gdk-event-func-from-window-proc.
22300
22301         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
22302         and we have am event_func, call it instead of enqueing the event.
22303
22304 1999-08-23  Tor Lillqvist  <tml@iki.fi>
22305
22306         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
22307         Kelley: Set expose_count in GdkEventExposes correctly.
22308
22309         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
22310         MULTIPLE_WINDOW_CLASSES).
22311
22312         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
22313         for bug in NT, apparently NT *does* draw the end pixel, too, in
22314         LineTo with a one-pixel pen, so we don't have to do it ourselves.
22315
22316 1999-08-21  Tor Lillqvist  <tml@iki.fi>
22317
22318         Improvements by Hans Breuer: 
22319
22320         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
22321
22322         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
22323         CS_?REDRAW flags as they cause lots of (late) redraws when "show
22324         window contents while dragging" is turned on. Allocate at least
22325         one unique class for every GdkWindowType. If support for single
22326         window-specific icons is ever needed (eg. Dialog specific), every
22327         such window should get its own class.
22328
22329 1999-08-19  Tor Lillqvist  <tml@iki.fi>
22330
22331         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
22332         error that caused crashes.
22333
22334 1999-08-17  Tor Lillqvist  <tml@iki.fi>
22335
22336         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
22337         window, use ScrollWindowEx, and call UpdateWindow. This prevents
22338         bugs when for instance part of the window was outside the
22339         display. Thanks to Philippe Colantoni for finding and fixing this.
22340
22341 1999-08-16  Tor Lillqvist  <tml@iki.fi>
22342
22343         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
22344         endpoint calculations which were totally wrong. (A little RTFMing
22345         helps a lot ;-)
22346
22347         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
22348         from a separate directory, not from gettext, because of licensing
22349         issues (we want to use the LGPL version).
22350
22351         * README.win32: Mention the intl from glibc vs from gettext issue.
22352
22353 1999-08-13  Tor Lillqvist  <tml@iki.fi>
22354
22355         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
22356         in the key event handling: Now AltGr chars work again. Also,
22357         now Alt-digits are passed up as well as Control-digits.
22358         Pass keypad plus and minus as normal plus and minus.
22359
22360 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
22361
22362         * docs/gtkfaq.sgml: FAQ Update
22363
22364 1999-07-25  Tor Lillqvist  <tml@iki.fi>
22365
22366         * README.win32
22367         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
22368         the Wintab SDK.
22369
22370         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
22371         OK, but getting closer. Guard against bogus tilt data from Wacom
22372         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
22373         enable easier building without Wintab.
22374
22375         * gdk/win32/gdkinput.h
22376         * gdk/win32/gdkevents.c 
22377         * gdk/win32/gdkwindow.c: Minor changes related related to above.
22378         
22379         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
22380         code. As we have just one visual on Win32, no sense to have it in a
22381         table, and no need for the hash table.
22382
22383         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
22384         better on white background.
22385
22386 1999-07-21  Tor Lillqvist  <tml@iki.fi>
22387
22388         * README.win32: Update gcc build instructions. Mention gettext is
22389         GPL.
22390
22391         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
22392         supported cursor size with GetSystemMetrics.
22393
22394         * gdk/win32/gdkfont.c
22395         * gtk/gtkfontsel.c: Guard against some font weight and charset
22396         symbols being undefined (in mingw32 headers).
22397
22398         * gdk/win32/makefile.cygwin
22399         * gtk/makefile.cygwin
22400         * gtk/gtkthemes.c: No longer need to have differently named
22401         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
22402
22403 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
22404
22405         * docs/gtkfaq.sgml: Long awaited FAQ update.
22406
22407 1999-07-15  Tor Lillqvist  <tml@iki.fi>
22408
22409         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
22410         it. Obscure bit manipulation needed.
22411
22412         * gdk/win32/gdkevents.c: Logging.
22413         
22414         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
22415         style (file name include compiler name) for theme engines.
22416
22417 1999-07-13  Tor Lillqvist  <tml@iki.fi>
22418
22419         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
22420
22421         * gdk/win32/gdkevents.c: Fix long-standing bug in key
22422         events. The key.string wasn't zero-terminated, still we strdup'ed
22423         it in gdk_event_copy(). Synthesize crossing events for button
22424         events before possible propagation.
22425
22426         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
22427
22428         * gdk/win32/makefile.cygwin
22429         * gtk/makefile.cygwin: Use new DLL naming style for the
22430         GCC-compiled ones.
22431
22432         * gdk/win32/makefile.msc
22433         * gtk/makefile.msc: Cosmetics mostly.
22434
22435         * gtk/gtk.def: Add missing entry points.
22436
22437         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
22438
22439 1999-07-09  Tor Lillqvist  <tml@iki.fi>
22440
22441         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
22442         or height is zero. Don't print a warning if Pie or Arc fails, they
22443         always fail (?) for very narrow ellipses.
22444
22445         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
22446         the part or the destination window corresponding to source area
22447         outside of the source drawable's boundary.
22448
22449         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
22450         anything if less than two points.
22451
22452         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
22453         return NULL. Gtk cut-and-paste inside a single program works
22454         better this way. (It always gets the clipboard contents from
22455         Windows, not from its own copy, which is cleared anyway. I can't
22456         say I fully understand what happens... Emulating the X selection
22457         and property stuff is a bit of a mess.)
22458
22459         * gdk/win32/gdkevents.c
22460         * gdk/win32/gdkproperty.c: A bit more verbose logging.
22461
22462         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
22463         that never got deleted). Revamp gdk_region_shrink.
22464
22465         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
22466         after use.
22467
22468         * gtk/gtk.def: Add some missing entry points.
22469
22470         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
22471         component.
22472
22473 1999-07-04  Tor Lillqvist  <tml@iki.fi>
22474
22475         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
22476         Control-digits specially.
22477
22478 1999-07-03  Tor Lillqvist  <tml@iki.fi>
22479
22480         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
22481
22482 1999-06-28  Tor Lillqvist  <tml@iki.fi>
22483
22484         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
22485         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
22486         finding this.)
22487
22488 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
22489
22490         * gtk+.spec.in: Corrected some typos in files section.
22491         
22492 1999-06-15  Tor Lillqvist  <tml@iki.fi>
22493
22494         * README.win32: Mention using GNU gettext.
22495         * config.h.win32: Enable NLS stuff.
22496         * gtk/makefile.msc: Use GNU gettext.
22497         * gdk/win32/gdkdnd.c: Minor header reorg.
22498         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
22499         cosmetics.
22500         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
22501         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
22502
22503 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
22504
22505         * acinclude.m4
22506         * config.guess
22507         * config.status
22508         * ltconfig
22509         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
22510
22511 1999-05-30  Tor Lillqvist  <tml@iki.fi>
22512
22513         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
22514         SafeAdjustWindowRectEx. Don't override all calls to
22515         AdjustWindowRectEx by it, but use it only in two places: When
22516         creating a new top-level window and when moving a top-level
22517         window.
22518
22519         Use screen coordinate rectangle, not client rectangle, in
22520         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
22521         when we try to place a window so that the decoration (mainly,
22522         title bar) isn't visible.
22523
22524         These changes fix the bug that showed up for instance as the
22525         GIMP's saved top-level windows moving right and down (by an amount
22526         equal to the window decoration) for each session. This bug showed
22527         up also in testgtk's "Saved Position".
22528
22529         gdk_window_resize also redone a bit.
22530
22531 1999-05-25  Tor Lillqvist  <tml@iki.fi>
22532
22533         * gtk/testgtkrc: Add (commented out) Windows-style theme
22534         include line.
22535
22536         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
22537
22538 1999-05-18  Tor Lillqvist  <tml@iki.fi>
22539
22540         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
22541         gdkx.h to a gdk subdirectory, so that applications can include
22542         these with <gdk/*.h> without trouble.
22543
22544         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
22545         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
22546         have their bitmap destroyed.
22547
22548         * gdk/win32/gdk.def: Add gdk_root_parent.
22549
22550 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
22551
22552         * configure.in
22553           gtk-config.in
22554           ltconfig
22555           ltmain.sh     
22556           gtk/Makefile.am: changes to compile nicely (with xlib) 
22557           on BeOS
22558
22559 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
22560
22561         * acinclude.m4
22562         * config.guess
22563         * config.sub
22564         * ltconfig
22565         * ltmain.sh: upgrade to libtool 1.3
22566
22567 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
22568
22569         * gtk/gtkclist.c:
22570         * gtk/gtkctree.c: merges from gtk-1-2
22571
22572 1999-04-25  Tor Lillqvist  <tml@iki.fi>
22573
22574         Support added for building using a GNU toolchain on Win32,
22575         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
22576
22577         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
22578         * config.h.win32: Changes for gcc.
22579         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
22580         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
22581         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
22582         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
22583         Protect shl stuff unavaiilable with mingw32 headers.
22584         * gdk/win32/gdkevents.c: Fix typo.
22585         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
22586         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
22587         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
22588         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
22589         the mingw32 headers.
22590         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
22591         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
22592         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
22593         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
22594         Test for NATIVE_WIN32, not _MSC_VER.
22595         * gtk/gtkmain.c: No use warning about developer version on Win32,
22596         there aren't any non-developer versions anyhow.
22597         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
22598         * gtk/makefile.msc: Use pthread from another directory. Minor other
22599         changes. 
22600
22601 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
22602
22603         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
22604           default filter from the list
22605
22606 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
22607
22608         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
22609          when gtk_widget_grab_default() is called for a widget that
22610          is not within a GtkWindow.
22611
22612 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
22613
22614         * docs/gtk_tut.sgml, examples/clist.c: use a
22615           scrolled window in the clist example. Minor
22616           tutorial fixes.
22617
22618 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
22619
22620         * docs/gtk_tut.sgml: Style check from David King
22621           <dking@youvegotmail.net>
22622
22623 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
22624
22625         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
22626         compile with unknown value of GDK_WINDOWING
22627
22628 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
22629
22630         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
22631         after the rule is fired.
22632         (install-exec-local): Install gdkconfig.h only if the contents are
22633         different from the currently installed gdkconfig.h.
22634
22635 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
22636
22637         * gdk/Makefile.am (configexecincludedir): Rename from 
22638         configincludedir so that gdkconfig.h will be installed 
22639         as part of `make install-exec'. 
22640
22641 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
22642
22643         * acinclude.m4
22644         * config.guess
22645         * config.sub
22646         * ltconfig
22647         * ltmain.sh: upgrade to libtool 1.2f
22648
22649         * autogen.sh: libtool is not required to autogen gtk+
22650
22651         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
22652         needed)
22653
22654 1999-03-18  Tor Lillqvist  <tml@iki.fi>
22655
22656         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
22657         declaring gdk variables exported/imported from the DLL. New image
22658         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
22659         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
22660         GDK_DRAG_PROTO_OLE2.
22661
22662         * gdk/gdk.h: Merge in Win32 version: Two new functions,
22663         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
22664         declared only for the Win32 version, but could be in the X11
22665         version as well. (Needed for a Xlib-less gdk_imlib.)
22666         gdk_color_hash should have only one parameter. Declare
22667         gdk_threads_mutex with GDKVAR.
22668         
22669         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
22670         just one parameter.
22671
22672         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
22673         per pixel, not bits.
22674
22675         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
22676         Fetch bpp (which means bits-per-pixel here) from another place on
22677         Win32. Accept also depth==32 (which we might get on Win32) with
22678         bpp==32.
22679
22680         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
22681         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
22682         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
22683         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
22684         in the backend-dependent directory, not in the common gdk
22685         directory.
22686
22687         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
22688         headers.
22689
22690 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
22691
22692         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
22693         want to use the Gtk+ devel version (which is true, and yes - even i am
22694         currently working with the 1.2.x branch). so everyone reading this, you
22695         probably want to issue
22696         cvs checkout -r glib-1-2 glib
22697         and
22698         cvs checkout -r gtk-1-2 gtk+
22699         as your next two comands.
22700
22701 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
22702
22703         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
22704         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
22705
22706         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
22707         file. strongly deprecated the GTK_HAVE_* macros, we provide
22708         GTK_CHECK_VERSION() for people that need to check for certain
22709         Gtk+ versions.
22710
22711         * gtk/gtkcompat.h: removed this from CVS.
22712         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
22713         idea right from the start, it just didn't seem like that back then.
22714
22715 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
22716
22717         * merges from gtk-1-2:
22718
22719 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
22720
22721         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
22722         item factory class has been created.
22723         (gtk_item_factory_parse_rc): likewise.
22724
22725         * gtk/gtkmenu.c:
22726         keep proper references for old_active_menu_item.
22727         (gtk_menu_reparent): unset the usize of the new parent,
22728         so the menu can sanely be size requested and we don't get nasty screen
22729         artefacts upon next reparentation.
22730         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
22731         enter notify. only synthesize enter notifies if the pointer really is
22732         inside the event window.
22733         (gtk_menu_popdown): use gtk_menu_shell_deselect().
22734         (gtk_menu_popup): move the background setting stuff into
22735         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
22736
22737         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
22738         gtk_menu_shell_select_item() to select the new item.
22739         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
22740         do the right thing for deselection as well.
22741
22742 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
22743
22744         * gtk/gtkwidget.[hc]:
22745         (gtk_widget_accelerators_locked): return whether a widget's accelerators
22746         are locked.
22747
22748         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
22749         existing accelerators if the widget's accelerators are locked.
22750
22751 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
22752
22753         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
22754
22755         * gtk/gtkmenu.c: truely forward key press and key release events to
22756         the menu widget from the toplevel or tearoff window. we can't simply
22757         connect to that, we need to stop further processing of the events as
22758         well.
22759
22760 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
22761
22762         * gtk/gtkmenu.c:
22763         (gtk_menu_key_press): pass event->keyval, event->state to
22764         gtk_accelerator_valid, instead of event->keyval twice.
22765         refuse to install single letter accelerators for menus that use
22766         single letter shortcuts.
22767
22768         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
22769         gtk_menu_ensure_uline_accel_group().
22770
22771         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
22772         which will always return an uline accel group, made
22773         gtk_menu_get_uline_accel_group() return NULL if the group isn't
22774         yet created.
22775
22776 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
22777
22778         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
22779
22780         * gtk/gtkclist.c (gtk_clist_column_title_passive):
22781         Leave button sensitive, trap  button_press, button_release,
22782         motion_notify, enter_notify and leave_notify events instead.
22783         (gtk_clist_column_title_active): disconnect event handler.
22784         (gtk_clist_drag_data_get): fixed memory leak. Reported by
22785         Guillaume Laurent <glaurent@worldnet.fr>
22786
22787 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
22788
22789         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
22790         width/height mixups.
22791
22792         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
22793         if needed.
22794
22795 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
22796
22797         * gtk/testgtk.c (create_item_factory): unref the item factory after
22798         window's destruction.
22799
22800         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
22801         count on the menu shell around the menu item's activation, since the
22802         signal emission may cause menu shell destruction.
22803
22804         * gtk/gtkitemfactory.c:
22805         the previous code leaked one accel group per menu. we use
22806         gtk_menu_get_uline_accel_group() now to fix that, and with that
22807         also create the underline accelerator group of the menus only if
22808         required (i.e. an underline accelerator has been specified).
22809         (gtk_item_factory_construct):
22810         (gtk_item_factory_create_item): removed code that would create an
22811         extra accel group for the menu (and leak references).
22812         (gtk_item_factory_create_item): adapted the underline accelerator
22813         installation code to properly feature gtk_menu_get_uline_accel_group().
22814
22815         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
22816         menu->accel_group, this may return NULL if the accelerator group
22817         hasn't been set yet.
22818         added gtk_menu_get_uline_accel_group() to retrive the underline
22819         accelerator group of the menu, this will be created on demand
22820         and proper care is taken about its reference count.
22821
22822         * gtk/gtkitemfactory.h:
22823         * gtk/gtkitemfactory.c:
22824         dumped the approach of keeping a widgets by action list on the
22825         factory since the factory<->widget destroy negotiation didn't work
22826         and would be hard to get going at all. instead we keep a list of
22827         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
22828         persistant throughout a program's life time).
22829         also, i removed the static const gchar *key_* variables, and made
22830         them inline strings (they weren't actually used anyways).
22831         (gtk_item_factory_add_item): update ifactory->items.
22832         (gtk_item_factory_destroy): destroy ifactory->items (and remove
22833         the item factory pointer from the remaining ifactory widgets).
22834         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
22835         list to find the widget.
22836         (gtk_item_factory_get_item): new function that works around
22837         gtk_item_factory_get_widget() limitations, this function will only
22838         return menu items, even for <Branch> entries.
22839
22840 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22841
22842         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22843         font hash table, if we have a GdkFontPrivate entry for this font
22844         already, simply increment its reference count, provided by Olaf Dietsche
22845         <olaf.dietsche+list.gtk@netcologne.de>.
22846
22847         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22848         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22849
22850 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
22851
22852         * gtk/gtkcontainer.c:
22853         (gtk_container_add_with_args):
22854         (gtk_container_addv):
22855         (gtk_container_add): before adding a child to a conatiner, make sure
22856         it is (default) constructed, this is neccessary because under certain
22857         circumstances the child will get relized and mapped immediatedly, in
22858         which case it has to be constructed already.
22859
22860 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
22861
22862         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
22863         values > 1 as TRUE also.
22864
22865 1999-03-16  Tor Lillqvist  <tml@iki.fi>
22866
22867         * README.win32: New file.
22868                 
22869         * configure.in: Check for lstat.
22870
22871         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
22872         completeness.
22873
22874         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
22875
22876         * gtk/gtk.def: Removed CRs.
22877
22878         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
22879         ..\gdk\win32).
22880
22881         * gdk/win32/makefile.msc: Correct upwards relative paths.
22882         
22883 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
22884
22885         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
22886           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
22887           it was connecting a void function to expose_event and the int
22888           returning function to the draw signal
22889
22890 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
22891
22892         * configure.in:
22893         Use correct path to libgmodule.la when ref'ing uninstalled copy
22894         of glib.  (Already in stable branch, Bug #417)
22895
22896 1999-03-15  Tor Lillqvist  <tml@iki.fi>
22897
22898         Win32 merge and general portability stuff:
22899                 
22900         * acconfig.h,configure.in: Check for <sys/time.h>.
22901
22902         * gdk/win32: New directory (actually, been there for a while).
22903         
22904         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
22905         NATIVE_WIN32, and use these. Always case fold on Win32. No
22906         backslashed escapes on native Win32.
22907
22908         * gtk/{gtk.def,makefile.msc}: New files.
22909
22910         * gtk/Makefile.am: Add above new files.
22911         
22912         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
22913         instead of <strings.h>.
22914
22915         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
22916         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
22917         <unistd.h> appropriately.
22918
22919         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
22920         Use ABS() (from <glib.h>) instead of abs().
22921         
22922         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
22923         of gtk (and thus glib) headers, so that WIN32 will be
22924         defined. With MS C, include <direct.h> for mkdir prototype.
22925
22926         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
22927         some casts, needed by MS C.
22928
22929         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
22930         implemented).
22931
22932         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
22933         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
22934         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
22935
22936         * gtk/gtkmain.h: Mark variables for export/import on Win32.
22937                 
22938         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
22939         the event is not a hint, or its window is not the slider. Needed
22940         on Win32, at least.
22941
22942         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
22943         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
22944         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
22945         a subdirectory of the Windows directory as gtk system
22946         configuration directory.
22947
22948         * gtk/gtkselection.c: No chunks on Win32.
22949
22950         * gtk/gtksocket.c: Not implemented on Win32.
22951
22952         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
22953
22954         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
22955
22956         * gtk/maketypes.awk: Declare variables with a macro that expands to
22957         necessary export/import magic in the case of Win32.
22958                 
22959         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
22960
22961 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
22962
22963         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
22964         since those were meant only for gdki18n.h.  
22965         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
22966         for widechar tests.
22967         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
22968
22969 1999-03-13  Tor Lillqvist  <tml@iki.fi>
22970
22971         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
22972         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
22973
22974         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
22975         installed) to CFLAGS.
22976
22977         * gdk/Makefile.am: Add rules for gdkconfig.h.
22978
22979         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
22980         APIs.
22981
22982         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
22983         gdkx.h anyway when compiling for X11.
22984         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
22985         general): Merge in Win32 version.
22986         
22987         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
22988         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
22989         expansion (if we don't have HAVE_PWD_H), allow for drive
22990         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
22991         included code from Craig Setera's port to Win32 (the one that uses
22992         X11, and the cygwin dll), even if it probably will be abandoned.
22993
22994         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
22995         the user entered one herself.  This way one can complete *.h and
22996         don't get matches on any .help files, for instance.
22997         
22998 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22999
23000         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
23001         font hash table, if we have a GdkFontPrivate entry for this font
23002         already, simply increment its reference count, provided by Olaf Dietsche
23003         <olaf.dietsche+list.gtk@netcologne.de>.
23004
23005         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
23006         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
23007
23008 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
23009
23010         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
23011         the number of calls to gdk_draw_point() (and thus to X) by
23012         clipping the points by hand.
23013
23014         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
23015         the clip parameter.
23016         (gtk_handle_box_paint): Only paint the handle if the expose area
23017         intersects it.
23018
23019 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
23020
23021         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
23022
23023 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
23024
23025         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
23026         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
23027
23028 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
23029
23030         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
23031          textmode (O_TEXT) for OS/2 version.
23032
23033 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
23034
23035         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
23036         GtkSpinButton, "input" and "output", to make the output more flexible.
23037         The user has to provide a mapping between adjustment->value and the
23038         output string (and vice versa, if the spin button is editable). 
23039         See testgtk for examples.
23040
23041 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
23042
23043         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
23044         new one.
23045         
23046         * configure.in: set gtk+ version to 1.3.0.